ATLAS Offline Software
MuonTrackValidationPlots.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 MuonTrackValidationPlots::MuonTrackValidationPlots(PlotBase* pParent, const std::string& sDir, const std::string& sTrackType, bool isData) :
8  PlotBase(pParent, sDir), m_sTrackType(sTrackType) {
9  std::vector<int> selectedRecoPlots(0);
10  selectedRecoPlots.push_back(Muon::TRK_PARAM);
11  selectedRecoPlots.push_back(Muon::TRK_RECOINFO);
12  selectedRecoPlots.push_back(Muon::TRK_IMPACT);
13  if (sTrackType.find("ID") != std::string::npos)
14  selectedRecoPlots.push_back(Muon::TRK_IDHITS);
15  else
16  selectedRecoPlots.push_back(Muon::TRK_MSHITS);
17  m_oRecoMuonTrackPlots = std::make_unique<Muon::RecoMuonTrackPlotOrganizer>(this, "reco/" + sTrackType, selectedRecoPlots);
18 
19  if (!isData) {
20  std::vector<int> selectedMatchedPlots(0);
21  selectedMatchedPlots.push_back(Muon::TRK_MATCHEDTRUE);
22  selectedMatchedPlots.push_back(Muon::TRK_MATCHEDRECO);
23  selectedMatchedPlots.push_back(Muon::TRK_DEFPARAMPULLS);
24  selectedMatchedPlots.push_back(Muon::MUON_RESOL);
25  m_oMatchedMuonTrackPlots = std::make_unique<Muon::TruthRelatedMuonPlotOrganizer>(this, "matched/" + sTrackType, true, selectedMatchedPlots);
26  }
27 }
28 
30 
32 
34  if (muTP) {
35  m_oRecoMuonTrackPlots->fill(*muTP, weight);
36  if (truthMu) { m_oMatchedMuonTrackPlots->fill(*truthMu, *muTP, weight); }
37  }
38 }
Muon::TRK_IDHITS
@ TRK_IDHITS
Definition: RecoMuonTrackPlotOrganizer.h:20
Muon::MUON_RESOL
@ MUON_RESOL
Definition: TruthRelatedMuonPlotOrganizer.h:25
PlotBase
Definition: PlotBase.h:33
Muon::TRK_MSHITS
@ TRK_MSHITS
Definition: RecoMuonTrackPlotOrganizer.h:20
Muon::TRK_MATCHEDRECO
@ TRK_MATCHEDRECO
Definition: TruthRelatedMuonPlotOrganizer.h:25
python.copyTCTOutput.sDir
sDir
Definition: copyTCTOutput.py:60
Muon::TRK_MATCHEDTRUE
@ TRK_MATCHEDTRUE
Definition: TruthRelatedMuonPlotOrganizer.h:25
MuonTrackValidationPlots::m_oMatchedMuonTrackPlots
std::unique_ptr< Muon::TruthRelatedMuonPlotOrganizer > m_oMatchedMuonTrackPlots
Definition: MuonTrackValidationPlots.h:22
Muon::TRK_DEFPARAMPULLS
@ TRK_DEFPARAMPULLS
Definition: TruthRelatedMuonPlotOrganizer.h:25
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:200
Muon::TRK_PARAM
@ TRK_PARAM
Definition: RecoMuonTrackPlotOrganizer.h:20
MuonTrackValidationPlots::MuonTrackValidationPlots
MuonTrackValidationPlots(PlotBase *pParent, const std::string &sDir, const std::string &sTrackType, bool isData=false)
Definition: MuonTrackValidationPlots.cxx:7
xAOD::TruthParticle_v1
Class describing a truth particle in the MC record.
Definition: TruthParticle_v1.h:41
Muon::TRK_RECOINFO
@ TRK_RECOINFO
Definition: RecoMuonTrackPlotOrganizer.h:20
MuonTrackValidationPlots.h
MuonTrackValidationPlots::m_oRecoMuonTrackPlots
std::unique_ptr< Muon::RecoMuonTrackPlotOrganizer > m_oRecoMuonTrackPlots
Definition: MuonTrackValidationPlots.h:20
MuonTrackValidationPlots::fill
void fill(const xAOD::TrackParticle &muTP, float weight=1.0)
Definition: MuonTrackValidationPlots.cxx:31
Muon::TRK_IMPACT
@ TRK_IMPACT
Definition: RecoMuonTrackPlotOrganizer.h:20
python.grid.isData
def isData(dataset)
Definition: grid.py:491
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
MuonTrackValidationPlots::~MuonTrackValidationPlots
~MuonTrackValidationPlots()