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