5#ifndef TAURECTOOLS_TAUDECAYMODENNCLASSIFIER_H
6#define TAURECTOOLS_TAUDECAYMODENNCLASSIFIER_H
17#include "lwtnn/LightweightGraph.hh"
18#include "lwtnn/parse_json.hh"
19#include "lwtnn/Exceptions.hh"
47 Gaudi::Property<std::string>
m_outputName{
this,
"OutputName",
"NNDecayMode"};
48 Gaudi::Property<std::string>
m_probPrefix{
this,
"ProbPrefix",
"NNDecayModeProb_"};
67 std::map<std::string, std::map<std::string, std::vector<double>>> &inputSeqMap)
const;
85 static const std::array<std::string, nClasses>
sModeNames;
86 static float deltaPhi(
const TLorentzVector &p4,
const TLorentzVector &p4_tau);
87 static float deltaEta(
const TLorentzVector &p4,
const TLorentzVector &p4_tau);
88 static float deltaPhiECal(
const TLorentzVector &p4,
const std::pair<float, bool> &tau_phiTrkECal);
89 static float deltaEtaECal(
const TLorentzVector &p4,
const std::pair<float, bool> &tau_etaTrkECal);
109 static float Log10Robust(
const float val,
const float min_val = 0.);
119 template <
typename T>
120 static void sortAndKeep(std::vector<T> &
vec,
const std::size_t n_obj);
129 template <
typename T>
130 static void initMapKeys(std::map<std::string, T> &empty_map,
const std::set<std::string> &keys);
std::vector< size_t > vec
virtual StatusCode execute(xAOD::TauJet &xTau) const override
Execute - called for each tau candidate.
Gaudi::Property< bool > m_decorateProb
virtual StatusCode getInputs(const xAOD::TauJet &xTau, std::map< std::string, std::map< std::string, std::vector< double > > > &inputSeqMap) const
retrieve the input variables from a TauJet
TauDecayModeNNClassifier(const std::string &name="TauDecayModeNNClassifier")
Gaudi::Property< bool > m_ensureTrackConsistency
Gaudi::Property< std::size_t > m_maxTauTracks
Gaudi::Property< std::string > m_outputName
properties of the tool
Gaudi::Property< std::string > m_weightFile
Gaudi::Property< std::size_t > m_maxConvTracks
Gaudi::Property< float > m_neutralPFOPtCut
virtual StatusCode initialize() override
Tool initializer.
std::unique_ptr< const lwt::LightweightGraph > m_lwtGraph
lwtnn graph
virtual ~TauDecayModeNNClassifier()
Gaudi::Property< std::string > m_probPrefix
Gaudi::Property< std::size_t > m_maxShotPFOs
Gaudi::Property< std::size_t > m_maxNeutralPFOs
PFO_v1 PFO
Definition of the current "pfo version".
TauJet_v3 TauJet
Definition of the current "tau version".