ATLAS Offline Software
Loading...
Searching...
No Matches
InDetPerfPlot_Resolution.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef INDETPHYSVALMONITORING_InDetPerfPlot_Resolution
6#define INDETPHYSVALMONITORING_InDetPerfPlot_Resolution
11
12
13
14
15
16// local includes
17
18#include "InDetPlotBase.h"
19#include "TProfile.h"
20// could be fwd declared?
26
27#include "TFitResultPtr.h"
28#include "TFitResult.h"
29// std includes
30#include <string>
31#include <vector>
32#include <map>
33
34// fwd declaration
35class IToolSvc;
36class IExtrapolator;
37
38
41public:
45
46 InDetPerfPlot_Resolution(InDetPlotBase* pParent, const std::string& dirName, bool d0Only=false, bool hasHGTDReco=false);
47
48 void fill(const xAOD::TrackParticle& trkprt, const xAOD::TruthParticle& truthprt, float weight);
49 void fill(const xAOD::TrackParticle& trkprt, float weight);
50
51
52// virtual bool isDefined(TString t);
54 }
55
56private:
57
58 // defining global eta binning for resolution plots
59 static const int m_nResHist = 4;
60
61 static const int m_nEtaBins = 64;
62 //const double m_etaMin = -4.0;
63 //const double m_etaMax = 4.0;
64
65// Settings for log-linear binning in pt (matching previous IDPVM definition)
66 static const int m_nPtBins = 49;
67 const double m_ptMin = 0.745;
68 const double m_ptMax = 1000.0;
69
70 float m_PtBins[m_nPtBins + 1]{};
71
72// Settings for detailed log-linear binning in low pt region
73 static const int m_nLowPtBins = 99;
74 const double m_lowPtMin = 0.01;
75 const double m_lowPtMax = 1.0;
76
78
79 std::string m_paramProp[NPARAMS] = { "d0", "z0", "qoverp", "ptqopt", "theta", "phi", "pt", "z0sin", "time" };
80
83
84 bool m_d0Only = false;
85 bool m_hasHGTDReco = false;
86
90
91 void initializePlots();
92 void finalizePlots();
93
94
95 void getTrackParameters(const xAOD::TruthParticle& truthprt);
96 void getTrackParameters(const xAOD::TrackParticle& truthprt);
97 void getPlotParameters();
98 void getPlots(float weight=1.0, bool useTruthKin=true);
99
103
107
111
118
125
132
139
146
153
160
164
165};
166
167
168#endif
IDPVM::ResolutionHelper::methods m_resolutionMethod
TH1 * m_resProjections_vs_eta[NPARAMS][m_nEtaBins]
TH1 * m_pullProjections_vs_lowpt[NPARAMS][m_nLowPtBins]
TH1 * m_resProjections_vs_pt[NPARAMS][m_nPtBins]
void fill(const xAOD::TrackParticle &trkprt, const xAOD::TruthParticle &truthprt, float weight)
TH1 * m_pullProjections_vs_eta[NPARAMS][m_nEtaBins]
void getTrackParameters(const xAOD::TruthParticle &truthprt)
void getPlots(float weight=1.0, bool useTruthKin=true)
float m_LowPtBins[m_nLowPtBins+1]
TH1 * m_pullProjections_vs_pt[NPARAMS][m_nPtBins]
IDPVM::ResolutionHelper m_resolutionHelper
InDetPerfPlot_Resolution(InDetPlotBase *pParent, const std::string &dirName, bool d0Only=false, bool hasHGTDReco=false)
TH1 * m_resProjections_vs_lowpt[NPARAMS][m_nLowPtBins]
Mixin class to give extra capabilities to plots such as ATH_MSG and an easier booking interface,...
InDetPlotBase(InDetPlotBase *pParent, const std::string &dirName)
Constructor taking parent node and directory name for plots.
TrackParticle_v1 TrackParticle
Reference the current persistent version:
TruthParticle_v1 TruthParticle
Typedef to implementation.