![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
36 m_runModus(
"analysis") {
71 return StatusCode::SUCCESS;
76 const std::map<std::string, double> &
inputs,
77 const std::string& assigned_jet_author)
const
90 ATH_MSG_WARNING(
"#BTAG# .... algorithm was disabled due to mis-configuration problems: no output will be written ... PLEASE WATCH OUT" );
97 std::string
author(assigned_jet_author);
107 std::string
alias = readCdo->getChannelAlias(
author);
124 if ( inputVars.size()!=vars.size() ) {
125 ATH_MSG_WARNING(
"#BTAG# Number of expected variables for MVA: "<< vars.size() <<
" does not match the number of variables found in the calibration file: " << inputVars.size() <<
" ... the algorithm will be 'disabled' "<<
alias<<
" "<<
author);
133 double mv2 = -10.;
double mv2m_pb=-10., mv2m_pu=-10., mv2m_pc=-10.;
163 const double dPhi =
jet.DeltaPhi(trk);
164 const float d0_sign =
sin(
dPhi) * d0sig;
166 if (std::fabs(d0_sign) < 1
e-4)
169 const float res = d0_sign / std::fabs(d0_sign);
175 const float zs = (jetEta -
trackEta)*trackZ0;
176 return (zs>=0. ? 1. : -1.);
182 const std::vector<std::string>& inputVars)
const
184 std::vector<float>
vals;
185 vals.reserve (inputVars.size());
187 for (
const std::string&
varName : inputVars) {
188 std::string inputName =
varName;
191 auto it2 =
inputs.find (inputName);
192 if (it2 ==
inputs.end()) {
195 double val = it2->second;
196 if (std::isnan (
val)) {
std::string m_taggerNameBase
virtual StatusCode initialize() override
double GetClassResponse(const std::vector< float > &vars, const MVAUtils::BDT *bdt) const
std::vector< float > CreateVariables(const std::map< std::string, double > &inputs, const std::vector< std::string > &inputVars) const
std::vector< float > GetMulticlassResponse(const std::vector< float > &vars, const MVAUtils::BDT *bdt) const
std::map< std::string, std::string > m_MVTM_name_backtrans
Map from names in calibration file to names in tool input.
Simplified Boosted Regression Tree, support TMVA, lgbm, and xgboost.
std::atomic< int > m_warnCounter
virtual void assignProbability(xAOD::BTagging *BTag, const std::map< std::string, double > &inputs, const std::string &jetauthor) const override
float d0sgn_wrtJet(const TLorentzVector &jet, const TLorentzVector &trk, float d0sig) const
std::map< std::string, double > m_defaultvals
string varName
end cluster ToT and charge
::StatusCode StatusCode
StatusCode definition for legacy code.
bool dPhi(const xAOD::TauJet &tau, const xAOD::TauTrack &track, double &out)
std::string m_xAODBaseName
std::pair< std::vector< unsigned int >, bool > res
float z0sgn_wrtJet(float trackTheta, float trackZ0, float jetEta) const
MV2Tag(const std::string &name, const std::string &n, const IInterface *)
The namespace of all packages in PhysicsAnalysis/JetTagging.
SG::ReadCondHandleKey< JetTagCalibCondData > m_readKey
Key of calibration data:
std::atomic< bool > m_disableAlgo
std::string m_MV2CalibAlias
Wrapper to avoid constant divisions when using units.
std::string m_runModus
This switch is needed to indicate what to do.
#define ATH_MSG_WARNING(x)
@ BTag
The object is a b-tagging object.
bool m_forceMV2CalibrationAlias
std::map< std::string, std::string > m_MVTM_name_translations
Map from names in tool input to names in calibration file.
bool trackEta(const xAOD::TauJet &, const xAOD::TauTrack &track, double &out)