ATLAS Offline Software
Loading...
Searching...
No Matches
TauCommonDetails.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
16
17//TauEvent includes
18#include "tauEvent/TauCmp.h"
20//Other includes
21#include "AthLinks/ElementLink.h"
23#include "VxVertex/RecVertex.h"
24//C/C++ includes
25#include <string>
26
27namespace Analysis {
28 //Default constructor
29 //Initializes members to default values where applicable
30 TauCommonDetails :: TauCommonDetails():
31 TauDetails(),
32 //Applicable for track & calo seeded tau reconstruction
44 m_secVtx(0),
47 //Electron LLH ID variables
51 //topocluster ID variables
52 m_numCells(0),
59 //Applicable for calo seeded tau reconstruction
80 //Applicable for track seeded tau reconstruction
101 // Energy scale
113 //track filter and pi0 cone
116 m_Pi0ConeDR(0.)
117 {
118 }
119
120 //Copy constructor
121 TauCommonDetails :: TauCommonDetails(const TauCommonDetails &rhs):
122 TauDetails(),
123 //Applicable for track & calo seeded tau reconstruction
142 m_secVtx(rhs.m_secVtx ? new Trk::RecVertex(*rhs.m_secVtx) : 0),
143 m_etEflow(rhs.m_etEflow),
144 m_mEflow(rhs.m_mEflow),
145 m_pi0(rhs.m_pi0),
146 //Electron LLH ID variables
150 //topocluster ID variables
158 //Applicable for calo seeded tau reconstruction
179 //Applicable for track seeded tau reconstruction
202 // Energy scale
214 //track filter and pi0 cone
219 {
220
221 }
222
223 //Destructor
224 TauCommonDetails :: ~TauCommonDetails()
225 {
226 delete m_secVtx;
227 }
228
229 //Assignment operator
231 const TauCommonDetails &rhs)
232 {
233 if(this != &rhs)
234 {
235 //Applicable for track & calo seeded tau reconstruction
254 delete m_secVtx;
255 if (rhs.m_secVtx)
256 {
258 }
259 m_etEflow=rhs.m_etEflow;
260 m_mEflow=rhs.m_mEflow;
261 m_pi0 =rhs.m_pi0;
262 //Electron LLH ID variables
265 //topocluster ID variables
273 //Applicable for calo seeded tau reconstruction
294 //Applicable for track seeded tau reconstruction
316 // Energy scale
328 //track filter and pi0 cone
333 }
334 return *this;
335 }
336
338 //Double comparisons
340 return false;
342 return false;
344 return false;
346 return false;
348 return false;
350 return false;
352 return false;
354 return false;
356 return false;
358 return false;
360 return false;
362 return false;
363 if (!TauCmp::cmp(m_mEflow,rhs.m_mEflow))
364 return false;
366 return false;
368 return false;
370 return false;
372 return false;
374 return false;
376 return false;
378 return false;
380 return false;
382 return false;
384 return false;
386 return false;
388 return false;
390 return false;
392 return false;
394 return false;
396 return false;
398 return false;
400 return false;
402 return false;
404 return false;
406 return false;
408 return false;
410 return false;
412 return false;
414 return false;
416 return false;
418 return false;
420 return false;
422 return false;
424 return false;
426 return false;
428 return false;
430 return false;
432 return false;
434 return false;
436 return false;
437
438 //integer comparisons
440 return false;
442 return false;
444 return false;
446 return false;
447
448 //Vector comparisons
450 return false;
453 return false;
454
455 //Other comparisons
456 if (!(m_looseTrk==rhs.m_looseTrk))
457 return false;
458 if (!(m_looseConvTrk==rhs.m_looseConvTrk))
459 return false;
461 return false;
463 return false;
464 if (!(m_otherTrk==rhs.m_otherTrk))
465 return false;
467 return false;
468 if (!(m_sumPi0Vec==rhs.m_sumPi0Vec))
469 return false;
470 if (!(m_pi0==rhs.m_pi0))
471 return false;
472 //Check that either both or none are there
473 if ( ( (m_secVtx==0) && (rhs.m_secVtx!=0) ) ||
474 ( (m_secVtx!=0) && (rhs.m_secVtx==0) ) )
475 return false;
476 //Use dump to compare if both vertices are there
477 if ( (m_secVtx!=0) && (rhs.m_secVtx!=0))
478 if((m_secVtx->position()-rhs.m_secVtx->position()).mag()>1e-6)
479 return false;
480 //Electron LLH ID variables
481 if (!(m_Ele_E237E277==rhs.m_Ele_E237E277))
482 return false;
484 return false;
486 return false;
487
488 //topocluster ID variables
489 if (!(m_numCells==rhs.m_numCells))
490 return false;
492 return false;
494 return false;
495 if (!(m_topoInvMass==rhs.m_topoInvMass))
496 return false;
498 return false;
500 return false;
502 return false;
503
504 // Energy scale
506 return false;
508 return false;
510 return false;
512 return false;
514 return false;
516 return false;
518 return false;
520 return false;
522 return false;
524 return false;
525
526 // Tau Jet Vertex Fraction
528 return false;
529
530 //track filter and pi0 cone
532 return false;
534 return false;
536 return false;
537 if(m_Pi0ConeDR != rhs.m_Pi0ConeDR)
538 return false;
539
540 return true;
541 }
542
543 //Class name
545
546 const std::string& TauCommonDetails::className() const
547 {
548 return s_className;
549 }
550
551} //Namespace analysis
An interface for getting the name of a class as a string.
Declaration of Tau comparison predicates.
Declaration of details class for tau event.
double m_leadTrkPt
p_T of leading loose track - for Trigger
int m_seedTrk_nStrip
Number of strip cells.
double m_TauJetVtxFraction
Tau Jet Vertex Fraction.
unsigned int m_numTopoClusters
number of topocluster constituents associated to tau candidate
virtual const std::string & className() const
Get name of class.
double m_effTopoInvMass
invariant mass from effective topoclusters of jet associated to tau candidate
double m_seedCalo_lead3ClusterEOverAllClusterE
sum of 3 leading cluster energy over all cluster energy
double m_seedCalo_trkRmsDist
RMS of track distance from calorimeter seed.
double m_seedCalo_trkAvgDist
average track distance from calorimeter seed
double m_seedCalo_etEMCalib
Calibrated EM transverse energy.
double m_Ele_E237E277
Members for electron LLH calculation.
double m_seedTrk_etIsolEM
Transverse energy in EM calo (at EM Scale) in 0.2 < dR < 0.4.
double m_seedCalo_lead2ClusterEOverAllClusterE
sum of 2 leading cluster energy over all cluster energy
double m_cellBasedEnergyRing7
Ring 7: 0.2 < R < 0.4.
double m_seedTrk_etNeuEM
Transverse energy of EM cells (at EM scale), within "core" cone around tau1P3P axis after subtraction...
double m_seedTrk_stripWidth2
Strip width squared.
double m_seedTrk_etChrgHadOverSumTrkPt
charged hadronic transverse energy over sum of transverse momenta of all tracks
double m_etEflow
E_T from energy flow.
double m_seedCalo_eta
eta of TauJet calculated from calorimeter
double m_seedCalo_hadRadius
Uncalibrated hadron calorimeter weighted radius.
double m_seedTrk_secMaxStripEt
Secondary maximum.
double m_massTrkSys
Invariant mass of the tracks system.
TauCommonDetails()
Default constructor.
double m_cellBasedEnergyRing6
Ring 6: 0.15 < R < 0.2.
double m_Ele_ECALFirstFraction
fraction of EM cluster energy in first layer of ECAL
double m_ipSigLeadLooseTrk
Impact parameter significance of leading loose track.
static const std::string s_className
Name of class.
int m_seedTrk_nIsolTrk
Associated, "not good" quality tracks in core region.
double m_Ele_PresamplerFraction
fraction of EM cluster energy in presampler
double m_seedTrk_etResNeuEM
Correction term for eflow calculations.
double m_TRT_NHT_OVER_NLT
TRTHits high threshold over low threshold used in electron veto.
double m_seedTrk_etChrgHad
Charged transverse energy in narrow window around track(s) in hadronic calorimeter.
double m_LC_TES_precalib
lc+tes precalibration
double m_cellBasedEnergyRing2
Ring 2: 0.05 < R < 0.075.
ElementLinkVector< Rec::TrackParticleContainer > m_otherTrk
Other tracks.
TauCommonDetails & operator=(const TauCommonDetails &rhs)
Assignment operator.
double m_trkWidth2
Width of tracks momenta.
std::vector< bool > m_TrackFilterPass
Track filter and generic pi0 cone.
double m_topoMeanDeltaR
mean distance to leading topocluster for topoclusters of jet associated to tau candidate
std ::vector< double > m_seedTrk_etResChrgEMTrk
Correction term for eflow calculations (evaluated for each track separately)
std ::vector< double > m_seedTrk_etChrgEM01Trk
Transverse energy in narrow window around the track(s), EM layers 0 1 only.
double m_seedCalo_etHadCalib
Calibrated hadronic transverse energy.
double m_seedTrk_sumEMCellEtOverLeadTrkPt
Ratio of sum Et of LAr Cells to the pT of leading track.
double m_seedCalo_nIsolLooseTrk
Number of isolated tracks.
double m_ipSigLeadTrk
Impact parameter significance of leading track.
double m_chrgLooseTrk
Charge of loose tracks.
double m_leadLooseTrkPt
p_T of leading loose track - for Trigger
double m_seedCalo_caloIso
sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4
double m_seedCalo_isolFrac
Ratio of the uncalibrated transverse energy of cells within 0.1<dR<0.2 and cells within 0<dR<0....
double m_seedTrk_hadLeakEt
hadronic leakage in Et summed over cells
double m_ipZ0SinThetaSigLeadTrk
Significance of z0 sin(Theta)
double m_seedTrk_EMRadius
EM radius.
ElementLinkVector< Rec::TrackParticleContainer > m_looseConvTrk
Loose Conversion tracks.
double m_seedTrk_etChrgEM
Transverse energy of EM cells (at EM scale) classified as "charged electromagnetic" collected in narr...
double m_seedTrk_isolFrac
Isolation fraction.
unsigned int m_numCells
Members for topocluster ID variables.
double m_cellBasedEnergyRing3
Ring 3: 0.075 < R < 0.10.
ElementLinkVector< Rec::TrackParticleContainer > m_seedCalo_wideTrk
SeedCalo wide tracks.
double m_numEffTopoClusters
number of effective topocluster constituents associated to tau candidate !!! is a double
double m_seedCalo_centFrac
Centrality fraction (ET(dr<0.1)/ET(dr<0.4) for all calos.
double m_topoInvMass
invariant mass from topoclusters of jet associated to tau candidate
double m_seedTrk_etEMCL
Transverse energy of cells classified as "pure electromagnetic" seeded by egamma or topo cluster (ste...
double m_EM_TES_scale
em+tes final scale
bool operator==(const TauCommonDetails &rhs) const
Equality operator.
double m_seedCalo_EMRadius
Uncalibrated Et weighted radius in the Presampler + EM1 + EM2 within dR < 0.4.
double m_trFlightPathSig
Transverse flight path significance for taus with at least 2 associated tracks.
double m_etOverPtLeadTrk
Ratio of E_T of TauCandidate to p_T of leading track.
double m_mEflow
mass from energy flow
double m_seedTrk_etIsolHad
Transverse energy in HAD calo (at EM Scale) in 0.2 < dR < 0.4.
double m_seedTrk_etHadAtEMScale
Hadronic E_T at EM scale.
CLHEP::HepLorentzVector m_sumPi0Vec
Pi0 energy sum vector.
double m_seedCalo_phi
phi of TauJet calculated from calorimeter
double m_effTopoMeanDeltaR
mean distance to leading topocluster for effective topoclusters of jet associated to tau candidate
double m_cellBasedEnergyRing1
Cell-based energies in rings for centrality fraction.
int m_seedCalo_nStrip
Number of Strip cells within dR < 0.4, with energy above specified threshold.
ElementLinkVector< CaloClusterContainer > m_pi0
Pi0 clusters.
double m_etOverPtLeadLooseTrk
Ratio of E_T of TauCandidate to p_T of leading loose track.
Trk::RecVertex * m_secVtx
Secondary vertex.
ElementLink< CaloClusterContainer > m_cellEM012Cluster
EM calorimeter cell cluster.
double m_seedCalo_stripWidth2
Uncalibrated transverse energy weighted width in the strip layer within dR < 0.4.
double m_seedTrk_isolFracWide
Ratio of Transverse Energy in 0.2 < dr < 0.4 to total transverse energy at EM scale.
int m_seedTrk_nOtherCoreTrk
Associated, "not good" quality tracks in core region.
double m_cellBasedEnergyRing5
Ring 5: 0.125 < R < 0.15.
double m_seedCalo_dRmax
maximal dR of tracks associated to calo-seeded tau
double m_seedCalo_etHadAtEMScale
Uncalibrated Sum of Cell Transverse energy in the Presampler + EM1 + EM2 within dR < 0....
double m_cellBasedEnergyRing4
Ring 4: 0.10 < R < 0.125.
ElementLinkVector< Rec::TrackParticleContainer > m_seedTrk_wideTrk
SeedTrk wide tracks.
double m_seedTrk_etEMAtEMScale
EM E_T at EM scale.
double m_seedCalo_etEMAtEMScale
Uncalibrated Sum of Cell Transverse energy in the Presampler + EM1 + EM2 within dR < 0....
ElementLinkVector< Rec::TrackParticleContainer > m_looseTrk
Loose tracks.
double m_seedCalo_caloIsoCorrected
sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4 (pile up corrected)
static const int DEFAULT_INT
Definition TauDetails.h:35
static const float DEFAULT
Definition TauDetails.h:34
TauDetails()
Default constructor.
static std::string name()
Return the name of class T as a string.
Trk::RecVertex inherits from Trk::Vertex.
Definition RecVertex.h:44
const Amg::Vector3D & position() const
return position of vertex
Definition Vertex.cxx:63
bool vcmp(const std::vector< T > &a, const std::vector< T > &b)
Compare vectors using cmp predicate.
Definition TauCmp.h:36
bool cmp(const double &a, const double &b)
Definition TauCmp.cxx:34
The namespace of all packages in PhysicsAnalysis/JetTagging.
Ensure that the ATLAS eigen extensions are properly loaded.