17 return StatusCode::SUCCESS;
23 double dMinDeltaR = 999.;
24 for (
const xAOD::Jet* xJet : *vPFlowJets){
25 double dDeltaR = xTau->
p4().DeltaR(xJet->p4());
26 if (dDeltaR < dMinDeltaR){
41 int prongness = xTau->nTracksCharged();
45 return StatusCode::SUCCESS;
48StatusCode
TauHFVetoTool::inference(
const ToolHandle<AthOnnx::IOnnxRuntimeInferenceTool> onnxTool,
const std::vector<float>& inputValues,
float& output)
const {
49 auto inputData = inputValues;
50 std::vector<float> outputScores;
51 std::vector<Ort::Value> inputTensors;
52 std::vector<Ort::Value> outputTensors;
54 ATH_CHECK(onnxTool->addInput(inputTensors, inputData, 0, 1));
55 ATH_CHECK(onnxTool->addOutput(outputTensors, outputScores, 0, 1));
56 ATH_CHECK(onnxTool->inference(inputTensors, outputTensors));
58 output = outputScores[1];
60 return StatusCode::SUCCESS;
64 std::vector<float> inputValues;
68 if (tracks.size() > 1)
70 return a->pt() > b->pt();
75 btag->
pb(
"DL1dv01", dl1dv01_pb);
77 btag->
pc(
"DL1dv01", dl1dv01_pc);
79 float dl1dv01_pb_f =
static_cast<float>(dl1dv01_pb);
80 float dl1dv01_pc_f =
static_cast<float>(dl1dv01_pc);
81 float AbsDEtaLeadTrk = tracks.size() > 0 ? std::abs(tracks[0]->
eta() - xTau->
eta()) : -999;
82 float AbsDPhiLeadTrk = tracks.size() > 0 ? std::abs(tracks[0]->p4().DeltaPhi(xTau->
p4())) : -999;
84 SG::ConstAccessor <float> acc_jetRNNtrans(
"RNNJetScoreSigTrans");
85 SG::ConstAccessor <float> acc_eleRNNtrans(
"RNNEleScoreSigTrans_v1");
86 SG::ConstAccessor <float> acc_etOverPtLeadTrk(
"etOverPtLeadTrk");
87 SG::ConstAccessor <float> acc_dRmax(
"dRmax");
88 SG::ConstAccessor <float> acc_auxJetWidth(
"Width");
89 SG::ConstAccessor <std::vector<ElementLink<DataVector<xAOD::IParticle> > >> acc_GhostTrack(
"GhostTrack");
94 acc_jetRNNtrans(*xTau),
95 acc_eleRNNtrans(*xTau),
98 acc_etOverPtLeadTrk(*xTau),
101 static_cast<float>(tracks[0]->track()->z0()),
104 acc_auxJetWidth(*xAuxJet),
105 static_cast<float>(xTau->
p4().DeltaR(xAuxJet->
p4())),
106 static_cast<float>(xTau->
pt() / xAuxJet->
pt()),
107 static_cast<float>(acc_GhostTrack(*xAuxJet).size())
112 acc_jetRNNtrans(*xTau),
113 acc_eleRNNtrans(*xTau),
116 acc_etOverPtLeadTrk(*xTau),
121 static_cast<float>(tracks[0]->track()->z0()),
122 static_cast<float>(tracks[1]->track()->z0()),
123 static_cast<float>(tracks[2]->track()->z0()),
126 acc_auxJetWidth(*xAuxJet),
127 static_cast<float>(xTau->
p4().DeltaR(xAuxJet->
p4())),
128 static_cast<float>(xTau->
pt() / xAuxJet->
pt()),
129 static_cast<float>(acc_GhostTrack(*xAuxJet).size())
136 if (prongness == 1) {
139 else if (prongness == 3) {
144 return StatusCode::SUCCESS;
149 if (prongness == 1) {
152 else if (prongness == 3) {
157 return StatusCode::SUCCESS;
Scalar eta() const
pseudorapidity method
#define ATH_CHECK
Evaluate an expression and check for errors.
Helper class to provide type-safe access to aux data.
bool pc(const std::string &taggername, double &value) const
bool pb(const std::string &taggername, double &value) const
virtual FourMom_t p4() const
The full 4-momentum of the particle.
virtual double pt() const
The transverse momentum ( ) of the particle.
virtual FourMom_t p4() const
The full 4-momentum of the particle.
virtual double pt() const
The transverse momentum ( ) of the particle.
size_t nTracksCharged() const
virtual double eta() const
The pseudorapidity ( ) of the particle.
std::vector< const TauTrack * > tracks(TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged) const
Get the v<const pointer> to a given tauTrack collection associated with this tau.
void sort(typename DataModel_detail::iterator< DVL > beg, typename DataModel_detail::iterator< DVL > end)
Specialization of sort for DataVector/List.
const BTagging * getBTagging(const SG::AuxElement &part)
Access the default xAOD::BTagging object associated to an object.
double d0significance(const xAOD::TrackParticle *tp, double d0_uncert_beam_spot_2)
Jet_v1 Jet
Definition of the current "jet version".
BTagging_v1 BTagging
Definition of the current "BTagging version".
TauTrack_v1 TauTrack
Definition of the current version.
TauJet_v3 TauJet
Definition of the current "tau version".
JetContainer_v1 JetContainer
Definition of the current "jet container version".
TauJetContainer_v3 TauJetContainer
Definition of the current "taujet container version".