From 0d80f4731fed7d490a2ec502dd6a4bb97880ecbd Mon Sep 17 00:00:00 2001
From: Alexander Jentsch <ajentsch@bnl.gov>
Date: Mon, 16 Aug 2021 14:37:54 -0400
Subject: [PATCH] Trying to grab MC data so I can make some very simple
 acceptance plots.

---
 .../b0_tracker/scripts/b0_tracker_hits.cxx    | 20 +++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/benchmarks/b0_tracker/scripts/b0_tracker_hits.cxx b/benchmarks/b0_tracker/scripts/b0_tracker_hits.cxx
index c2d51285..35217959 100644
--- a/benchmarks/b0_tracker/scripts/b0_tracker_hits.cxx
+++ b/benchmarks/b0_tracker/scripts/b0_tracker_hits.cxx
@@ -36,6 +36,18 @@ void b0_tracker_hits(const char* fname = "./sim_output/sim_forward_protons.root"
 
   ROOT::RDataFrame d0(*t);
 
+  dd4pod::MonteCarloContrib
+
+  auto MC_hits_theta = [&](const std:vector<dd4pod::MonteCarloContrib>& mchits){
+	std::vector<double> result;
+	for (const auto& h : mchits){
+		ROOT::Math::XYZVector vec(h.x,h.y,h.z);
+        result.push_back(1000*vec.theta());
+	}
+	return result;
+  };
+
+
   auto hits_theta = [&](const std::vector<dd4pod::TrackerHitData>& hits) {
     std::vector<double> result;
     for (const auto& h : hits) {
@@ -85,11 +97,19 @@ void b0_tracker_hits(const char* fname = "./sim_output/sim_forward_protons.root"
 
   auto d2 = d0.Define("hits_theta", hits_theta, {"B0TrackerHits"});
 
+  auto d3 = d0.Define("MC_hits_theta", MC_hits_theta, {"mcparticles"});
+
   auto h1 = d2.Histo1D({"h1", "hits_theta", 100, 0,20}, "hits_theta");
+  auto hMCTheta = d3.Histo1D({"mchitstheta", "MC_hits_theta", 100, 0, 20});
   TCanvas* c = new TCanvas();
   h1->DrawCopy();
   c->SaveAs("results/b0_tracker_hits_theta.png");
   c->SaveAs("results/b0_tracker_hits_theta.pdf");
+  
+  hMCTheta->DrawCopy();
+  c->SaveAs("results/MC_hits_theta.png");
+  c->SaveAs("results/MC_hits_theta.pdf");
+  
   h_local_pos->DrawCopy("colz");
   c->SaveAs("results/b0_tracker_hits_occupancy_disk_1.png");
   c->SaveAs("results/b0_tracker_hits_occupancy_disk_1.pdf");
-- 
GitLab