ATLAS Offline Software
DuplicateRatePlots.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef INDETTRACKPERFMON_PLOTS_DUPLICATERATEPLOTS_H
6 #define INDETTRACKPERFMON_PLOTS_DUPLICATERATEPLOTS_H
7 
13 #include "../PlotMgr.h"
15 
16 
17 namespace IDTPM {
18 
19  class DuplicateRatePlots : public PlotMgr {
20 
21  public:
22 
25  PlotMgr* pParent,
26  const std::string& dirName,
27  const std::string& anaTag,
28  const std::string& trackType,
29  bool doGlobalPlots = false );
30 
32  virtual ~DuplicateRatePlots() = default;
33 
35  template< typename PARTICLE >
37  const PARTICLE& particle,
38  unsigned int nMatched,
39  float truthMu,
40  float actualMu,
41  float weight );
42 
44  void initializePlots(); // needed to override PlotBase
46 
48  void finalizePlots();
49 
50  private:
51 
52  std::string m_trackType;
54 
55  TEfficiency* m_duplrate_vs_pt;
56  TEfficiency* m_duplrate_vs_eta;
57  TEfficiency* m_duplrate_vs_phi;
58  TEfficiency* m_duplrate_vs_d0;
59  TEfficiency* m_duplrate_vs_z0;
60  TEfficiency* m_duplrate_vs_truthMu;
61  TEfficiency* m_duplrate_vs_actualMu;
62 
70 
78 
79  }; // class DuplicateRatePlots
80 
81 } // namespace IDTPM
82 
83 #endif // > ! INDETTRACKPERFMON_PLOTS_DUPLICATERATEPLOTS_H
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition: ParticleHypothesis.h:76
IDTPM::DuplicateRatePlots::fillPlots
StatusCode fillPlots(const PARTICLE &particle, unsigned int nMatched, float truthMu, float actualMu, float weight)
Dedicated fill method (for tracks and/or truth particles)
Definition: DuplicateRatePlots.cxx:79
IDTPM::DuplicateRatePlots::m_duplnum_nonzero_vs_truthMu
TProfile * m_duplnum_nonzero_vs_truthMu
Definition: DuplicateRatePlots.h:76
IDTPM::DuplicateRatePlots::m_duplnum_nonzero_vs_z0
TProfile * m_duplnum_nonzero_vs_z0
Definition: DuplicateRatePlots.h:75
IDTPM::DuplicateRatePlots::m_duplnum_nonzero_vs_phi
TProfile * m_duplnum_nonzero_vs_phi
Definition: DuplicateRatePlots.h:73
IDTPM::DuplicateRatePlots::m_duplnum_vs_d0
TProfile * m_duplnum_vs_d0
Definition: DuplicateRatePlots.h:66
IDTPM::DuplicateRatePlots::m_duplrate_vs_z0
TEfficiency * m_duplrate_vs_z0
Definition: DuplicateRatePlots.h:59
IDTPM::DuplicateRatePlots::m_duplrate_vs_eta
TEfficiency * m_duplrate_vs_eta
Definition: DuplicateRatePlots.h:56
IDTPM::DuplicateRatePlots::finalizePlots
void finalizePlots()
Print out final stats on histograms.
Definition: DuplicateRatePlots.cxx:140
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:189
IDTPM::DuplicateRatePlots::m_duplnum_nonzero_vs_actualMu
TProfile * m_duplnum_nonzero_vs_actualMu
Definition: DuplicateRatePlots.h:77
IDTPM::DuplicateRatePlots::m_duplnum_nonzero_vs_d0
TProfile * m_duplnum_nonzero_vs_d0
Definition: DuplicateRatePlots.h:74
IDTPM::DuplicateRatePlots::m_duplrate_vs_phi
TEfficiency * m_duplrate_vs_phi
Definition: DuplicateRatePlots.h:57
IDTPM::DuplicateRatePlots::m_duplnum_nonzero_vs_eta
TProfile * m_duplnum_nonzero_vs_eta
Definition: DuplicateRatePlots.h:72
IDTPM::PlotMgr
Definition: PlotMgr.h:33
IDTPM::DuplicateRatePlots::m_duplrate_vs_actualMu
TEfficiency * m_duplrate_vs_actualMu
Definition: DuplicateRatePlots.h:61
IDTPM::DuplicateRatePlots::~DuplicateRatePlots
virtual ~DuplicateRatePlots()=default
Destructor.
python.TrigEgammaMonitorHelper.TProfile
def TProfile(*args, **kwargs)
Definition: TrigEgammaMonitorHelper.py:81
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IDTPM::DuplicateRatePlots::m_doGlobalPlots
bool m_doGlobalPlots
Definition: DuplicateRatePlots.h:53
IDTPM::DuplicateRatePlots::bookPlots
StatusCode bookPlots()
Definition: DuplicateRatePlots.cxx:38
IDTPM::DuplicateRatePlots::m_duplnum_vs_eta
TProfile * m_duplnum_vs_eta
Definition: DuplicateRatePlots.h:64
IDTPM::DuplicateRatePlots::m_duplnum_vs_phi
TProfile * m_duplnum_vs_phi
Definition: DuplicateRatePlots.h:65
IDTPM::DuplicateRatePlots::m_duplrate_vs_truthMu
TEfficiency * m_duplrate_vs_truthMu
Definition: DuplicateRatePlots.h:60
IDTPM::DuplicateRatePlots
Definition: DuplicateRatePlots.h:19
IDTPM::DuplicateRatePlots::m_trackType
std::string m_trackType
Definition: DuplicateRatePlots.h:52
IDTPM::DuplicateRatePlots::initializePlots
void initializePlots()
Book the histograms.
Definition: DuplicateRatePlots.cxx:29
IDTPM::DuplicateRatePlots::DuplicateRatePlots
DuplicateRatePlots(PlotMgr *pParent, const std::string &dirName, const std::string &anaTag, const std::string &trackType, bool doGlobalPlots=false)
Constructor.
Definition: DuplicateRatePlots.cxx:18
IDTPM::DuplicateRatePlots::m_duplnum_vs_z0
TProfile * m_duplnum_vs_z0
Definition: DuplicateRatePlots.h:67
IDTPM::DuplicateRatePlots::m_duplrate_vs_d0
TEfficiency * m_duplrate_vs_d0
Definition: DuplicateRatePlots.h:58
IDTPM::DuplicateRatePlots::m_duplrate_vs_pt
TEfficiency * m_duplrate_vs_pt
Definition: DuplicateRatePlots.h:55
IDTPM::DuplicateRatePlots::m_duplnum_nonzero_vs_pt
TProfile * m_duplnum_nonzero_vs_pt
Definition: DuplicateRatePlots.h:71
IDTPM::DuplicateRatePlots::m_duplnum_vs_pt
TProfile * m_duplnum_vs_pt
Definition: DuplicateRatePlots.h:63
IDTPM::DuplicateRatePlots::m_duplnum_vs_actualMu
TProfile * m_duplnum_vs_actualMu
Definition: DuplicateRatePlots.h:69
IDTPM
Athena include(s).
Definition: IPlotsDefinitionSvc.h:25
IDTPM::DuplicateRatePlots::m_duplnum_vs_truthMu
TProfile * m_duplnum_vs_truthMu
Definition: DuplicateRatePlots.h:68