18 PlotBase* pParent,
const std::string& sDir,
bool doBinnedResolutionPlots,
19 std::vector<int> selPlots)
24 if (selPlots.empty()) {
25 for (unsigned int i = 0; i < MAX_TRUTHRELATEDPLOTCLASS; i++) {
26 m_selPlots.push_back(i);
29 m_selPlots = std::move(selPlots);
32 for (
auto p : m_selPlots) {
35 m_oMatchedPlots = std::make_unique<Trk::ParamPlots>(
36 this,
"/kinematics/",
"Matched Muons");
39 m_oMatchedRecoPlots = std::make_unique<Trk::ParamPlots>(
40 this,
"/kinematicsReco/",
"Matched Muons");
44 std::make_unique<Trk::MSHitDiffPlots>(
this,
"/hits/");
47 m_oMuonHitDiffSummaryPlots =
48 std::make_unique<Muon::MuonHitDiffSummaryPlots>(
this,
52 m_oMuonTruthHitPlots =
53 std::make_unique<Muon::MuonTruthHitPlots>(
this,
57 m_oMuonResolutionPlots =
58 std::make_unique<Muon::MuonResolutionPlots>(
59 this,
"/resolution/",
"", doBinnedResolutionPlots);
62 m_oDefParamPullPlots = std::make_unique<Trk::DefParamPullPlots>(
66 m_oMomentumTruthPullPlots_Tail =
67 std::make_unique<Muon::MomentumTruthPullPlots>(
68 this,
"/momentumPulls/",
"Tail");
71 m_oMomentumTruthPullPlots_NoTail =
72 std::make_unique<Muon::MomentumTruthPullPlots>(
73 this,
"/momentumPulls/",
"NoTail");
76 m_oMatchedRecoElossPlots =
77 std::make_unique<Muon::MuonParamElossPlots>(
this,
83TruthRelatedMuonPlotOrganizer::~TruthRelatedMuonPlotOrganizer() =
default;
104 mu.trackParticle(xAOD::Muon::Primary);
126 const xAOD::TrackParticle* msTrk = mu.trackParticle(xAOD::Muon::TrackParticleType::MuonSpectrometerTrackParticle);
127 #ifndef XAOD_ANALYSIS
129 if (mu.parameter(eloss, xAOD::Muon::ParamDef::EnergyLoss)) {
130 if (mu.energyLossType() != xAOD::Muon::EnergyLossType::Tail) {
151 if (m_oMatchedPlots) {
152 m_oMatchedPlots->fill(truthMu, weight);
154 if (m_oMatchedRecoPlots) {
155 m_oMatchedRecoPlots->fill(muTP, weight);
157 if (m_oDefParamPullPlots) {
158 m_oDefParamPullPlots->fill(muTP, truthMu, weight);
160 if (m_oMuonResolutionPlots) {
161 m_oMuonResolutionPlots->fill(muTP, truthMu, weight);
163 if (m_oMSHitDiffPlots) {
164 m_oMSHitDiffPlots->fill(muTP, truthMu, weight);
Helper class to provide constant type-safe access to aux data.
ElementLink implementation for ROOT usage.
PlotBase(PlotBase *parent, std::string_view sDir)
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
TruthParticle_v1 TruthParticle
Typedef to implementation.
Muon_v1 Muon
Reference the current persistent version: