ATLAS Offline Software
PhysValBTag.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // PhysValBTag.h
8 // Header file for class PhysValBTag
9 // Author: E.Schopf<elisabeth.schopf@cern.ch>
10 // Updates: J.Hoefer <judith.hoefer@cern.ch>
12 #ifndef JETTAGDQA_PHYSVALBTag_H
13 #define JETTAGDQA_PHYSVALBTag_H 1
14 
15 // STL includes
16 #include <string>
17 
18 // FrameWork includes
19 #include "GaudiKernel/ServiceHandle.h"
20 
21 // Local includes
25 
28 
29 // Root includes
30 #include "TH1.h"
31 
32 // Forward declaration
33 
34 namespace JetTagDQA {
35 
37  : public ManagedMonitorToolBase
38  {
40  // Public methods:
42  public:
43  double m_PV_x = -999.;
44  double m_PV_y = -999.;
45  double m_PV_z = -999.;
46  // Copy constructor:
47 
49  PhysValBTag( const std::string& type,
50  const std::string& name,
51  const IInterface* parent );
52 
54  virtual ~PhysValBTag();
55 
56  // Athena algtool's Hooks
57  virtual StatusCode initialize();
58  virtual StatusCode bookHistograms();
59  virtual StatusCode fillHistograms();
60  virtual StatusCode procHistograms();
61 
62 
64  // Const methods:
66  std::map<const xAOD::TrackParticle*, int> getTrackTruthAssociations(const xAOD::BTagging* btag) const;
67 
69  // Non-const methods:
71 
72 
74  // Private data:
76  private:
77 
80 
81  ToolHandle<InDet::IInDetTrackTruthOriginTool> m_trackTruthOriginTool{this, "trackTruthOriginTool", "InDet::InDetTrackTruthOriginTool"};
83 
84  // isData flag
85  bool m_isData;
86  bool m_doTrackTruth = true;
87 
88  // Containers
89  std::string m_jetNameEMTopo;
90  std::string m_jetNamePFlow;
91  std::string m_jetNameR10;
92  std::string m_jetNameTrackJet;
93 
94  std::string m_trackName;
95  std::string m_vertexName;
96 
97  std::map<std::string, JetTagDQA::BTaggingValidationPlots*> m_btagplots;
98 
99  // histogram definitions
100  // the first one is a vector because I can only pass vectors from the joboptions to the algs (and no maps)
101  Gaudi::Property< std::vector< std::vector< std::string > > > m_HistogramDefinitionsVector {this, "HistogramDefinitions", {}, "Map with histogram definitions"};
102  // have a useful map nevertheless
103  std::map< std::string, std::vector< std::string > > m_HistogramDefinitionsMap;
104 
105  float m_jetPtCut = -1;
106  bool m_onZprime = false;
110  float m_jetEtaCut;
115 
116  std::string m_dipsName;
117  std::string m_DL1dv01Name;
118  std::string m_GN2v01Name;
119  std::string m_GN2Xv01Name;
120 
125 
127 
129  };
130 
131 }
132 
133 #endif //> !JETTAGDQA_PHYSVALBTag_H
JetTagDQA::PhysValBTag::m_jetPtCutR10
float m_jetPtCutR10
Definition: PhysValBTag.h:109
JetTagDQA::PhysValBTag::m_jetPtCut
float m_jetPtCut
Definition: PhysValBTag.h:105
JetTagDQA::PhysValBTag::m_dipsName
std::string m_dipsName
Definition: PhysValBTag.h:116
JetTagDQA::PhysValBTag::m_antiKt10UFOCSSKSoftDropBeta100Zcut10Jets
JetTagDQA::BTaggingValidationPlots m_antiKt10UFOCSSKSoftDropBeta100Zcut10Jets
Definition: PhysValBTag.h:123
JetTagDQA::PhysValBTag::m_PV_x
double m_PV_x
Definition: PhysValBTag.h:43
PlotBase
Definition: PlotBase.h:33
ManagedMonitorToolBase
Provides functionality for users to implement and save histograms, ntuples, and summary data,...
Definition: ManagedMonitorToolBase.h:74
JetTagDQA::PhysValBTag::m_onZprime
bool m_onZprime
Definition: PhysValBTag.h:106
JetTagDQA::PhysValBTag::fillHistograms
virtual StatusCode fillHistograms()
An inheriting class should either override this function or fillHists().
Definition: PhysValBTag.cxx:144
JetTagDQA::PhysValBTag::m_PV_y
double m_PV_y
Definition: PhysValBTag.h:44
BTagMuonAugmenter.h
JetTagDQA::PhysValBTag::procHistograms
virtual StatusCode procHistograms()
An inheriting class should either override this function or finalHists().
Definition: PhysValBTag.cxx:323
JetTagDQA::PhysValBTag::m_JVTCutAntiKt4EMTopoJets
float m_JVTCutAntiKt4EMTopoJets
Definition: PhysValBTag.h:111
JetTagDQA::PhysValBTag::m_JVTCutAntiKt4EMPFlowJets
float m_JVTCutAntiKt4EMPFlowJets
Definition: PhysValBTag.h:113
JetTagDQA::PhysValBTag::m_truthMatchProbabilityCut
float m_truthMatchProbabilityCut
Definition: PhysValBTag.h:114
JetTagDQA::PhysValBTag::m_jetPtCutZprime
float m_jetPtCutZprime
Definition: PhysValBTag.h:108
BTaggingValidationPlots.h
JetTagDQA::PhysValBTag::m_jetEtaCut
float m_jetEtaCut
Definition: PhysValBTag.h:110
JetTagDQA::PhysValBTag::m_JVTCutLargerEtaAntiKt4EMTopoJets
float m_JVTCutLargerEtaAntiKt4EMTopoJets
Definition: PhysValBTag.h:112
JetTagDQA::PhysValBTag::m_trackName
std::string m_trackName
Definition: PhysValBTag.h:94
JetTagDQA::PhysValBTag::m_HistogramDefinitionsVector
Gaudi::Property< std::vector< std::vector< std::string > > > m_HistogramDefinitionsVector
Definition: PhysValBTag.h:101
JetTagDQA::BTaggingValidationPlots
Definition: BTaggingValidationPlots.h:25
ManagedMonitorToolBase.h
JetTagDQA::PhysValBTag::m_muonAugmenter
FlavorTagDiscriminants::BTagMuonAugmenter m_muonAugmenter
Definition: PhysValBTag.h:82
JetTagDQA::PhysValBTag::m_btagplots
std::map< std::string, JetTagDQA::BTaggingValidationPlots * > m_btagplots
Definition: PhysValBTag.h:97
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
JetTagDQA::PhysValBTag::m_DL1dv01Name
std::string m_DL1dv01Name
Definition: PhysValBTag.h:117
JetTagDQA::PhysValBTag::~PhysValBTag
virtual ~PhysValBTag()
Destructor:
Definition: PhysValBTag.cxx:80
JetTagDQA::PhysValBTag::m_isData
bool m_isData
Definition: PhysValBTag.h:85
JetTagDQA::PhysValBTag::m_GN2v01Name
std::string m_GN2v01Name
Definition: PhysValBTag.h:118
JetTagDQA::PhysValBTag::PhysValBTag
PhysValBTag()
Default constructor:
test_pyathena.parent
parent
Definition: test_pyathena.py:15
JetTagDQA::PhysValBTag::initialize
virtual StatusCode initialize()
Definition: PhysValBTag.cxx:85
JetTagDQA::PhysValBTag::m_jetNameEMTopo
std::string m_jetNameEMTopo
Definition: PhysValBTag.h:89
xAOD::BTagging_v1
Definition: BTagging_v1.h:39
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
JetTagDQA::PhysValBTag::book
StatusCode book(PlotBase &plots)
Definition: PhysValBTag.cxx:119
JetTagDQA::PhysValBTag::m_trackTruthOriginTool
ToolHandle< InDet::IInDetTrackTruthOriginTool > m_trackTruthOriginTool
Definition: PhysValBTag.h:81
InDetTrackTruthOriginTool.h
JetTagDQA::PhysValBTag::m_doTrackTruth
bool m_doTrackTruth
Definition: PhysValBTag.h:86
JetTagDQA::PhysValBTag::getTrackTruthAssociations
std::map< const xAOD::TrackParticle *, int > getTrackTruthAssociations(const xAOD::BTagging *btag) const
Definition: PhysValBTag.cxx:338
JetTagDQA::PhysValBTag::m_HistogramDefinitionsMap
std::map< std::string, std::vector< std::string > > m_HistogramDefinitionsMap
Definition: PhysValBTag.h:103
JetTagDQA::PhysValBTag::m_GN2Xv01Name
std::string m_GN2Xv01Name
Definition: PhysValBTag.h:119
JetTagDQA::PhysValBTag::m_jetNamePFlow
std::string m_jetNamePFlow
Definition: PhysValBTag.h:90
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
JetTagDQA::PhysValBTag::m_antiKt4EMTopoPlots
JetTagDQA::BTaggingValidationPlots m_antiKt4EMTopoPlots
Definition: PhysValBTag.h:121
JetTagDQA::PhysValBTag
Definition: PhysValBTag.h:38
covarianceTool.plots
plots
Definition: covarianceTool.py:698
JetTagDQA::PhysValBTag::m_nevents
int m_nevents
Definition: PhysValBTag.h:126
JetTagDQA
Definition: BTaggingValidationPlots.cxx:22
JetTagDQA::PhysValBTag::m_jetNameR10
std::string m_jetNameR10
Definition: PhysValBTag.h:91
JetTagDQA::PhysValBTag::m_PV_z
double m_PV_z
Definition: PhysValBTag.h:45
JetTagDQA::PhysValBTag::m_vertexName
std::string m_vertexName
Definition: PhysValBTag.h:95
JetTagDQA::PhysValBTag::m_antiKt4EMPFlowJetsPlots
JetTagDQA::BTaggingValidationPlots m_antiKt4EMPFlowJetsPlots
Definition: PhysValBTag.h:122
JetTagDQA::PhysValBTag::bookHistograms
virtual StatusCode bookHistograms()
An inheriting class should either override this function or bookHists().
Definition: PhysValBTag.cxx:131
PlotBase.h
JetTagDQA::PhysValBTag::m_jetNameTrackJet
std::string m_jetNameTrackJet
Definition: PhysValBTag.h:92
FlavorTagDiscriminants::BTagMuonAugmenter
Definition: BTagMuonAugmenter.h:38
JetTagDQA::PhysValBTag::m_jetPtCutTtbar
float m_jetPtCutTtbar
Definition: PhysValBTag.h:107
JetTagDQA::PhysValBTag::m_antiKtVR30Rmax4Rmin02PV0TrackJetsPlots
JetTagDQA::BTaggingValidationPlots m_antiKtVR30Rmax4Rmin02PV0TrackJetsPlots
Definition: PhysValBTag.h:124