ATLAS Offline Software
Loading...
Searching...
No Matches
TauJetAuxContainer_v3.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef XAODTAU_VERSIONS_TAUJETAUXCONTAINER_V3_H
8#define XAODTAU_VERSIONS_TAUJETAUXCONTAINER_V3_H
9
10// System include(s):
11#include <vector>
12extern "C" {
13# include <stdint.h>
14}
15
16//local includes
17#include "xAODTau/TauDefs.h"
18
19// EDM include(s):
26
27namespace xAOD {
28
29
40
41 public:
44
45 private:
46 std::vector< float > pt;
47 std::vector< float > eta;
48 std::vector< float > phi;
49 std::vector< float > m;
50
51 std::vector< float > ptJetSeed;
52 std::vector< float > etaJetSeed;
53 std::vector< float > phiJetSeed;
54 std::vector< float > mJetSeed;
55
56 std::vector< float > ptDetectorAxis;
57 std::vector< float > etaDetectorAxis;
58 std::vector< float > phiDetectorAxis;
59 std::vector< float > mDetectorAxis;
60
61 std::vector< float > ptIntermediateAxis;
62 std::vector< float > etaIntermediateAxis;
63 std::vector< float > phiIntermediateAxis;
64 std::vector< float > mIntermediateAxis;
65
66 std::vector< float > ptTauEnergyScale;
67 std::vector< float > etaTauEnergyScale; // same as IntermediateAxis
68 std::vector< float > phiTauEnergyScale; // as IntermediateAxis
69 std::vector< float > mTauEnergyScale; // is 0
70
71 std::vector< float > ptTauEtaCalib;
72 std::vector< float > etaTauEtaCalib;
73 std::vector< float > phiTauEtaCalib; // same as IntermediateAxis
74 std::vector< float > mTauEtaCalib; // is 0
75
76 std::vector< float > ptPanTauCellBasedProto;
77 std::vector< float > etaPanTauCellBasedProto;
78 std::vector< float > phiPanTauCellBasedProto;
79 std::vector< float > mPanTauCellBasedProto;
80
81 std::vector< float > ptPanTauCellBased;
82 std::vector< float > etaPanTauCellBased;
83 std::vector< float > phiPanTauCellBased;
84 std::vector< float > mPanTauCellBased;
85
86 std::vector< float > ptTrigCaloOnly;
87 std::vector< float > etaTrigCaloOnly;
88 std::vector< float > phiTrigCaloOnly;
89 std::vector< float > mTrigCaloOnly;
90
91 std::vector< float > ptFinalCalib;
92 std::vector< float > etaFinalCalib;
93 std::vector< float > phiFinalCalib;
94 std::vector< float > mFinalCalib;
95
96
97 std::vector< unsigned int > ROIWord;
98 std::vector< float > charge;
99
100 // std::vector< uint32_t > vetoFlags;//r21 cleanup
101 std::vector< uint32_t > isTauFlags;
102
103 // std::vector< float > Likelihood;
104 // std::vector< float > SafeLikelihood;
105 std::vector< float > BDTJetScore;
106 std::vector< float > BDTEleScore;
107 std::vector< float > EleMatchLikelihoodScore;//from TauEleOLRDecorator
108
109 //additional discriminant output
110 std::vector< float > BDTJetScoreSigTrans;
111
112 typedef std::vector< ElementLink< TauTrackContainer > > TauTrackLink_t;
113 std::vector< TauTrackLink_t > tauTrackLinks;
114
115 //simply nTracks(TauJetParameters::TauTrackFlag::classifiedCharged)
116 //after the first pass of TauTrackFinder
117 std::vector< int > nChargedTracks;
118 std::vector< int > nIsolatedTracks;
119 std::vector< int > nAllTracks;
120 std::vector< int > nLargeRadiusTracks;
121
122 typedef std::vector< ElementLink< IParticleContainer > > IParticleLink_t;
123 std::vector< IParticleLink_t > clusterLinks;//actually xAOD::CaloClusters
124 std::vector< IParticleLink_t > pi0Links;//acutally xAOD::Particles
125
126
127 std::vector< int > trackFilterProngs;
128 std::vector< int > trackFilterQuality;
129 std::vector< float > pi0ConeDR;
130
132 std::vector< JetLink_t > jetLink;
133
135 std::vector< VertexLink_t > vertexLink;
136 std::vector< VertexLink_t > secondaryVertexLink;
137
138
139 // //pfo links for substructure
140 typedef std::vector< ElementLink< PFOContainer > > PFOLink_t;
141
142 std::vector< PFOLink_t > chargedPFOLinks;// (Links to default charged PFOs)
143 std::vector< PFOLink_t > neutralPFOLinks;// (Links to default all neutral PFOs)
144 std::vector< PFOLink_t > pi0PFOLinks;// (Links to default pi0 neutral PFOs)
145 std::vector< PFOLink_t > protoChargedPFOLinks;// (Links to cell-based charged PFOs)
146 std::vector< PFOLink_t > protoNeutralPFOLinks;// (Links to cell-based all neutral PFOs)
147 std::vector< PFOLink_t > protoPi0PFOLinks;// (Links to cell-based pi0 neutral PFOs)
148 std::vector< PFOLink_t > shotPFOLinks;// (Links to shots)
149 std::vector< PFOLink_t > hadronicPFOLinks;// (Links to hadronic pfos)
150
151 //set of details variables
152 std::vector< float > ipZ0SinThetaSigLeadTrk;
153 std::vector< float > etOverPtLeadTrk;
154 std::vector< float > leadTrkPt;
155 std::vector< float > ipSigLeadTrk;
156 std::vector< float > massTrkSys;
157 std::vector< float > trkWidth2;
158 std::vector< float > trFlightPathSig;
159 //for topocluster ID variables
160 std::vector< int > numCells;
162 std::vector< int > numTopoClusters;
164 std::vector< float > numEffTopoClusters;
166 std::vector< float > topoInvMass;
168 std::vector< float > effTopoInvMass;
170 std::vector< float > topoMeanDeltaR;
172 std::vector< float > effTopoMeanDeltaR;
174 std::vector< float > EMRadius;
176 std::vector< float > hadRadius;
178 std::vector< float > etEMAtEMScale;
180 std::vector< float > etHadAtEMScale;
182 std::vector< float > isolFrac;
184 std::vector< float > centFrac;
186 std::vector< float > stripWidth2;
188 std::vector< int > nStrip;
190 std::vector< float > trkAvgDist;
192 std::vector< float > trkRmsDist;
194 std::vector< float > lead2ClusterEOverAllClusterE;
196 std::vector< float > lead3ClusterEOverAllClusterE;
198 std::vector< float > caloIso;
200 std::vector< float > caloIsoCorrected;
202 std::vector< float > dRmax;
203
205 std::vector< float > secMaxStripEt;
206 std::vector< float > sumEMCellEtOverLeadTrkPt;
207 std::vector< float > hadLeakEt;
208
209 std::vector< float > TESOffset;
210 std::vector< float > TESCalibConstant;
211
213 //
214 // Cell-based energies in rings getters/setters
215 //
218 std::vector< float > cellBasedEnergyRing1;
220 std::vector< float > cellBasedEnergyRing2;
222 std::vector< float > cellBasedEnergyRing3;
224 std::vector< float > cellBasedEnergyRing4;
226 std::vector< float > cellBasedEnergyRing5;
228 std::vector< float > cellBasedEnergyRing6;
230 std::vector< float > cellBasedEnergyRing7;
232 std::vector< float > TRT_NHT_OVER_NLT;
234 std::vector< float > TauJetVtxFraction;
235
236
237 //generic substructure details
238 std::vector< int > nCharged; //used in PanTau/PanTauAlgs/src/Tool_DetailsArranger.cxx
239
240 std::vector< float > mEflowApprox;
241 std::vector< float > ptRatioEflowApprox;
242
243 std::vector< float > innerTrkAvgDist;
244
245 std::vector< float > SumPtTrkFrac;
246
248 std::vector< float > etOverPtLeadTrkCorrected;
249 std::vector< float > ipSigLeadTrkCorrected;
250 std::vector< float > trFlightPathSigCorrected;
251 std::vector< float > massTrkSysCorrected;
252 std::vector< float > dRmaxCorrected;
253 std::vector< float > ChPiEMEOverCaloEMECorrected;
254 std::vector< float > EMPOverTrkSysPCorrected;
255 std::vector< float > ptRatioEflowApproxCorrected;
256 std::vector< float > mEflowApproxCorrected;
257 std::vector< float > centFracCorrected;
258 std::vector< float > innerTrkAvgDistCorrected;
259 std::vector< float > SumPtTrkFracCorrected;
260
261
262
263 //trigger details
264 std::vector< float > PSSFraction;
265 std::vector< float > ChPiEMEOverCaloEME;
266 std::vector< float > EMPOverTrkSysP;
267
268 //panTau details
270 //Flag whether this seed has pantau info
271 std::vector< int > PanTau_isPanTauCandidate;
272 //decay modes (input mode [proto] and output mode )
273 std::vector< int > PanTau_DecayModeProto;
274 std::vector< int > PanTau_DecayMode;
275 //BDT output distributions
276 std::vector< float > PanTau_BDTValue_1p0n_vs_1p1n;
277 std::vector< float > PanTau_BDTValue_1p1n_vs_1pXn;
278 std::vector< float > PanTau_BDTValue_3p0n_vs_3pXn;
279 //Variables used in BDTs
283 std::vector< float > PanTau_BDTVar_Neutral_HLV_SumM;
290 std::vector< float > PanTau_BDTVar_Charged_HLV_SumM;
291
292 // RNN tau ID
293 std::vector< float > RNNJetScore;
294 std::vector< float > RNNJetScoreSigTrans;
295
296 // RNN tau eVeto
297 std::vector< float > RNNEleScore;
298 std::vector< float > RNNEleScoreSigTrans;
299
300 }; // class TauJetAuxContainer_v3
301
302} // namespace xAOD
303
304// Set up the StoreGate inheritance for the class:
305#include "xAODCore/BaseInfo.h"
307
308#endif // XAODTAU_VERSIONS_TAUJETAUXCONTAINER_V3_H
#define SG_BASE(D, B)
Declare that class D derives from class B.
Common base class for the auxiliary containers.
AuxContainerBase(bool allowDynamicVars=true)
Default constructor.
Temporary container used until we have I/O for AuxStoreInternal.
std::vector< float > lead2ClusterEOverAllClusterE
sum of 2 leading cluster energy over all cluster energy
std::vector< unsigned int > ROIWord
std::vector< float > centFrac
centrality fraction
std::vector< float > cellBasedEnergyRing1
Ring 1: 0.00 < R < 0.05.
std::vector< float > cellBasedEnergyRing6
Ring 6: 0.15 < R < 0.2.
std::vector< float > SumPtTrkFracCorrected
std::vector< float > ptTauEnergyScale
std::vector< PFOLink_t > hadronicPFOLinks
std::vector< float > etaTauEtaCalib
std::vector< IParticleLink_t > clusterLinks
std::vector< int > nStrip
number of strips
std::vector< float > ptPanTauCellBased
std::vector< JetLink_t > jetLink
std::vector< PFOLink_t > chargedPFOLinks
std::vector< float > dRmax
maximal dR of tracks associated to calo-seeded tau
std::vector< float > ipSigLeadTrkCorrected
std::vector< float > PanTau_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts
std::vector< float > TRT_NHT_OVER_NLT
TRT hits high threshold over low threshold.
std::vector< VertexLink_t > vertexLink
std::vector< float > phiTauEtaCalib
std::vector< float > etaPanTauCellBased
std::vector< PFOLink_t > shotPFOLinks
std::vector< float > trkAvgDist
the average track distance to calorimeter seed
std::vector< float > BDTJetScoreSigTrans
std::vector< float > RNNEleScoreSigTrans
std::vector< float > PanTau_BDTVar_Neutral_PID_BDTValues_BDTSort_1
std::vector< float > caloIsoCorrected
sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4 (pile-up corrected)
std::vector< TauTrackLink_t > tauTrackLinks
std::vector< float > ptTrigCaloOnly
std::vector< float > PanTau_BDTVar_Combined_DeltaR1stNeutralTo1stCharged
std::vector< PFOLink_t > neutralPFOLinks
std::vector< float > cellBasedEnergyRing2
Ring 2: 0.05 < R < 0.075.
std::vector< float > numEffTopoClusters
number of effective topocluster constituents of jet associated to tau candidate !!...
std::vector< float > etaTrigCaloOnly
std::vector< float > PanTau_BDTVar_Charged_JetMoment_EtDRxTotalEt
std::vector< float > TauJetVtxFraction
@Tau Jet Vertex Fraction
std::vector< float > PanTau_BDTVar_Charged_HLV_SumM
std::vector< float > PanTau_BDTVar_Neutral_Shots_NPhotonsInSeed
std::vector< float > ptDetectorAxis
std::vector< float > etaTauEnergyScale
std::vector< float > ipZ0SinThetaSigLeadTrk
std::vector< float > EleMatchLikelihoodScore
std::vector< float > innerTrkAvgDistCorrected
std::vector< float > EMPOverTrkSysPCorrected
std::vector< int > PanTau_BDTVar_Basic_NNeutralConsts
std::vector< VertexLink_t > secondaryVertexLink
std::vector< float > mPanTauCellBased
ElementLink< xAOD::VertexContainer > VertexLink_t
std::vector< float > lead3ClusterEOverAllClusterE
sum of 3 leading cluster energy over all cluster energy
std::vector< float > effTopoInvMass
invariant mass from effective topoclusters of jet associated to tau candidate
std::vector< int > PanTau_isPanTauCandidate
PanTau variables when using CellBased pfos.
std::vector< float > trFlightPathSigCorrected
std::vector< float > EMRadius
E_T radius.
std::vector< IParticleLink_t > pi0Links
std::vector< float > PanTau_BDTVar_Neutral_Ratio_EtOverEtAllConsts
std::vector< float > mPanTauCellBasedProto
std::vector< int > numTopoClusters
number of topocluster constituents of jet associated to tau candidate
std::vector< float > phiTauEnergyScale
std::vector< ElementLink< IParticleContainer > > IParticleLink_t
std::vector< float > ptPanTauCellBasedProto
std::vector< float > etaIntermediateAxis
std::vector< float > phiPanTauCellBased
std::vector< float > mTauEnergyScale
std::vector< float > cellBasedEnergyRing7
Ring 7: 0.2 < R < 0.4.
std::vector< ElementLink< PFOContainer > > PFOLink_t
std::vector< float > PanTau_BDTVar_Neutral_HLV_SumM
std::vector< float > ptRatioEflowApprox
std::vector< float > PanTau_BDTValue_1p1n_vs_1pXn
std::vector< float > secMaxStripEt
migrate only seedTrk_ variables which are used in reco and ID and without prefix
std::vector< float > RNNJetScoreSigTrans
TauJetAuxContainer_v3()
Default constructor.
std::vector< float > caloIso
sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4
std::vector< float > PanTau_BDTVar_Charged_StdDev_Et_WrtEtAllConsts
std::vector< float > cellBasedEnergyRing3
Ring 3: 0.075 < R < 0.10.
std::vector< float > phiPanTauCellBasedProto
std::vector< float > PanTau_BDTValue_1p0n_vs_1p1n
std::vector< float > topoMeanDeltaR
mean distance to leading topocluster for topoclusters of jet associated to tau candidate
std::vector< PFOLink_t > protoNeutralPFOLinks
std::vector< float > massTrkSysCorrected
std::vector< float > hadRadius
hadron calorimeter radius
std::vector< float > ptIntermediateAxis
std::vector< float > ChPiEMEOverCaloEMECorrected
std::vector< PFOLink_t > protoPi0PFOLinks
std::vector< float > etaPanTauCellBasedProto
std::vector< float > etaDetectorAxis
std::vector< float > mEflowApproxCorrected
std::vector< float > phiDetectorAxis
std::vector< float > PanTau_BDTValue_3p0n_vs_3pXn
std::vector< ElementLink< TauTrackContainer > > TauTrackLink_t
std::vector< float > stripWidth2
strip width ^2
std::vector< float > ptRatioEflowApproxCorrected
std::vector< float > topoInvMass
invariant mass from topoclusters of jet associated to tau candidate
std::vector< float > phiTrigCaloOnly
std::vector< float > etHadAtEMScale
Hadronic energy at EM scale.
std::vector< float > TESCalibConstant
std::vector< uint32_t > isTauFlags
std::vector< float > effTopoMeanDeltaR
mean distance to leading topocluster for effective topoclusters of jet associated to tau candidate
std::vector< PFOLink_t > protoChargedPFOLinks
std::vector< float > mIntermediateAxis
std::vector< float > etEMAtEMScale
EM energy at EM scale.
std::vector< float > cellBasedEnergyRing5
Ring 5: 0.125 < R < 0.15.
std::vector< float > PanTau_BDTVar_Neutral_PID_BDTValues_BDTSort_2
std::vector< float > cellBasedEnergyRing4
Ring 4: 0.10 < R < 0.125.
std::vector< float > trkRmsDist
the RMS of track distance to calorimeter seed
std::vector< float > sumEMCellEtOverLeadTrkPt
std::vector< float > etOverPtLeadTrkCorrected
pileup-corrected ID variables
std::vector< float > ChPiEMEOverCaloEME
std::vector< float > centFracCorrected
std::vector< float > phiIntermediateAxis
std::vector< float > isolFrac
isolation fraction
ElementLink< xAOD::JetContainer > JetLink_t
std::vector< PFOLink_t > pi0PFOLinks
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.