ATLAS Offline Software
BTaggingEfficiencyTool.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 CPBTAGGINGEFFICIENCYTOOL_H
6 #define CPBTAGGINGEFFICIENCYTOOL_H
7 
11 
12 #include "xAODBTagging/BTagging.h"
13 
14 #include <fstream>
15 #include <string>
16 #include <set>
17 #include <vector>
18 #include <map>
19 //#include <memory>
20 
21 #include "AsgTools/AsgTool.h"
22 #include "AsgTools/AnaToolHandle.h"
23 
26 
27 // for the onnxtool
29 
30 
32  public virtual IBTaggingEfficiencyTool
33 {
34  // typedef double (xAOD::BTagging::* tagWeight_member_t)() const;
35 
38 
39  public:
40 
41 
43  BTaggingEfficiencyTool( const std::string& name );
44 
46  virtual ~BTaggingEfficiencyTool();
47 
48  // For now, disable the generation of a default copy constructor (since it would not be constructed correctly)
49  // BTaggingEfficiencyTool(const BTaggingEfficiencyTool& other) = delete;
50 
51  // /// Silly copy constructor for the benefit of dictionary generation
52  // BTaggingEfficiencyTool(const BTaggingEfficiencyTool& other);
53 
56 
61  float & sf);
62 
67  float & eff);
68 
73  float & eff);
74 
79  float & sf);
80 
85  float & eff);
86 
89 
94  float & sf);
95 
100  float & eff);
101 
106  float & eff);
107 
112  float & sf);
113 
118  float & eff);
119 
123  CP::CorrectionCode getMCEfficiencyONNX( const std::vector<std::vector<float>>& node_feat, std::vector<float>& effAllJet);
124 
128  CP::CorrectionCode getMCEfficiencyONNX( const std::vector<std::vector<float>>& node_feat, std::vector<std::vector<float>>& effAllJetAllWp);
129 
131 
134 
143 
150 
156 
162 
164  bool isAffectedBySystematic(const CP::SystematicVariation & systematic ) const;
165 
174  bool setMapIndex(const std::string& flavour, unsigned int index);
175  bool setMapIndex(unsigned int dsid);
176  // bool setMapIndex(const std::string& flavour, const std::string & type);
178 
182  const std::map<CP::SystematicVariation, std::vector<std::string> > listSystematics() const;
183 
185  std::string getTaggerName() const { return m_taggerName;}
186 
188  std::string getOperatingPoint() const { return m_OP;}
189 
191  std::string getJetAuthor() const { return m_jetAuthor;}
192 
193  // /// Returns false if the tool isn't initialised yet (it has to be initialised before processing jets)
194  // bool isInitialized() const { return m_initialised;}
195 
197  bool applySystematics() const { return m_applySyst;}
198 
204  std::map<std::string, std::vector<std::string> > listScaleFactorSystematics(bool named = false) const;
206 
218  CP::CorrectionCode getEigenRecompositionCoefficientMap(const std::string &label, std::map<std::string, std::map<std::string, float>> & coefficientMap);
220 
221 private:
222 
223  struct SystInfo {
225  std::map<unsigned int, unsigned int> indexMap;
227  // bool isNamed;
228  bool isUp;
229  bool getIndex( unsigned int flavourID, unsigned int & index) const;
230  };
231 
233  bool addSystematics(const std::vector<std::string> & systematicNames,unsigned int flavourID, Analysis::Uncertainty uncType);
234 
236  std::vector<std::string> makeEigenSyst(const std::string & flav, int number, const std::string& suffix);
237 
239  bool getIndices(unsigned int flavour, unsigned int & sf, unsigned int & ef) const;
240 
242  std::string getLabel(int flavourID) const {
243  switch(flavourID) {
244  case 5:
245  return "B";
246  break;
247  case 4:
248  return "C";
249  break;
250  case 15:
251  return "T";
252  break;
253  case 6:
254  return "Top_BX";
255  break;
256  case 21:
257  return "QCD_BB";
258  break;
259  case 23:
260  return "Z_BB";
261  break;
262  case 0:
263  return "Light";
264  break;
265  default:
266  return "Light";
267  }
268  }
269 
271  unsigned int getFlavourID(const std::string& label, bool conventional = true) const {
272  // always default to "light" = 0
273  if( label.size() <1)
274  return 0;
275  if (conventional){
276  switch (label[0]) {
277  case 'B':
278  return 5; break;
279  case 'C':
280  return 4; break;
281  case 'T':
282  return 15; break;
283  default:
284  return 0;
285  }
286  } else {
287  if(label == "Top_BX"){
288  return 6;
289  } else if (label == "QCD_BB"){
290  return 21;
291  } else if (label == "Z_BB"){
292  return 23;
293  } else {
294  return 25;
295  }
296  }
297  }
298 
305 
308  bool fillVariables(const double jetPt, const double jetEta, const double jetTagWeight, Analysis::CalibrationDataVariables& x) const;
309 
311  //Analysis::CalibrationDataInterfaceROOT* m_CDI = nullptr;
312  std::shared_ptr<Analysis::CalibrationDataInterfaceROOT> m_CDI;
314  std::unique_ptr<OnnxUtil> m_onnxUtil;
315 
318 
321 
323  std::string m_SFFile;
324  std::string m_SFFileFull;
326  std::string m_EffFile;
327  std::string m_EffConfigFile;
329  std::map<std::string, std::string> m_SFNames;
331  std::map<std::string, std::string> m_EVReduction;
333  std::map<std::string, std::string> m_EffNames;
335  std::string m_excludeFromEV;
337  std::map<std::string, std::string> m_excludeFlvFromEV;
339  std::map<std::string, std::string> m_uncertaintySuffixes;
340 
341  bool m_using_conventional_labels; // flag for if the labels in the CDI configuration are "conventional", e.g. "B", "C", "Light", and "T"
342  std::string m_SFName_flex; // remove label dependence - work from a string of semi-colon sep. to populate m_SFNames
343  std::string m_EVReduction_flex; // remove label dependence - work from a string of semi-colon sep. to populate m_EVReduction
344  std::string m_EffNames_flex; // remove label dependence - work from a string of semi-colon sep. to populate m_EffNames
345  std::string m_uncertaintySuffixes_flex; // remove label dependence - work from a string of semi-colon sep. to populate m_uncertaintySuffixes
346  std::string m_excludeFlvFromEV_flex; // remove label dependence - work from a string of semi-colon sep. to populate m_excludeFlvFromEV
347 
349  std::string m_taggerName;
351  std::string m_OP;
353  std::string m_jetAuthor;
355  float m_minPt;
357  std::string m_systStrategy;
366  // bool m_excludeJESFromEV;
373  bool m_useCTag = false;
375  std::string m_pathToONNX;
377 
378  // if true, use the flexible configuration of the CDIReader
379  bool m_useFlex = false;
380  bool m_doXbbTagging = false;
381  std::vector<std::string> m_flex_labels;
382  std::vector<unsigned int> m_flex_label_integers;
383 
386 
389 
390 
393 
394  std::map<CP::SystematicVariation,SystInfo> m_systematicsInfo;
395  // cached for affectedBySystematics
397  // specifically for continuous tagging
399  // specifically for continuous 2D tagging
401  // pointer to a member function of a b-tagger
402  // tagWeight_member_t m_getTagWeight;
403 
404  // cache the mapIndex variables (one for each flavour)
405  std::map<std::string, unsigned int> m_mapIndices;
406 
408  std::map<unsigned int, unsigned int> m_SFIndices; // <------------- maps flavourID to an index corresponding to the index at which the container used for SFs is stored in CDIROOT's
410  std::map<unsigned int, unsigned int> m_EffIndices;
411 
412  //cache for efficiency map config file that maps from a sample DSID to the correct efficiency map
413  std::map<unsigned int, unsigned int> m_DSID_to_MapIndex;
415 
416 };
417 
418 #endif // CPBTAGGINGEFFICIENCYTOOL_H
419 
BTaggingEfficiencyTool::getLabel
std::string getLabel(int flavourID) const
convert integer flavour index to its string equivalent
Definition: BTaggingEfficiencyTool.h:242
BTaggingEfficiencyTool::m_isContinuous2D
bool m_isContinuous2D
Definition: BTaggingEfficiencyTool.h:400
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
BTaggingEfficiencyTool::m_EffFile
std::string m_EffFile
name of the optional MC efficiency file (may be changed by the PathResolver)
Definition: BTaggingEfficiencyTool.h:326
BTaggingEfficiencyTool::m_mapIndices
std::map< std::string, unsigned int > m_mapIndices
Definition: BTaggingEfficiencyTool.h:405
asg::AnaToolHandle< IBTaggingSelectionTool >
BTaggingEfficiencyTool
Definition: BTaggingEfficiencyTool.h:33
hotSpotInTAG.suffix
string suffix
Definition: hotSpotInTAG.py:186
BTaggingEfficiencyTool::m_SFName_flex
std::string m_SFName_flex
Definition: BTaggingEfficiencyTool.h:342
BTagging.h
BTaggingEfficiencyTool::m_ignoreOutOfValidityRange
bool m_ignoreOutOfValidityRange
if true, ignore out-of-extrapolation range errors (i.e., return CorrectionCode::Ok if these are encou...
Definition: BTaggingEfficiencyTool.h:370
BTaggingEfficiencyTool::m_DSID_to_MapIndex
std::map< unsigned int, unsigned int > m_DSID_to_MapIndex
Definition: BTaggingEfficiencyTool.h:413
BTaggingEfficiencyTool::m_uncertaintySuffixes_flex
std::string m_uncertaintySuffixes_flex
Definition: BTaggingEfficiencyTool.h:345
BTaggingEfficiencyTool::getIndices
bool getIndices(unsigned int flavour, unsigned int &sf, unsigned int &ef) const
helper function for retrieving object indices
Definition: BTaggingEfficiencyTool.cxx:1411
BTaggingEfficiencyTool::m_excludeFromEV
std::string m_excludeFromEV
semicolon-separated list of uncertainties to be excluded from the eigenvector variation procedure for...
Definition: BTaggingEfficiencyTool.h:335
BTaggingEfficiencyTool::getMCEfficiencyONNX
CP::CorrectionCode getMCEfficiencyONNX(const std::vector< std::vector< float >> &node_feat, std::vector< float > &effAllJet)
Computes the MC efficiency of the jets in a given event.
Definition: BTaggingEfficiencyTool.cxx:1122
BTaggingEfficiencyTool::getJetAuthor
std::string getJetAuthor() const
Retrieve the jet collection name (as specified in the calibration file) for which this tool was setup...
Definition: BTaggingEfficiencyTool.h:191
index
Definition: index.py:1
PlotCalibFromCool.label
label
Definition: PlotCalibFromCool.py:78
BTaggingEfficiencyTool::getEigenRecompositionCoefficientMap
CP::CorrectionCode getEigenRecompositionCoefficientMap(const std::string &label, std::map< std::string, std::map< std::string, float >> &coefficientMap)
Run EigenvectorRecomposition method and get the coefficient map.
Definition: BTaggingEfficiencyTool.cxx:1227
BTaggingEfficiencyTool::m_useCTag
bool m_useCTag
if false, suppress any non-error/warning printout from the underlying tool 1D tagging only: define we...
Definition: BTaggingEfficiencyTool.h:373
BTaggingEfficiencyTool::makeEigenSyst
std::vector< std::string > makeEigenSyst(const std::string &flav, int number, const std::string &suffix)
generate names for the eigenvector variations for the given jet flavour
Definition: BTaggingEfficiencyTool.cxx:1399
CP::SystematicSet
Class to wrap a set of SystematicVariations.
Definition: SystematicSet.h:31
BTaggingEfficiencyTool::SystInfo::getIndex
bool getIndex(unsigned int flavourID, unsigned int &index) const
Definition: BTaggingEfficiencyTool.cxx:1429
BTaggingEfficiencyTool::m_initialised
bool m_initialised
flag to indicate tool is initialized correctly when set
Definition: BTaggingEfficiencyTool.h:388
BTaggingEfficiencyTool::getEfficiency
CP::CorrectionCode getEfficiency(const xAOD::Jet &jet, float &eff)
Computes the data efficiency for the given jet.
Definition: BTaggingEfficiencyTool.cxx:841
BTaggingEfficiencyTool::m_EffNames_flex
std::string m_EffNames_flex
Definition: BTaggingEfficiencyTool.h:344
BTaggingEfficiencyTool::listSystematics
const std::map< CP::SystematicVariation, std::vector< std::string > > listSystematics() const
Definition: BTaggingEfficiencyTool.cxx:1155
BTaggingEfficiencyTool::m_systematics
CP::SystematicSet m_systematics
Definition: BTaggingEfficiencyTool.h:396
CP::SystematicVariation
Definition: SystematicVariation.h:47
CalibrationDataVariables.h
x
#define x
BTaggingEfficiencyTool::m_extFlavourLabel
bool m_extFlavourLabel
if true, use an 'extended' labelling (allowing for multiple HF hadrons -or perhaps partons- in the je...
Definition: BTaggingEfficiencyTool.h:363
ISystematicsTool.h
BTaggingEfficiencyTool::addSystematics
bool addSystematics(const std::vector< std::string > &systematicNames, unsigned int flavourID, Analysis::Uncertainty uncType)
add entries to the systematics registry
Definition: BTaggingEfficiencyTool.cxx:1443
BTaggingEfficiencyTool::initialize
StatusCode initialize()
Initialise the tool.
Definition: BTaggingEfficiencyTool.cxx:213
BTaggingEfficiencyTool::m_isContinuous
bool m_isContinuous
Definition: BTaggingEfficiencyTool.h:398
BTaggingEfficiencyTool::getTaggerName
std::string getTaggerName() const
Retrieve the name of the tagger (as specified in the calibration file)
Definition: BTaggingEfficiencyTool.h:185
BTaggingEfficiencyTool::m_EffNames
std::map< std::string, std::string > m_EffNames
semicolon-separated lists of MC efficiency parametrisation names
Definition: BTaggingEfficiencyTool.h:333
BTaggingEfficiencyTool::m_EffIndices
std::map< unsigned int, unsigned int > m_EffIndices
actual information identifying efficiency calibration objects
Definition: BTaggingEfficiencyTool.h:410
BTaggingEfficiencyTool::SystInfo::indexMap
std::map< unsigned int, unsigned int > indexMap
Definition: BTaggingEfficiencyTool.h:225
BTaggingEfficiencyTool::m_useDevFile
bool m_useDevFile
if true, attempt to retrieve the data/MC efficiency scale factor calibration files from the @PathReso...
Definition: BTaggingEfficiencyTool.h:359
IBTaggingEfficiencyTool.h
CalibrationDataInterfaceROOT.h
jet
Definition: JetCalibTools_PlotJESFactors.cxx:23
IBTaggingSelectionTool.h
BTaggingEfficiencyTool::getMCEfficiency
CP::CorrectionCode getMCEfficiency(const xAOD::Jet &jet, float &eff)
Computes the MC efficiency for the given jet.
Definition: BTaggingEfficiencyTool.cxx:1069
BTaggingEfficiencyTool::m_applySyst
bool m_applySyst
Definition: BTaggingEfficiencyTool.h:391
BTaggingEfficiencyTool::getFlavourID
unsigned int getFlavourID(const std::string &label, bool conventional=true) const
convert string flavour to its integer index equivalent
Definition: BTaggingEfficiencyTool.h:271
Generate_dsid_ranseed.dsid
dsid
Definition: Generate_dsid_ranseed.py:6
Analysis::Uncertainty
Uncertainty
specification of type information requested by the user
Definition: CalibrationDataInterfaceROOT.h:70
OnnxUtil.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
BTaggingEfficiencyTool::m_jetAuthor
std::string m_jetAuthor
jet collection name
Definition: BTaggingEfficiencyTool.h:353
BTaggingEfficiencyTool::m_SFIndices
std::map< unsigned int, unsigned int > m_SFIndices
actual information identifying scale factor calibration objects
Definition: BTaggingEfficiencyTool.h:408
Analysis::SFEigen
@ SFEigen
Definition: CalibrationDataInterfaceROOT.h:70
BTaggingEfficiencyTool::setMapIndex
bool setMapIndex(const std::string &flavour, unsigned int index)
Specify the "map index" to be used for the given jet flavour (at initialisation time it will be set t...
Definition: BTaggingEfficiencyTool.cxx:1342
BTaggingEfficiencyTool::listScaleFactorSystematics
std::map< std::string, std::vector< std::string > > listScaleFactorSystematics(bool named=false) const
This merely passes on the request to the underlying CDI object (listSystematics() cannot be used here...
Definition: BTaggingEfficiencyTool.cxx:1192
BTaggingEfficiencyTool::m_using_conventional_labels
bool m_using_conventional_labels
Definition: BTaggingEfficiencyTool.h:341
BTaggingEfficiencyTool::m_oldConeFlavourLabel
bool m_oldConeFlavourLabel
when using cone-based labelling (see above), if true, use the "traditional" (parton-based) labelling ...
Definition: BTaggingEfficiencyTool.h:365
BTaggingEfficiencyTool::m_flex_label_integers
std::vector< unsigned int > m_flex_label_integers
Definition: BTaggingEfficiencyTool.h:382
BTaggingEfficiencyTool::recommendedSystematics
CP::SystematicSet recommendedSystematics() const
Return a list of "recommended" systematic variations supported by this tool.
Definition: BTaggingEfficiencyTool.cxx:1150
BTaggingEfficiencyTool::getOperatingPoint
std::string getOperatingPoint() const
Retrieve the operating point (as specified in the calibration file)
Definition: BTaggingEfficiencyTool.h:188
AnaToolHandle.h
BTaggingEfficiencyTool::SystInfo::SystInfo
SystInfo()
Definition: BTaggingEfficiencyTool.h:224
CxxUtils::set
constexpr std::enable_if_t< is_bitmask_v< E >, E & > set(E &lhs, E rhs)
Convenience function to set bits in a class enum bitmask.
Definition: bitmask.h:224
BTaggingEfficiencyTool::fillVariables
bool fillVariables(const xAOD::Jet &jet, Analysis::CalibrationDataVariables &x) const
Fill the Analysis::CalibrationDataVariables struct with relevant information pertaining to the jet co...
Definition: BTaggingEfficiencyTool.cxx:1301
BTaggingEfficiencyTool::~BTaggingEfficiencyTool
virtual ~BTaggingEfficiencyTool()
Create a constructor for standalone usage.
Definition: BTaggingEfficiencyTool.cxx:209
IBTaggingEfficiencyTool
Definition: IBTaggingEfficiencyTool.h:23
BTaggingEfficiencyTool::SystInfo::uncType
Analysis::Uncertainty uncType
Definition: BTaggingEfficiencyTool.h:226
BTaggingEfficiencyTool::applySystematicVariation
StatusCode applySystematicVariation(const CP::SystematicSet &set)
Set the tool to return "shifted" values.
Definition: BTaggingEfficiencyTool.cxx:1255
BTaggingEfficiencyTool::isAffectedBySystematic
bool isAffectedBySystematic(const CP::SystematicVariation &systematic) const
Returns whether or not the given systematic variation is supported by this tool.
Definition: BTaggingEfficiencyTool.cxx:1138
Analysis
The namespace of all packages in PhysicsAnalysis/JetTagging.
Definition: BTaggingCnvAlg.h:20
python.selection.number
number
Definition: selection.py:20
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
BTaggingEfficiencyTool::m_systematicsInfo
std::map< CP::SystematicVariation, SystInfo > m_systematicsInfo
Definition: BTaggingEfficiencyTool.h:394
BTaggingEfficiencyTool::m_uncertaintySuffixes
std::map< std::string, std::string > m_uncertaintySuffixes
optional (per-flavour) suffix that can be used to decorrelate uncertainties (between flavours,...
Definition: BTaggingEfficiencyTool.h:339
BTaggingEfficiencyTool::m_minPt
float m_minPt
minimum jet pT
Definition: BTaggingEfficiencyTool.h:355
BTaggingEfficiencyTool::m_pathToONNX
std::string m_pathToONNX
if this string is empty, the onnx tool won't be created
Definition: BTaggingEfficiencyTool.h:375
BTaggingEfficiencyTool::m_selectionTool
asg::AnaToolHandle< IBTaggingSelectionTool > m_selectionTool
we need access to a BTaggingSelectionTool, at least for DL1 weight computation
Definition: BTaggingEfficiencyTool.h:320
BTaggingEfficiencyTool::getInefficiencyScaleFactor
CP::CorrectionCode getInefficiencyScaleFactor(const xAOD::Jet &jet, float &sf)
Computes the data/MC inefficiency scale factor for the given jet.
Definition: BTaggingEfficiencyTool.cxx:993
BTaggingEfficiencyTool::m_SFFile
std::string m_SFFile
name of the data/MC efficiency scale factor calibration file (may be changed by the PathResolver)
Definition: BTaggingEfficiencyTool.h:323
BTaggingEfficiencyTool::m_onnxUtil
std::unique_ptr< OnnxUtil > m_onnxUtil
pointer to the onnx tool
Definition: BTaggingEfficiencyTool.h:314
python.PyAthena.v
v
Definition: PyAthena.py:157
xAOD::Jet_v1
Class describing a jet.
Definition: Jet_v1.h:57
BTaggingEfficiencyTool::BTaggingEfficiencyTool
BTaggingEfficiencyTool(const std::string &name)
Create a proper constructor for Athena.
Definition: BTaggingEfficiencyTool.cxx:150
BTaggingEfficiencyTool::getInefficiency
CP::CorrectionCode getInefficiency(const xAOD::Jet &jet, float &eff)
Computes the data inefficiency for the given jet.
Definition: BTaggingEfficiencyTool.cxx:917
BTaggingEfficiencyTool::m_applyThisSyst
SystInfo m_applyThisSyst
Definition: BTaggingEfficiencyTool.h:392
mapkey::sf
@ sf
Definition: TElectronEfficiencyCorrectionTool.cxx:38
BTaggingEfficiencyTool::m_useRecommendedEVExclusions
bool m_useRecommendedEVExclusions
if true, extract pre-set lists of uncertainties to be recommended from the EV decomposition (in addit...
Definition: BTaggingEfficiencyTool.h:368
BTaggingEfficiencyTool::SystInfo::isUp
bool isUp
Definition: BTaggingEfficiencyTool.h:228
BTaggingEfficiencyTool::getScaleFactor
CP::CorrectionCode getScaleFactor(const xAOD::Jet &jet, float &sf)
Computes the data/MC efficiency scale factor for the given jet.
Definition: BTaggingEfficiencyTool.cxx:753
ASG_TOOL_CLASS3
#define ASG_TOOL_CLASS3(CLASSNAME, INT1, INT2, INT3)
Definition: AsgToolMacros.h:85
Analysis::CalibrationDataVariables
Definition: CalibrationDataVariables.h:42
CP::CorrectionCode
Return value from object correction CP tools.
Definition: CorrectionCode.h:31
CP::IReentrantSystematicsTool
interface for all CP tools supporting systematic variations within a reentrant algorithm
Definition: IReentrantSystematicsTool.h:58
BTaggingEfficiencyTool::m_EVReduction
std::map< std::string, std::string > m_EVReduction
specification of the eigenvector reduction strategy (if eigenvectors are used)
Definition: BTaggingEfficiencyTool.h:331
BTaggingEfficiencyTool::m_CDI
std::shared_ptr< Analysis::CalibrationDataInterfaceROOT > m_CDI
pointer to the object doing the actual work
Definition: BTaggingEfficiencyTool.h:312
BTaggingEfficiencyTool::m_excludeFlvFromEV_flex
std::string m_excludeFlvFromEV_flex
Definition: BTaggingEfficiencyTool.h:346
dqt_zlumi_alleff_HIST.eff
int eff
Definition: dqt_zlumi_alleff_HIST.py:113
BTaggingEfficiencyTool::m_systStrategy
std::string m_systStrategy
systematics model to be used (current choices are "SFEigen", "SFEigenRefined", and "Envelope") // <--...
Definition: BTaggingEfficiencyTool.h:357
BTaggingEfficiencyTool::m_OP
std::string m_OP
operating point
Definition: BTaggingEfficiencyTool.h:351
BTaggingEfficiencyTool::m_flex_labels
std::vector< std::string > m_flex_labels
Definition: BTaggingEfficiencyTool.h:381
BTaggingEfficiencyTool::m_SFNames
std::map< std::string, std::string > m_SFNames
names of the data/MC scale factor calibrations
Definition: BTaggingEfficiencyTool.h:329
BTaggingEfficiencyTool::affectingSystematics
CP::SystematicSet affectingSystematics() const
Return a list of all systematic variations supported by this tool.
Definition: BTaggingEfficiencyTool.cxx:1145
AsgTool.h
BTaggingEfficiencyTool::m_EVReduction_flex
std::string m_EVReduction_flex
Definition: BTaggingEfficiencyTool.h:343
BTaggingEfficiencyTool::m_excludeFlvFromEV
std::map< std::string, std::string > m_excludeFlvFromEV
semicolon-separated list of uncertainties to be excluded from the eigenvector variation procedure for...
Definition: BTaggingEfficiencyTool.h:337
BTaggingEfficiencyTool::m_useFlex
bool m_useFlex
Definition: BTaggingEfficiencyTool.h:379
BTaggingEfficiencyTool::applySystematics
bool applySystematics() const
Specify whether any systematic variation is being used at present.
Definition: BTaggingEfficiencyTool.h:197
BTaggingEfficiencyTool::m_doXbbTagging
bool m_doXbbTagging
Definition: BTaggingEfficiencyTool.h:380
BTaggingEfficiencyTool::SystInfo
Definition: BTaggingEfficiencyTool.h:223
BTaggingEfficiencyTool::m_taggerName
std::string m_taggerName
tagger name
Definition: BTaggingEfficiencyTool.h:349
BTaggingEfficiencyTool::m_SFFileFull
std::string m_SFFileFull
Definition: BTaggingEfficiencyTool.h:324
LheEventFiller_Common.ef
ef
Definition: SFGen_i/share/common/LheEventFiller_Common.py:7
BTaggingEfficiencyTool::m_coneFlavourLabel
bool m_coneFlavourLabel
if true, use cone-based labelling (as opposed to ghost association)
Definition: BTaggingEfficiencyTool.h:361
BTaggingEfficiencyTool::m_EffConfigFile
std::string m_EffConfigFile
Definition: BTaggingEfficiencyTool.h:327