ATLAS Offline Software
Loading...
Searching...
No Matches
InDetPerfPlot_VertexTruthMatching.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_VERTEXTRUTHMATCHING
6#define INDETPHYSVALMONITORING_INDETPERFPLOT_VERTEXTRUTHMATCHING
11
12// local includes
13#include "InDetPlotBase.h"
15
16// Tracking includes:
20
21// xAOD truth object includes:
25
26// Vertex validation:
29
31
32// std includes
33#include <string>
34
35// root includes
36class TH1;
37class TH2;
38class TProfile;
39class TEfficiency;
40
41
44public:
45 InDetPerfPlot_VertexTruthMatching(InDetPlotBase* pParent, const std::string& dirName, const int detailLevel = 10, bool isITk = false);
46 void fill(const xAOD::Vertex& vertex, const xAOD::TruthVertex * tvrt =0, float weight=1.0);
47 void fill(const xAOD::Vertex* recoHardScatter, const xAOD::VertexContainer& vertexContainer, const std::vector<const xAOD::TruthVertex*>& truthHSVertices, const std::vector<const xAOD::TruthVertex*>& truthPUVertices, float actualMu, float weight=1.0);
48private:
49 bool m_isITk{false};
60
64
79 // HS vertex reconstruction efficiency vs PU
80 TEfficiency* m_vx_hs_reco_eff;
81 // HS vertex selection efficiency vs PU
82 TEfficiency* m_vx_hs_sel_eff;
83 // HS vertex selection efficiency vs nReco vertices
85 // HS vertex reconstruction and selection efficiency vs PU
87 // HS vertex selection efficiency vs PU (distance based)
89 // HS vertex selection efficiency vs PU (actualInteractionsPerCrossing)
90 TEfficiency* m_vx_hs_sel_eff_mu;
91 // HS vertex selection efficiency vs nReco vertices (distance based)
93 // HS vertex reconstruction efficiency vs n truth vertices
95 // HS vertex selection efficiency vs PU (actualInteractionsPerCrossing)
96 TEfficiency* m_vx_hs_reco_eff_mu;
97 // HS vertex selection efficiency vs n truth vertices
99 // HS vertex reconstruction and selection efficiency vs n truth vertices
101
102
103 // For reco (covariance) resolutions:
106
107 // For reco-truth resolutions:
110
120
127
134
141
148
155
162 // New Histograms for Expert Plots for observables for different vertex classifications
178
191
198
205
212
225
226 // ALL Vertices
230
243
247
254
267
268 // delta z plot
271
275
277private:
278 // plot base has no default implementation of this; we use it to book the histos
279 void initializePlots();
280 static const xAOD::Vertex* getHSRecoVertexSumPt2(const xAOD::VertexContainer& recoVertices) ;
281 template<typename U, typename V>
282 float getRadialDiff2(const U* vtx1, const V* vtx2) const;
283 float getLocalPUDensity(const xAOD::TruthVertex* vtxOfInterest, const std::vector<const xAOD::TruthVertex*>& truthHSVertices, const std::vector<const xAOD::TruthVertex*>& truthPUVertices, const float radialWindow = 2.0) const;
284 static float getRecoLongitudinalReso(const xAOD::Vertex* recoVtx) ;
285 static float getRecoTransverseReso(const xAOD::Vertex* recoVtx) ;
286 const xAOD::TruthVertex* getTruthVertex(const xAOD::Vertex* recoVtx) const;
287 void finalizePlots();
288};
289
290#endif
static const xAOD::Vertex * getHSRecoVertexSumPt2(const xAOD::VertexContainer &recoVertices)
void fill(const xAOD::Vertex &vertex, const xAOD::TruthVertex *tvrt=0, float weight=1.0)
TH1 * m_vx_hs_classification
hardscatter classification
static float getRecoLongitudinalReso(const xAOD::Vertex *recoVtx)
float getLocalPUDensity(const xAOD::TruthVertex *vtxOfInterest, const std::vector< const xAOD::TruthVertex * > &truthHSVertices, const std::vector< const xAOD::TruthVertex * > &truthPUVertices, const float radialWindow=2.0) const
TProfile * m_vx_nReco_vs_nTruth_inclusive
vertex reco efficiency
static float getRecoTransverseReso(const xAOD::Vertex *recoVtx)
float getRadialDiff2(const U *vtx1, const V *vtx2) const
const xAOD::TruthVertex * getTruthVertex(const xAOD::Vertex *recoVtx) const
InDetPerfPlot_VertexTruthMatching(InDetPlotBase *pParent, const std::string &dirName, const int detailLevel=10, bool isITk=false)
IDPVM::ResolutionHelper::methods m_resolutionMethod
InDetPlotBase(InDetPlotBase *pParent, const std::string &dirName)
Constructor taking parent node and directory name for plots.
TruthVertex_v1 TruthVertex
Typedef to implementation.
Definition TruthVertex.h:15
VertexContainer_v1 VertexContainer
Definition of the current "Vertex container version".
Vertex_v1 Vertex
Define the latest version of the vertex class.