ATLAS Offline Software
JSSTaggerBase.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef BOOSTEDJETSTAGGERS_JSSTAGGERBASE_H
6 #define BOOSTEDJETSTAGGERS_JSSTAGGERBASE_H
7 
8 #include "AsgTools/AsgTool.h"
10 
12 
13 #include "xAODJet/Jet.h"
14 #include "xAODJet/JetContainer.h"
19 
21 
22 #include "PATCore/AcceptData.h"
23 
25 
29 
30 #include <TFile.h>
31 #include <TEnv.h>
32 #include <TH2.h>
33 #include <TF1.h>
34 
35 #include <atomic>
36 
37 class JSSTaggerBase : public asg::AsgTool ,
38  virtual public IJetDecorator
39 {
41 
42  public:
43 
45  virtual StatusCode initialize() override;
46 
48  virtual StatusCode decorate( const xAOD::JetContainer& jets ) const override;
49 
50  protected:
51 
53  JSSTaggerBase(const std::string &name);
54 
57 
59  virtual StatusCode tag( const xAOD::Jet& jet ) const = 0;
60 
63 
66 
67  // Wro
68  SG::ReadHandleKey<xAOD::JetContainer> m_jetContainer_key{this, "JetContainer", "AntiKt10UFOCSSKSoftDropBeta100Zcut10Jets", "SG key for input jet container"};
69 
71  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decTaggedKey{this, "TaggedName", "Tagged", "SG key for Tagged"};
72  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decValidPtRangeHighKey{this, "ValidPtRangeHighName", "ValidPtRangeHigh", "SG key for ValidPtRangeHigh"};
73  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decValidPtRangeLowKey{this, "ValidPtRangeLowName", "ValidPtRangeLow", "SG key for ValidPtRangeLow"};
74  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decValidEtaRangeKey{this, "ValidEtaRangeName", "ValidEtaRange", "SG key for ValidEtaRange"};
75  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decValidKinRangeKey{this, "ValidKinRangeName", "ValidKinRange", "SG key for ValidKinRange"};
76  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decValidJetContentKey{this, "ValidJetContentName", "ValidJetContent", "SG key for ValidJetContent"};
77  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decValidEventContentKey{this, "ValidEventContentName", "ValidEventContent", "SG key for ValidEventContent"};
78 
79  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decPassMassKey{this, "PassMassName", "PassMass", "SG key for PassMass"};
80  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decPassScoreKey{this, "PassScoreName", "PassScore", "SG key for PassScore"};
81 
83  const int m_nWarnMax = 10;
84 
86  mutable std::atomic<int> m_nWarnVar;
87 
90  bool m_ptGeV = false;
91 
93  bool m_useMassCut = false;
94 
96  bool m_useScoreCut = false;
97 
101 
103 
105  std::string m_containerName;
106 
108  std::string m_weightConfigPath;
109 
111  std::string m_configFile;
112 
114  std::string m_calibArea;
115 
120  std::string m_kerasCalibArea;
121 
123  std::string m_tmvaConfigFileName;
124  std::string m_tmvaConfigFilePath;
125  std::string m_tmvaCalibArea;
126 
128  std::string m_wkpt;
129  std::string m_tagType;
130 
132  float m_jetPtMin;
133  float m_jetPtMax;
134  float m_jetEtaMax;
135 
138  bool m_useECFG = false;
139  bool m_useLSeries = false;
140 
142  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decTau21WTAKey{this, "Tau21WTANameOut", "Tau21_wta", "SG key for Tau21_wta"};
143  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decTau32WTAKey{this, "Tau32WTANameOut", "Tau32_wta", "SG key for Tau32_wta"};
144  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decTau42WTAKey{this, "Tau42WTANameOut", "Tau42_wta", "SG key for Tau42_wta"};
145 
146  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decC2Key{this, "C2NameOut", "C2", "SG key for C2"};
147  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decD2Key{this, "D2NameOut", "D2", "SG key for D2"};
148  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decE3Key{this, "e3NameOut", "e3", "SG key for e3"};
149  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decL2Key{this, "L2NameOut", "L2", "SG key for L2"};
150  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decL3Key{this, "L3NameOut", "L3", "SG key for L3"};
151 
153  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readTau1WTAKey{this, "Tau1WTAName", "Tau1_wta", "SG key for Tau1_wta"};
154  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readTau2WTAKey{this, "Tau2WTAName", "Tau2_wta", "SG key for Tau2_wta"};
155  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readTau3WTAKey{this, "Tau3WTAName", "Tau3_wta", "SG key for Tau3_wta"};
156  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readTau4WTAKey{this, "Tau4WTAName", "Tau4_wta", "SG key for Tau4_wta"};
157 
158  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readTau21WTAKey{this, "Tau21WTAName", "Tau21_wta", "SG key for Tau21_wta"};
159  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readTau32WTAKey{this, "Tau32WTAName", "Tau32_wta", "SG key for Tau32_wta"};
160  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readTau42WTAKey{this, "Tau42WTAName", "Tau42_wta", "SG key for Tau42_wta"};
161 
162  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readECF1Key{this, "ECF1Name", "ECF1", "SG key for ECF1"};
163  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readECF2Key{this, "ECF2Name", "ECF2", "SG key for ECF2"};
164  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readECF3Key{this, "ECF3Name", "ECF3", "SG key for ECF3"};
165 
166  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readC2Key{this, "C2Name", "C2", "SG key for C2"};
167  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readD2Key{this, "D2Name", "D2", "SG key for D2"};
168  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readE3Key{this, "e3Name", "e3", "SG key for e3"};
169 
170  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readSplit12Key{this, "Split12Name", "Split12", "SG key for Split12"};
171  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readSplit23Key{this, "Split23Name", "Split23", "SG key for Split23"};
172 
173  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readQwKey{this, "QwName", "Qw", "SG key for Qw"};
174 
175  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readThrustMajKey{this, "ThrustMajName", "ThrustMaj", "SG key for ThrustMaj"};
176  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readSphericityKey{this, "SphericityName", "Sphericity", "SG key for Sphericity"};
177 
178  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readL2Key{this, "L2Name", "L2", "SG key for L2"};
179  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readL3Key{this, "L3Name", "L3", "SG key for L3"};
180 
181  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readECFG331Key{this, "ECFG331Name", "ECFG_3_3_1", "SG key for ECFG_3_3_1"};
182  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readECFG311Key{this, "ECFG311Name", "ECFG_3_1_1", "SG key for ECFG_3_1_1"};
183  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readECFG212Key{this, "ECFG212Name", "ECFG_2_1_2", "SG key for ECFG_2_1_2"};
184 
185  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readParentKey{this, "ParentName", "Parent", "SG key for Parent"};
186  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decNtrk500Key{this, "Ntrk500NameOut", "ParentJetNTrkPt500", "SG key for Ntrk500 from ungroomed jet"};
187  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readNtrk500Key{this, "Ntrk500Name", "ParentJetNTrkPt500", "SG key for Ntrk500 from ungroomed jet"};
188 
190 
192  std::string m_strMassCutLow;
193  std::string m_strMassCutHigh;
194  std::string m_strScoreCut;
195 
197  std::unique_ptr<TF1> m_funcMassCutLow;
198  std::unique_ptr<TF1> m_funcMassCutHigh;
199  std::unique_ptr<TF1> m_funcScoreCut;
200 
202  std::string m_decorationName;
203 
205  bool m_calcSF;
206  bool m_isMC;
207 
210  std::string m_weightFileName;
213  std::string m_weightFlavors;
214 
216  std::unique_ptr<TFile> m_weightConfig;
217  std::map<std::string, std::unique_ptr<TH2D>> m_weightHistograms;
218  std::map<std::string, std::unique_ptr<TH2D>> m_efficiencyHistograms;
219 
225  std::string m_truthLabelName;
226 
228  SG::ReadDecorHandleKey<xAOD::JetContainer> m_readTruthLabelKey{this, "truthLabelName", "truthLabel", "SG key for truthLabel"};
229 
231  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decCutMLowKey{this, "CutMLowName", "Cut_mlow", "SG key for Cut_mlow"};
232  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decCutMHighKey{this, "CutMHighName", "Cut_mhigh", "SG key for Cut_mhigh"};
233  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decScoreCutKey{this, "CutScoreName", "Cut_score", "SG key for Cut_score"};
234  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decScoreValueKey{this, "ScoreName", "Score", "SG key for Score"};
235 
237  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decWeightKey{this, "weightName", "weight", "SG key for weight"};
238  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decEfficiencyKey{this, "efficiencyName", "efficiency", "SG key for efficiency"};
239  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decEffSFKey{this, "effSFName", "effSF", "SG key for effSF"};
240  SG::WriteDecorHandleKey<xAOD::JetContainer> m_decSigeffSFKey{this, "sigeffSFName", "sigeffSF", "SG key for effSF"};
241 
242 
245 
247  StatusCode resetCuts( asg::AcceptData &acceptData ) const;
248 
250  bool passKinRange( const xAOD::Jet &jet ) const;
251 
253  StatusCode checkKinRange( const xAOD::Jet &jet, asg::AcceptData &acceptData ) const;
254 
257  int calculateJSSRatios( const xAOD::Jet &jet ) const;
258 
260  int findPV() const;
261 
263  StatusCode GetUnGroomTracks( const xAOD::Jet &jet , int indexPV) const;
264 
266  StatusCode getWeight( const xAOD::Jet& jet, bool passSel, asg::AcceptData &acceptData ) const;
267 
269  std::pair<double,double> getSF( const xAOD::Jet& jet, const std::string& truthLabelStr ) const;
270  std::string getTruthLabelStr( const xAOD::Jet& jet, asg::AcceptData &acceptData ) const;
271 
273  void printCuts() const;
274 
275 };
276 
277 #endif
JSSTaggerBase::m_readParentKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readParentKey
Definition: JSSTaggerBase.h:185
SG::WriteDecorHandleKey
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
Definition: StoreGate/StoreGate/WriteDecorHandleKey.h:89
JSSTaggerBase::~JSSTaggerBase
~JSSTaggerBase()
Default destructor - to be used in all derived classes.
Definition: JSSTaggerBase.h:56
JSSTaggerBase::m_readTau4WTAKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readTau4WTAKey
Definition: JSSTaggerBase.h:156
JSSTaggerBase::m_suppressOutputDependence
bool m_suppressOutputDependence
Definition: JSSTaggerBase.h:189
JSSTaggerBase::m_readSplit23Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readSplit23Key
Definition: JSSTaggerBase.h:171
Jet.h
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
JSSTaggerBase::m_readECF1Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readECF1Key
Definition: JSSTaggerBase.h:162
JSSTaggerBase::getTruthLabelStr
std::string getTruthLabelStr(const xAOD::Jet &jet, asg::AcceptData &acceptData) const
Definition: JSSTaggerBase.cxx:728
JSSTaggerBase::m_decScoreCutKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decScoreCutKey
Definition: JSSTaggerBase.h:233
JSSTaggerBase::m_strMassCutLow
std::string m_strMassCutLow
Strings for cut functions.
Definition: JSSTaggerBase.h:192
JSSTaggerBase::m_funcScoreCut
std::unique_ptr< TF1 > m_funcScoreCut
Definition: JSSTaggerBase.h:199
JSSTaggerBase::ZBoson
@ ZBoson
Definition: JSSTaggerBase.h:99
JSSTaggerBase::m_readTau32WTAKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readTau32WTAKey
Definition: JSSTaggerBase.h:159
JSSTaggerBase::resetCuts
StatusCode resetCuts(asg::AcceptData &acceptData) const
Reset cuts.
Definition: JSSTaggerBase.cxx:338
JSSTaggerBase::m_readNtrk500Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readNtrk500Key
Definition: JSSTaggerBase.h:187
JSSTaggerBase::m_readECFG311Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readECFG311Key
Definition: JSSTaggerBase.h:182
JSSTaggerBase::m_jetContainer_key
SG::ReadHandleKey< xAOD::JetContainer > m_jetContainer_key
Definition: JSSTaggerBase.h:68
JSSTaggerBase::m_jetEtaMax
float m_jetEtaMax
Definition: JSSTaggerBase.h:134
JSSTaggerBase::m_nWarnVar
std::atomic< int > m_nWarnVar
Warning counters.
Definition: JSSTaggerBase.h:86
JSSTaggerBase::m_useMassCut
bool m_useMassCut
Flag to indicate if mass window cut is used.
Definition: JSSTaggerBase.h:93
JSSTaggerBase::m_readTau42WTAKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readTau42WTAKey
Definition: JSSTaggerBase.h:160
JSSTaggerBase::m_decValidEtaRangeKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decValidEtaRangeKey
Definition: JSSTaggerBase.h:74
JSSTaggerBase::m_kerasCalibArea
std::string m_kerasCalibArea
Definition: JSSTaggerBase.h:120
JSSTaggerBase::m_efficiencyHistograms
std::map< std::string, std::unique_ptr< TH2D > > m_efficiencyHistograms
Definition: JSSTaggerBase.h:218
JSSTaggerBase::m_configFile
std::string m_configFile
Configuration file name.
Definition: JSSTaggerBase.h:111
JSSTaggerBase::m_useScoreCut
bool m_useScoreCut
Flag to indicate if a discriminant score is used.
Definition: JSSTaggerBase.h:96
JSSTaggerBase::m_tmvaCalibArea
std::string m_tmvaCalibArea
Definition: JSSTaggerBase.h:125
JSSTaggerBase::m_configReader
TEnv m_configReader
TEnv instance to read config files.
Definition: JSSTaggerBase.h:62
TruthParticleContainer.h
JSSTaggerBase::TopQuark
@ TopQuark
Definition: JSSTaggerBase.h:99
JSSTaggerBase::m_nWarnMax
const int m_nWarnMax
Maximum number of warnings.
Definition: JSSTaggerBase.h:83
JSSTaggerBase::m_weightFileName
std::string m_weightFileName
Definition: JSSTaggerBase.h:210
JSSTaggerBase::tag
virtual StatusCode tag(const xAOD::Jet &jet) const =0
Decorate single jet with tagging info.
JSSTaggerBase::m_decPassScoreKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decPassScoreKey
Definition: JSSTaggerBase.h:80
JSSTaggerBase::getWeight
StatusCode getWeight(const xAOD::Jet &jet, bool passSel, asg::AcceptData &acceptData) const
Get SF weight.
Definition: JSSTaggerBase.cxx:596
IJetDecorator
Interface for adding a decoration to a jet container.
Definition: IJetDecorator.h:21
JSSTaggerBase::m_readTau2WTAKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readTau2WTAKey
Definition: JSSTaggerBase.h:154
JSSTaggerBase::m_readSplit12Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readSplit12Key
Definition: JSSTaggerBase.h:170
JSSTaggerBase::m_jetPtMin
float m_jetPtMin
Kinematic bounds for the jet - the units are controlled by m_ptGeV.
Definition: JSSTaggerBase.h:132
JSSTaggerBase::m_decL3Key
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decL3Key
Definition: JSSTaggerBase.h:150
JSSTaggerBase::m_decCutMLowKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decCutMLowKey
WriteDecorHandle keys for cut values.
Definition: JSSTaggerBase.h:231
JSSTaggerBase::m_decC2Key
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decC2Key
Definition: JSSTaggerBase.h:146
JSSTaggerBase::m_decorationName
std::string m_decorationName
Decoration name.
Definition: JSSTaggerBase.h:202
JSSTaggerBase::m_readECFG331Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readECFG331Key
Definition: JSSTaggerBase.h:181
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
JSSTaggerBase::m_readTau21WTAKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readTau21WTAKey
Definition: JSSTaggerBase.h:158
IJetDecorator.h
JSSTaggerBase::m_decValidPtRangeHighKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decValidPtRangeHighKey
Definition: JSSTaggerBase.h:72
JSSTaggerBase::m_funcMassCutHigh
std::unique_ptr< TF1 > m_funcMassCutHigh
Definition: JSSTaggerBase.h:198
JSSTaggerBase::m_weightHistogramName
std::string m_weightHistogramName
Definition: JSSTaggerBase.h:211
JSSTaggerBase::m_decValidJetContentKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decValidJetContentKey
Definition: JSSTaggerBase.h:76
JSSTaggerBase::m_jetPtMax
float m_jetPtMax
Definition: JSSTaggerBase.h:133
JSSTaggerBase::m_calibArea
std::string m_calibArea
Location where config files live on cvmfs.
Definition: JSSTaggerBase.h:114
JSSTaggerBase::m_decWeightKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decWeightKey
WriteDecorHandle keys for SF.
Definition: JSSTaggerBase.h:237
JSSTaggerBase::m_readTruthLabelKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readTruthLabelKey
Truth label ReadDecorHandle key.
Definition: JSSTaggerBase.h:228
JSSTaggerBase::TAGCLASS
TAGCLASS
TAGTYPE enum.
Definition: JSSTaggerBase.h:99
JSSTaggerBase::m_decSigeffSFKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decSigeffSFKey
Definition: JSSTaggerBase.h:240
JSSTaggerBase::m_truthLabelName
std::string m_truthLabelName
Definition: JSSTaggerBase.h:225
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
JSSTaggerBase::m_decEfficiencyKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decEfficiencyKey
Definition: JSSTaggerBase.h:238
JSSTaggerBase::m_useLSeries
bool m_useLSeries
Definition: JSSTaggerBase.h:139
JSSTaggerBase::m_decE3Key
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decE3Key
Definition: JSSTaggerBase.h:148
JSSTaggerBase::m_decCutMHighKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decCutMHighKey
Definition: JSSTaggerBase.h:232
JSSTaggerBase::m_ptGeV
bool m_ptGeV
Flag to indicate units pT is defined in Set to false by default.
Definition: JSSTaggerBase.h:90
JSSTaggerBase::m_decTau32WTAKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decTau32WTAKey
Definition: JSSTaggerBase.h:143
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
JSSTaggerBase::m_readQwKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readQwKey
Definition: JSSTaggerBase.h:173
asg::AcceptInfo
Definition: AcceptInfo.h:28
JSSTaggerBase::decorate
virtual StatusCode decorate(const xAOD::JetContainer &jets) const override
Decorate jet collection with tagging info.
Definition: JSSTaggerBase.cxx:289
JSSTaggerBase::getSF
std::pair< double, double > getSF(const xAOD::Jet &jet, const std::string &truthLabelStr) const
Get scale factor and efficiency.
Definition: JSSTaggerBase.cxx:670
JSSTaggerBase::m_tagClass
TAGCLASS m_tagClass
Definition: JSSTaggerBase.h:100
JSSTaggerBase::m_weightConfig
std::unique_ptr< TFile > m_weightConfig
Histograms for scale factors.
Definition: JSSTaggerBase.h:216
JSSTaggerBase::m_kerasConfigOutputName
std::string m_kerasConfigOutputName
Definition: JSSTaggerBase.h:119
JSSTaggerBase::m_readECFG212Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readECFG212Key
Definition: JSSTaggerBase.h:183
JSSTaggerBase::m_tmvaConfigFileName
std::string m_tmvaConfigFileName
TMVA configurations for BDT taggers.
Definition: JSSTaggerBase.h:123
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
JSSTaggerBase::checkKinRange
StatusCode checkKinRange(const xAOD::Jet &jet, asg::AcceptData &acceptData) const
Check and record if jet passes kinematic constraints.
Definition: JSSTaggerBase.cxx:370
JSSTaggerBase::Unknown
@ Unknown
Definition: JSSTaggerBase.h:99
JSSTaggerBase::m_readL3Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readL3Key
Definition: JSSTaggerBase.h:179
JSSTaggerBase::m_efficiencyHistogramName
std::string m_efficiencyHistogramName
Definition: JSSTaggerBase.h:212
JSSTaggerBase::m_strScoreCut
std::string m_strScoreCut
Definition: JSSTaggerBase.h:194
JSSTaggerBase::m_decTau42WTAKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decTau42WTAKey
Definition: JSSTaggerBase.h:144
JSSTaggerBase::m_useECFG
bool m_useECFG
Flags controlling whether generalized ECF moments or L-series ratios are needed TODO: Implement the f...
Definition: JSSTaggerBase.h:138
JSSTaggerBase::calculateJSSRatios
int calculateJSSRatios(const xAOD::Jet &jet) const
Calculate JSS moment ratios in case they are not already saved TODO: Remove this once JSSMomentTools ...
Definition: JSSTaggerBase.cxx:416
JSSTaggerBase::m_truthBosonContainerName
std::string m_truthBosonContainerName
Definition: JSSTaggerBase.h:223
JSSTaggerBase::m_decEffSFKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decEffSFKey
Definition: JSSTaggerBase.h:239
JSSTaggerBase::m_decNtrk500Key
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decNtrk500Key
Definition: JSSTaggerBase.h:186
JSSTaggerBase::m_wkpt
std::string m_wkpt
Tagger information.
Definition: JSSTaggerBase.h:128
JSSTaggerBase::m_calcSF
bool m_calcSF
Flag to calculate scale factor.
Definition: JSSTaggerBase.h:205
JSSTaggerBase::m_decValidEventContentKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decValidEventContentKey
Definition: JSSTaggerBase.h:77
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
JSSTaggerBase::GetUnGroomTracks
StatusCode GetUnGroomTracks(const xAOD::Jet &jet, int indexPV) const
Retrieve Ntrk variable from the ungroomed parent jet.
Definition: JSSTaggerBase.cxx:553
AcceptData.h
WriteDecorHandle.h
Handle class for adding a decoration to an object.
JSSTaggerBase
Definition: JSSTaggerBase.h:39
AnaToolHandle.h
JSSTaggerBase::findPV
int findPV() const
Find the PV (to be used for Ntrk)
Definition: JSSTaggerBase.cxx:529
JSSTaggerBase::m_tmvaConfigFilePath
std::string m_tmvaConfigFilePath
Definition: JSSTaggerBase.h:124
JSSTaggerBase::m_kerasConfigFilePath
std::string m_kerasConfigFilePath
Definition: JSSTaggerBase.h:118
JSSTaggerBase::m_decD2Key
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decD2Key
Definition: JSSTaggerBase.h:147
JSSTaggerBase::m_truthTopQuarkContainerName
std::string m_truthTopQuarkContainerName
Definition: JSSTaggerBase.h:224
PathResolver.h
JSSTaggerBase::m_readThrustMajKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readThrustMajKey
Definition: JSSTaggerBase.h:175
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
JSSTaggerBase::initialize
virtual StatusCode initialize() override
Initialize the tool.
Definition: JSSTaggerBase.cxx:73
JSSTaggerBase::m_acceptInfo
asg::AcceptInfo m_acceptInfo
Object that stores the results for a jet.
Definition: JSSTaggerBase.h:65
JSSTaggerBase::m_decTau21WTAKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decTau21WTAKey
WriteDecorHandle keys for JSS moments.
Definition: JSSTaggerBase.h:142
JSSTaggerBase::m_truthLabelUseTRUTH3
bool m_truthLabelUseTRUTH3
Truth label options.
Definition: JSSTaggerBase.h:221
EventInfo.h
JSSTaggerBase::m_decScoreValueKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decScoreValueKey
Definition: JSSTaggerBase.h:234
JSSTaggerBase::printCuts
void printCuts() const
Print configured cuts.
Definition: JSSTaggerBase.cxx:817
JSSTaggerBase::m_isMC
bool m_isMC
Definition: JSSTaggerBase.h:206
JSSTaggerBase::m_weightDecorationName
std::string m_weightDecorationName
String for scale factor decoration names.
Definition: JSSTaggerBase.h:209
JSSTaggerBase::WBoson
@ WBoson
Definition: JSSTaggerBase.h:99
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
JSSTaggerBase::m_decValidKinRangeKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decValidKinRangeKey
Definition: JSSTaggerBase.h:75
JSSTaggerBase::m_readTau1WTAKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readTau1WTAKey
ReadDecorHandle keys for JSS moments.
Definition: JSSTaggerBase.h:153
JSSTaggerBase::m_weightHistograms
std::map< std::string, std::unique_ptr< TH2D > > m_weightHistograms
Definition: JSSTaggerBase.h:217
VertexContainer.h
JetContainer.h
JSSTaggerBase::passKinRange
bool passKinRange(const xAOD::Jet &jet) const
Check if jet passes kinematic constraints.
Definition: JSSTaggerBase.cxx:356
JSSTaggerBase::m_decValidPtRangeLowKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decValidPtRangeLowKey
Definition: JSSTaggerBase.h:73
JSSTaggerBase::m_truthParticleContainerName
std::string m_truthParticleContainerName
Definition: JSSTaggerBase.h:222
JSSTaggerBase::m_readSphericityKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readSphericityKey
Definition: JSSTaggerBase.h:176
JSSTaggerBase::m_readTau3WTAKey
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readTau3WTAKey
Definition: JSSTaggerBase.h:155
JSSTaggerBase::m_readD2Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readD2Key
Definition: JSSTaggerBase.h:167
JSSTaggerBase::m_readECF2Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readECF2Key
Definition: JSSTaggerBase.h:163
JSSTaggerBase::m_readECF3Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readECF3Key
Definition: JSSTaggerBase.h:164
JSSTaggerBase::getConfigReader
StatusCode getConfigReader()
Get configReader StatusCode.
Definition: JSSTaggerBase.cxx:300
JSSTaggerBase::m_decPassMassKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decPassMassKey
Definition: JSSTaggerBase.h:79
ASG_TOOL_CLASS1
#define ASG_TOOL_CLASS1
Definition: AsgToolMacros.h:75
ReadDecorHandle.h
Handle class for reading a decoration on an object.
JetAuxContainer.h
JSSTaggerBase::m_tagType
std::string m_tagType
Definition: JSSTaggerBase.h:129
JSSTaggerBase::JSSTaggerBase
JSSTaggerBase(const std::string &name)
Default constructor - to be used in all derived classes.
Definition: JSSTaggerBase.cxx:11
JSSTaggerBase::m_funcMassCutLow
std::unique_ptr< TF1 > m_funcMassCutLow
TF1 for cut functions.
Definition: JSSTaggerBase.h:197
defineDB.jets
list jets
Definition: JetTagCalibration/share/defineDB.py:24
JSSTaggerBase::m_strMassCutHigh
std::string m_strMassCutHigh
Definition: JSSTaggerBase.h:193
JSSTaggerBase::m_kerasConfigFileName
std::string m_kerasConfigFileName
Keras configurations for ML taggers.
Definition: JSSTaggerBase.h:117
JSSTaggerBase::m_decL2Key
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decL2Key
Definition: JSSTaggerBase.h:149
JSSTaggerBase::m_weightConfigPath
std::string m_weightConfigPath
Path to the SF configuration root file.
Definition: JSSTaggerBase.h:108
JSSTaggerBase::m_weightFlavors
std::string m_weightFlavors
Definition: JSSTaggerBase.h:213
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition: StoreGate/StoreGate/ReadDecorHandleKey.h:85
AsgTool.h
asg::AcceptData
Definition: AcceptData.h:30
JSSTaggerBase::m_readE3Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readE3Key
Definition: JSSTaggerBase.h:168
JSSTaggerBase::m_readL2Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readL2Key
Definition: JSSTaggerBase.h:178
JSSTaggerBase::m_readC2Key
SG::ReadDecorHandleKey< xAOD::JetContainer > m_readC2Key
Definition: JSSTaggerBase.h:166
JSSTaggerBase::m_decTaggedKey
SG::WriteDecorHandleKey< xAOD::JetContainer > m_decTaggedKey
WriteDecorHandle keys for tagging bools.
Definition: JSSTaggerBase.h:71
JSSTaggerBase::m_containerName
std::string m_containerName
Configurable members.
Definition: JSSTaggerBase.h:105
TagResultEnum.h