ATLAS Offline Software
BDTHelper.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 TAURECTOOLS_BDTHELPER_H
6 #define TAURECTOOLS_BDTHELPER_H
7 
10 #include "xAODTau/TauJet.h"
11 #include "MVAUtils/BDT.h"
12 
13 class TString;
14 
15 namespace tauRecTools {
16  class BDTHelper : public asg::AsgMessaging {
17  public:
18  BDTHelper();
19  ~BDTHelper();
20 
21  StatusCode initialize(const TString& weightFileName);
22 
23  float getGradBoostMVA(const std::map<TString, float>& availableVariables) const;
24 
25  float getResponse(const std::map<TString, float*>& availableVariables) const;
26 
27  float getClassification(const std::map<TString, float*>& availableVariables) const;
28 
29  float getGradBoostMVA(const xAOD::TauJet& tau) const;
30 
31  MVAUtils::BDT* getBDT() const { return m_BDT.get(); }
32 
33  private:
34  std::vector<TString> parseString(const TString& str, const TString& delim = ",") const;
35 
36  std::vector<float> getInputVariables(const std::map<TString, float>& availableVariables) const ;
37 
38  std::vector<float> getInputVariables(const std::map<TString, float*>& availableVariables) const;
39 
40  std::vector<float> getInputVariables(const xAOD::TauJet& tau) const ;
41 
42  std::unique_ptr<MVAUtils::BDT> m_BDT;
43  std::vector<TString> m_inputVariableNames;
44  };
45 }
46 
47 #endif // TAURECTOOLS_BDTHELPER_H
tauRecTools::BDTHelper::m_BDT
std::unique_ptr< MVAUtils::BDT > m_BDT
Definition: BDTHelper.h:42
MVAUtils::BDT
Simplified Boosted Regression Tree, support TMVA, lgbm, and xgboost.
Definition: BDT.h:34
tauRecTools::BDTHelper::getResponse
float getResponse(const std::map< TString, float * > &availableVariables) const
Definition: BDTHelper.cxx:149
tauRecTools::BDTHelper::getBDT
MVAUtils::BDT * getBDT() const
Definition: BDTHelper.h:31
AsgMessaging.h
tauRecTools::BDTHelper::getClassification
float getClassification(const std::map< TString, float * > &availableVariables) const
Definition: BDTHelper.cxx:162
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
tauRecTools::BDTHelper::~BDTHelper
~BDTHelper()
Definition: BDTHelper.cxx:21
BDT.h
StatusCode.h
tauRecTools::BDTHelper
Definition: BDTHelper.h:16
asg::AsgMessaging
Class mimicking the AthMessaging class from the offline software.
Definition: AsgMessaging.h:40
tauRecTools::BDTHelper::getGradBoostMVA
float getGradBoostMVA(const std::map< TString, float > &availableVariables) const
Definition: BDTHelper.cxx:136
TauJet.h
tauRecTools::BDTHelper::BDTHelper
BDTHelper()
Definition: BDTHelper.cxx:14
tauRecTools::BDTHelper::parseString
std::vector< TString > parseString(const TString &str, const TString &delim=",") const
Definition: BDTHelper.cxx:58
tauRecTools::BDTHelper::initialize
StatusCode initialize(const TString &weightFileName)
Definition: BDTHelper.cxx:26
str
Definition: BTagTrackIpAccessor.cxx:11
tauRecTools
Implementation of a TrackClassifier based on an RNN.
Definition: BDTHelper.cxx:12
tauRecTools::BDTHelper::getInputVariables
std::vector< float > getInputVariables(const std::map< TString, float > &availableVariables) const
Definition: BDTHelper.cxx:82
tauRecTools::BDTHelper::m_inputVariableNames
std::vector< TString > m_inputVariableNames
Definition: BDTHelper.h:43