ATLAS Offline Software
JetUncertaintiesTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef JETUNCERTAINTIES_JETUNCERTAINTIESTOOL_H
6 #define JETUNCERTAINTIES_JETUNCERTAINTIESTOOL_H
7 
10 #include "AsgTools/AsgTool.h"
12 
13 #include <string>
14 #include <vector>
15 #include <unordered_map>
16 #include <tuple>
17 
18 #include "TRandom3.h"
19 
20 namespace jet
21 {
22  class UncertaintyHistogram;
23  class ValidityHistogram;
24  class UncertaintyComponent;
25  class UncertaintyGroup;
26  class UncertaintySet;
27  class ConfigHelper;
28  class GroupHelper;
29  class ComponentHelper;
30  class ResolutionHelper;
31 }
32 
33 class TFile;
34 class TH2D;
35 
36 namespace xAOD
37 {
38  class ShallowAuxContainer;
39 }
40 
41 // Not thread-safe due to use of statics and TRandom3
43  public asg::AsgTool
44 {
46 
47  public:
48  // Constructor/destructor
49  JetUncertaintiesTool(const std::string& name = "JetUncertaintiesTool");
51  virtual ~JetUncertaintiesTool();
52 
53  // Pre-initialization methods
54  // Default scale is MeV per ATLAS policy
55  virtual StatusCode setScaleToMeV();
56  virtual StatusCode setScaleToGeV();
57 
58  // Initialization method
59  virtual StatusCode initialize();
60 
61  // Control methods
62  virtual void setRandomSeed(long long int seed) { m_userSeed = seed; }
63 
64 
65  // Tool information retrieval methods
66  virtual std::string getName() const { return m_name; }
67  virtual std::string getRelease() const { return m_release; }
68  virtual std::string getJetDef() const { return m_jetDef; }
69  virtual std::string getMCType() const { return m_mcType; }
70  virtual std::string getConfigFile() const { return m_configFile; }
71  virtual std::string getPath() const { return m_path; }
72  virtual std::string getAnalysisFile() const { return m_analysisFile; }
73  virtual std::string getAnalysisHistPattern() const { return m_analysisHistPattern; }
74  virtual std::string getDefaultAnaFile() const { return m_defAnaFile; }
75  virtual float getSqrtS() const;
76 
77  // Tool information retrieval methods that require input
78  virtual float getRefMu() const;
79  virtual float getRefNPV() const;
80  virtual float getRefMu(const xAOD::Jet& jet) const;
81  virtual float getRefNPV(const xAOD::Jet& jet) const;
82 
83  // Inherited methods from IJetUncertaintiesTool to implement
84  // Retrieve component information
85  virtual size_t getNumComponents() const;
86  virtual size_t getComponentIndex(const std::string& name) const;
87  virtual size_t getComponentIndex(const TString& name) const;
88  virtual std::string getComponentName(const size_t index) const;
89  virtual std::string getComponentDesc(const size_t index) const;
90  virtual std::string getComponentCategory(const size_t index) const;
91  virtual bool getComponentIsReducible(const size_t index) const;
92  // Retrieve component scaling information
93  virtual bool getComponentScalesFourVec(const size_t index) const;
94  virtual bool getComponentScalesPt(const size_t index) const;
95  virtual bool getComponentScalesMass(const size_t index) const;
96  virtual bool getComponentScalesD12(const size_t index) const;
97  virtual bool getComponentScalesD23(const size_t index) const;
98  virtual bool getComponentScalesTau21(const size_t index) const;
99  virtual bool getComponentScalesTau32(const size_t index) const;
100  virtual bool getComponentScalesTau21WTA(const size_t index) const;
101  virtual bool getComponentScalesTau32WTA(const size_t index) const;
102  virtual bool getComponentScalesD2Beta1(const size_t index) const;
103  virtual bool getComponentScalesC2Beta1(const size_t index) const;
104  virtual bool getComponentScalesQw(const size_t index) const;
105  virtual bool getComponentScalesTagScaleFactor(const size_t index) const;
106  virtual bool getComponentScalesMultiple(const size_t index) const;
107  virtual std::set<jet::CompScaleVar::TypeEnum> getComponentScaleVars(const size_t index) const;
108  virtual jet::JetTopology::TypeEnum getComponentTopology( const size_t index) const;
109  // Retrieve multi-component information
110  virtual std::vector<std::string> getComponentCategories() const;
111  virtual std::vector<size_t> getComponentsInCategory(const std::string& category) const;
112  virtual std::vector<std::string> getComponentNamesInCategory(const std::string& category) const;
113 
114  // Inherited methods from IJetUncertaintiesTool to implement
115  // Retrieve uncertainty and validity information for a given component
116  virtual bool getValidity(size_t index, const xAOD::Jet& jet) const;
117  virtual bool getValidity(size_t index, const xAOD::Jet& jet, const xAOD::EventInfo& eInfo) const;
118  virtual bool getValidity(size_t index, const xAOD::Jet& jet, const jet::CompScaleVar::TypeEnum scaleVar) const;
119  virtual bool getValidity(size_t index, const xAOD::Jet& jet, const xAOD::EventInfo& eInfo, const jet::CompScaleVar::TypeEnum scaleVar) const;
120 
121  virtual double getUncertainty(size_t index, const xAOD::Jet& jet) const;
122  virtual double getUncertainty(size_t index, const xAOD::Jet& jet, const xAOD::EventInfo& eInfo) const;
123  virtual double getUncertainty(size_t index, const xAOD::Jet& jet, const jet::CompScaleVar::TypeEnum scaleVar) const;
124  virtual double getUncertainty(size_t index, const xAOD::Jet& jet, const xAOD::EventInfo& eInfo, const jet::CompScaleVar::TypeEnum scaleVar) const;
125 
126  virtual bool getValidUncertainty(size_t index, double& unc, const xAOD::Jet& jet) const;
127  virtual bool getValidUncertainty(size_t index, double& unc, const xAOD::Jet& jet, const xAOD::EventInfo& eInfo) const;
128  virtual bool getValidUncertainty(size_t index, double& unc, const xAOD::Jet& jet, const jet::CompScaleVar::TypeEnum scaleVar) const;
129  virtual bool getValidUncertainty(size_t index, double& unc, const xAOD::Jet& jet, const xAOD::EventInfo& eInfo, const jet::CompScaleVar::TypeEnum scaleVar) const;
130 
131  virtual double getNormalizedCaloMassWeight(const xAOD::Jet& jet) const;
132  virtual double getNormalizedTAMassWeight( const xAOD::Jet& jet) const;
133 
134  virtual double getNominalResolutionMC(const xAOD::Jet& jet, const jet::CompScaleVar::TypeEnum smearType, const jet::JetTopology::TypeEnum topology = jet::JetTopology::UNKNOWN) const;
135  virtual double getNominalResolutionData(const xAOD::Jet& jet, const jet::CompScaleVar::TypeEnum smearType, const jet::JetTopology::TypeEnum topology = jet::JetTopology::UNKNOWN) const;
136 
137  // Inherited methods from CP::IJetUncertaintiesTool to implement
138  // Apply a systematic variation or get a new copy
140  virtual CP::CorrectionCode applyCorrection(xAOD::Jet& jet, const xAOD::EventInfo& eInfo) const;
142  virtual CP::CorrectionCode correctedCopy(const xAOD::Jet& input, xAOD::Jet*& output, const xAOD::EventInfo& eInfo) const;
145 
146 
147  // Inherited methods from CP::ISystematicsTool to implement
148  // Changes internal state to the specified SystematicSet
149  virtual bool isAffectedBySystematic(const CP::SystematicVariation& systematic) const;
150  virtual CP::SystematicSet affectingSystematics() const;
152  virtual CP::SystematicSet appliedSystematics() const;
153  virtual StatusCode applySystematicVariation(const CP::SystematicSet& systConfig);
154 
155 
156  // Retrieve the correlation matrix for the loaded configuration
157  // Returns NULL on failure
158  virtual TH2D* getPtCorrelationMatrix( const int numBins,
159  const double minPt,
160  const double maxPt,
161  const double valEta );
162  virtual TH2D* getPtCorrelationMatrix( const int numBins,
163  const double minPt,
164  const double maxPt,
165  const double valEta1,
166  const double valEta2);
167  virtual TH2D* getEtaCorrelationMatrix( const int numBins,
168  const double minEta,
169  const double maxEta,
170  const double valPt );
171  virtual TH2D* getEtaCorrelationMatrix( const int numBins,
172  const double minEta,
173  const double maxEta,
174  const double valPt1,
175  const double valPt2 );
176 
177  private:
178  // Control variables
179  bool m_isInit;
180  const std::string m_name;
182 
183  // Properties for the python configuration
184  std::string m_release;
185  std::string m_jetDef;
186  std::string m_mcType;
187  std::string m_configFile;
188  std::string m_calibArea;
189  std::string m_path;
190  std::string m_analysisFile;
192  std::vector<std::string> m_systFilters;
194  std::string m_name_EffSF;
195  std::string m_name_SigeffSF;
196  std::string m_name_Efficiency;
197  std::string m_name_TagResult;
198  // bool m_flavourJetByJet;
199 
200  // Information to read in and store from the config file
201  std::string m_defAnaFile;
202  float m_refNPV;
203  float m_refMu;
206  std::vector<jet::UncertaintyGroup*> m_groups;
207 
208  // The SystematicSet known sets, maps, and current state
213  std::unordered_map<CP::SystematicSet,CP::SystematicSet> m_systFilterMap;
214  std::unordered_map<CP::SystematicSet,jet::UncertaintySet*> m_systSetMap;
215 
216  // File-wide validity histogram
218 
219  // Jet combined mass information
225 
226  // Smearing information
227  long long int m_userSeed;
228  mutable TRandom3 m_rand; // mutable as this we want to call in a const function (everything else is fixed, the random generator is modifiable)
229  bool m_isData;
231 
232  // Default prefix for each component name
233  const std::string m_namePrefix;
234 
235 
236 
237 
238  // Helper methods for this tool's functions
239  StatusCode addUncertaintyGroup (const jet::ConfigHelper& helper);
240  StatusCode addUncertaintyComponent(const jet::ConfigHelper& helper);
241  jet::UncertaintyComponent* buildUncertaintyComponent(const jet::ComponentHelper& component) const;
242  const xAOD::EventInfo* getDefaultEventInfo() const;
243  StatusCode checkIndexInput(const size_t index) const;
244  double getSmearingFactor(const xAOD::Jet& jet, const jet::CompScaleVar::TypeEnum smearType, const double variation) const;
245  double getNominalResolution(const xAOD::Jet& jet, const jet::CompScaleVar::TypeEnum smearType, const jet::JetTopology::TypeEnum topology, const bool readMC) const;
246  double readHistoFromParam(const xAOD::Jet& jet, const jet::UncertaintyHistogram& histo, const jet::CompParametrization::TypeEnum param, const jet::CompMassDef::TypeEnum massDef) const;
247  double readHistoFromParam(const xAOD::JetFourMom_t& jet4vec, const jet::UncertaintyHistogram& histo, const jet::CompParametrization::TypeEnum param) const;
248 
249  // Helper methods for setting shifted moments
250  StatusCode updateSplittingScale12(xAOD::Jet& jet, const double shift) const;
251  StatusCode updateSplittingScale23(xAOD::Jet& jet, const double shift) const;
252  StatusCode updateTau21(xAOD::Jet& jet, const double shift) const;
253  StatusCode updateTau32(xAOD::Jet& jet, const double shift) const;
254  StatusCode updateTau21WTA(xAOD::Jet& jet, const double shift) const;
255  StatusCode updateTau32WTA(xAOD::Jet& jet, const double shift) const;
256  StatusCode updateD2Beta1(xAOD::Jet& jet, const double shift) const;
257  StatusCode updateC2Beta1(xAOD::Jet& jet, const double shift) const;
258  StatusCode updateQw(xAOD::Jet& jet, const double shift) const;
259  StatusCode updateTagScaleFactor(xAOD::Jet& jet, const double shift) const;
260  StatusCode updateTagEfficiency(xAOD::Jet& jet, const double shift) const;
261 
262  // Helper methods for CP::ISystematicsTool functions
263  bool checkIfRecommendedSystematic(const jet::UncertaintyGroup& systematic) const;
264  virtual StatusCode addAffectingSystematic(const CP::SystematicVariation& systematic, bool recommended);
265  virtual StatusCode getFilteredSystematicSet(const CP::SystematicSet& systConfig, CP::SystematicSet& filteredSet);
266  virtual StatusCode getUncertaintySet(const CP::SystematicSet& filteredSet, jet::UncertaintySet*& uncSet);
267 
268  // accessor to taggign efficiency SF
274 
275  // Properties for the flavour configuration
277 
278  // toggle only the JER uncertainties for pseudo-data smearing
280 };
281 
282 
283 #endif
jet::CompMassDef::TypeEnum
TypeEnum
Definition: UncertaintyEnum.h:71
JetUncertaintiesTool::m_recommendedSystematics
CP::SystematicSet m_recommendedSystematics
Definition: JetUncertaintiesTool.h:210
jet::ValidityHistogram
Definition: ValidityHistogram.h:19
JetUncertaintiesTool::m_name
const std::string m_name
Definition: JetUncertaintiesTool.h:180
jet::JetTopology::UNKNOWN
@ UNKNOWN
Definition: UncertaintyEnum.h:209
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
JetUncertaintiesTool::m_absEtaGluonFraction
bool m_absEtaGluonFraction
Definition: JetUncertaintiesTool.h:276
JetUncertaintiesTool::m_fileValidHist
jet::ValidityHistogram * m_fileValidHist
Definition: JetUncertaintiesTool.h:217
JetUncertaintiesTool::m_refNPVHist
jet::UncertaintyHistogram * m_refNPVHist
Definition: JetUncertaintiesTool.h:204
JetUncertaintiesTool::m_energyScale
float m_energyScale
Definition: JetUncertaintiesTool.h:181
IJetUncertaintiesTool::getComponentDesc
virtual std::string getComponentDesc(const size_t index) const =0
SG::Accessor
Helper class to provide type-safe access to aux data.
Definition: Control/AthContainers/AthContainers/Accessor.h:68
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition: checker_macros.h:212
index
Definition: index.py:1
JetUncertaintiesTool::m_configFile
std::string m_configFile
Definition: JetUncertaintiesTool.h:187
initialize
void initialize()
Definition: run_EoverP.cxx:894
JetUncertaintiesTool::getDefaultAnaFile
virtual std::string getDefaultAnaFile() const
Definition: JetUncertaintiesTool.h:74
JetUncertaintiesTool::getRelease
virtual std::string getRelease() const
Definition: JetUncertaintiesTool.h:67
JetUncertaintiesTool::m_pseudoDataJERsmearingMode
bool m_pseudoDataJERsmearingMode
Definition: JetUncertaintiesTool.h:279
JetUncertaintiesTool::getAnalysisHistPattern
virtual std::string getAnalysisHistPattern() const
Definition: JetUncertaintiesTool.h:73
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition: SystematicSet.h:31
jet::ComponentHelper
Definition: ConfigHelper.h:24
JetUncertaintiesTool::m_refNPV
float m_refNPV
Definition: JetUncertaintiesTool.h:202
JetUncertaintiesTool::m_userSeed
long long int m_userSeed
Definition: JetUncertaintiesTool.h:227
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
JetUncertaintiesTool::m_refMuHist
jet::UncertaintyHistogram * m_refMuHist
Definition: JetUncertaintiesTool.h:205
JetUncertaintiesTool::getMCType
virtual std::string getMCType() const
Definition: JetUncertaintiesTool.h:69
CP::SystematicVariation
Definition: SystematicVariation.h:47
JetUncertaintiesTool::m_systFilters
std::vector< std::string > m_systFilters
Definition: JetUncertaintiesTool.h:192
JetUncertaintiesTool::m_defAnaFile
std::string m_defAnaFile
Definition: JetUncertaintiesTool.h:201
JetUncertaintiesTool::m_TAMassWeight
jet::UncertaintyHistogram * m_TAMassWeight
Definition: JetUncertaintiesTool.h:221
JetUncertaintiesTool::m_accSigeffSF
SG::AuxElement::Accessor< float > m_accSigeffSF
Definition: JetUncertaintiesTool.h:271
IJetUncertaintiesTool::getComponentScalesTau21
virtual bool getComponentScalesTau21(const size_t index) const =0
postInclude.inputs
inputs
Definition: postInclude.SortInput.py:15
ICPJetUncertaintiesTool
Definition: ICPJetUncertaintiesTool.h:15
PUfitVar::maxEta
constexpr float maxEta
Definition: GepMETPufitAlg.cxx:13
JetUncertaintiesTool::m_calibArea
std::string m_calibArea
Definition: JetUncertaintiesTool.h:188
UncertaintyEnum.h
jet::UncertaintyComponent
Definition: UncertaintyComponent.h:25
runBeamSpotCalibration.helper
helper
Definition: runBeamSpotCalibration.py:112
JetUncertaintiesTool::m_isInit
bool m_isInit
Definition: JetUncertaintiesTool.h:179
IJetUncertaintiesTool::getValidity
virtual bool getValidity(size_t index, const xAOD::Jet &jet) const =0
JetUncertaintiesTool::m_analysisHistPattern
std::string m_analysisHistPattern
Definition: JetUncertaintiesTool.h:191
JetUncertaintiesTool::setRandomSeed
virtual void setRandomSeed(long long int seed)
Definition: JetUncertaintiesTool.h:62
JetUncertaintiesTool::m_caloMassWeight
jet::UncertaintyHistogram * m_caloMassWeight
Definition: JetUncertaintiesTool.h:220
IJetUncertaintiesTool::getNumComponents
virtual size_t getNumComponents() const =0
JetUncertaintiesTool::m_systSetMap
std::unordered_map< CP::SystematicSet, jet::UncertaintySet * > m_systSetMap
Definition: JetUncertaintiesTool.h:214
JetUncertaintiesTool::m_name_TagResult
std::string m_name_TagResult
Definition: JetUncertaintiesTool.h:197
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
JetUncertaintiesTool::m_combMassWeightTAMassDef
jet::CompMassDef::TypeEnum m_combMassWeightTAMassDef
Definition: JetUncertaintiesTool.h:223
ICPJetUncertaintiesTool::correctedCopy
virtual CP::CorrectionCode correctedCopy(const xAOD::Jet &input, xAOD::Jet *&output) const =0
JetUncertaintiesTool::getConfigFile
virtual std::string getConfigFile() const
Definition: JetUncertaintiesTool.h:70
JetUncertaintiesTool
Definition: JetUncertaintiesTool.h:44
JetUncertaintiesTool::m_recognizedSystematics
CP::SystematicSet m_recognizedSystematics
Definition: JetUncertaintiesTool.h:209
JetUncertaintiesTool::m_refMu
float m_refMu
Definition: JetUncertaintiesTool.h:203
JetUncertaintiesTool::m_combMassWeightCaloMassDef
jet::CompMassDef::TypeEnum m_combMassWeightCaloMassDef
Definition: JetUncertaintiesTool.h:222
JetUncertaintiesTool::m_jetDef
std::string m_jetDef
Definition: JetUncertaintiesTool.h:185
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ReweightUtils.category
category
Definition: ReweightUtils.py:15
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
m_path
std::string m_path
the path being used
Definition: OutputStreamData.cxx:88
IJetUncertaintiesTool::getComponentScalesPt
virtual bool getComponentScalesPt(const size_t index) const =0
JetUncertaintiesTool::m_analysisFile
std::string m_analysisFile
Definition: JetUncertaintiesTool.h:190
IJetUncertaintiesTool::getComponentIndex
virtual size_t getComponentIndex(const std::string &name) const =0
IJetUncertaintiesTool::getComponentScalesD12
virtual bool getComponentScalesD12(const size_t index) const =0
ICPJetUncertaintiesTool::applyCorrection
virtual CP::CorrectionCode applyCorrection(xAOD::Jet &input) const =0
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
CP::IReentrantSystematicsTool::affectingSystematics
virtual SystematicSet affectingSystematics() const =0
the list of all systematics this tool can be affected by
JetUncertaintiesTool::m_accTagResult
SG::AuxElement::Accessor< bool > m_accTagResult
Definition: JetUncertaintiesTool.h:273
CP::IReentrantSystematicsTool::recommendedSystematics
virtual SystematicSet recommendedSystematics() const =0
the list of all systematics this tool recommends to use
merge.output
output
Definition: merge.py:17
jet::ResolutionHelper
Definition: Reconstruction/Jet/JetUncertainties/JetUncertainties/ResolutionHelper.h:22
xAOD::JetFourMom_t
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< double > > JetFourMom_t
Base 4 Momentum type for Jet.
Definition: JetTypes.h:17
JetUncertaintiesTool::m_mcType
std::string m_mcType
Definition: JetUncertaintiesTool.h:186
JetUncertaintiesTool::m_currentUncSet
jet::UncertaintySet * m_currentUncSet
Definition: JetUncertaintiesTool.h:212
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
JetUncertaintiesTool::m_release
std::string m_release
Definition: JetUncertaintiesTool.h:184
jet::CompParametrization::TypeEnum
TypeEnum
Definition: UncertaintyEnum.h:45
jet::UncertaintyGroup
Definition: UncertaintyGroup.h:28
jet::ConfigHelper
Definition: ConfigHelper.h:106
JetUncertaintiesTool::m_rand
TRandom3 m_rand
Definition: JetUncertaintiesTool.h:228
IJetUncertaintiesTool::getComponentScalesTau32
virtual bool getComponentScalesTau32(const size_t index) const =0
ICPJetUncertaintiesTool.h
JetUncertaintiesTool::m_name_EffSF
std::string m_name_EffSF
Definition: JetUncertaintiesTool.h:194
JetUncertaintiesTool::m_name_SigeffSF
std::string m_name_SigeffSF
Definition: JetUncertaintiesTool.h:195
JetUncertaintiesTool::m_combMassParam
jet::CompParametrization::TypeEnum m_combMassParam
Definition: JetUncertaintiesTool.h:224
JetUncertaintiesTool::m_name_Efficiency
std::string m_name_Efficiency
Definition: JetUncertaintiesTool.h:196
JetUncertaintiesTool::m_resHelper
jet::ResolutionHelper * m_resHelper
Definition: JetUncertaintiesTool.h:230
jet::UncertaintyHistogram
Definition: UncertaintyHistogram.h:25
xAOD::EventInfo_v1
Class describing the basic event information.
Definition: EventInfo_v1.h:43
IJetUncertaintiesTool::getComponentScalesFourVec
virtual bool getComponentScalesFourVec(const size_t index) const =0
jet::CompScaleVar::TypeEnum
TypeEnum
Definition: UncertaintyEnum.h:91
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
JetUncertaintiesTool::getAnalysisFile
virtual std::string getAnalysisFile() const
Definition: JetUncertaintiesTool.h:72
JetUncertaintiesTool::m_path
std::string m_path
Definition: JetUncertaintiesTool.h:189
IJetUncertaintiesTool::getComponentName
virtual std::string getComponentName(const size_t index) const =0
IJetUncertaintiesTool::getValidUncertainty
virtual bool getValidUncertainty(size_t index, double &unc, const xAOD::Jet &jet) const =0
IJetUncertaintiesTool::getRefNPV
virtual float getRefNPV() const =0
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
JetUncertaintiesTool::getPath
virtual std::string getPath() const
Definition: JetUncertaintiesTool.h:71
CP::CorrectionCode
Return value from object correction CP tools.
Definition: CorrectionCode.h:31
jet::UncertaintySet
Definition: UncertaintySet.h:25
JetUncertaintiesTool::m_systFilterMap
std::unordered_map< CP::SystematicSet, CP::SystematicSet > m_systFilterMap
Definition: JetUncertaintiesTool.h:213
ICPJetUncertaintiesTool::applyContainerCorrection
virtual CP::CorrectionCode applyContainerCorrection(xAOD::JetContainer &inputs) const =0
JetUncertaintiesTool::m_accEffSF
SG::AuxElement::Accessor< float > m_accEffSF
Definition: JetUncertaintiesTool.h:270
jet::JetTopology::TypeEnum
TypeEnum
Definition: UncertaintyEnum.h:208
JetUncertaintiesTool::m_groups
std::vector< jet::UncertaintyGroup * > m_groups
Definition: JetUncertaintiesTool.h:206
JetUncertaintiesTool::m_accTagScaleFactor
SG::AuxElement::Accessor< float > m_accTagScaleFactor
Definition: JetUncertaintiesTool.h:269
AsgTool.h
IJetUncertaintiesTool::getComponentScalesD23
virtual bool getComponentScalesD23(const size_t index) const =0
plotBeamSpotCompare.histo
histo
Definition: plotBeamSpotCompare.py:415
checker_macros.h
Define macros for attributes used to control the static checker.
CP::ISystematicsTool::applySystematicVariation
virtual StatusCode applySystematicVariation(const SystematicSet &systConfig)=0
effects: configure this tool for the given list of systematic variations.
JetUncertaintiesTool::m_namePrefix
const std::string m_namePrefix
Definition: JetUncertaintiesTool.h:233
JetUncertaintiesTool::m_accEfficiency
SG::AuxElement::Accessor< float > m_accEfficiency
Definition: JetUncertaintiesTool.h:272
JetUncertaintiesTool::getName
virtual std::string getName() const
Definition: JetUncertaintiesTool.h:66
IJetUncertaintiesTool::getComponentScalesMass
virtual bool getComponentScalesMass(const size_t index) const =0
JetUncertaintiesTool::m_currentSystSet
CP::SystematicSet m_currentSystSet
Definition: JetUncertaintiesTool.h:211
JetUncertaintiesTool::getJetDef
virtual std::string getJetDef() const
Definition: JetUncertaintiesTool.h:68
IJetUncertaintiesTool::getRefMu
virtual float getRefMu() const =0
IJetUncertaintiesTool::getUncertainty
virtual double getUncertainty(size_t index, const xAOD::Jet &jet) const =0
JetUncertaintiesTool::m_name_TagScaleFactor
std::string m_name_TagScaleFactor
Definition: JetUncertaintiesTool.h:193
JetUncertaintiesTool::m_isData
bool m_isData
Definition: JetUncertaintiesTool.h:229
CP::ISystematicsTool::isAffectedBySystematic
virtual bool isAffectedBySystematic(const SystematicVariation &systematic) const =0
Declare the interface that this class provides.