ATLAS Offline Software
Loading...
Searching...
No Matches
Tau1P3PDetails.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
19
20#ifndef TAU1P3P_DETAILS_ANALYSIS_H
21#define TAU1P3P_DETAILS_ANALYSIS_H
22
23#include "tauEvent/TauDetails.h"
24#include "CLHEP/Geometry/Vector3D.h"
25#include "CLHEP/Vector/LorentzVector.h"
26#include "VxVertex/RecVertex.h"
27#include "AthLinks/ElementLink.h"
28#include "AthLinks/ElementLinkVector.h"
29#include "CaloEvent/CaloClusterContainer.h"
30
31#include <vector>
32#include <memory>
33
34namespace Analysis
35{
36 //-------------------------------------------------------------------------
40 //-------------------------------------------------------------------------
42 {
43 friend class TauJet;
45 public:
46
47 //-----------------------------------------------------------------
48 // Constructor and destructor
49 //-----------------------------------------------------------------
50
52 ~Tau1P3PDetails() override;
55 virtual const std::string& className() const override;
56
57 //-----------------------------------------------------------------
59 //-----------------------------------------------------------------
60 virtual double parameter( TauJetParameters :: Detail detail ) const override;
61 virtual bool hasParameter( TauJetParameters :: Detail detail ) const override;
62
63 //-----------------------------------------------------------------
65 //-----------------------------------------------------------------
66 const CaloCluster *cellEM012Cluster() const;
67 void setCellEM012Cluster( const CaloClusterContainer *cont, const CaloCluster *clust );
68
69 //-----------------------------------------------------------------
71 //-----------------------------------------------------------------
75
76 //-----------------------------------------------------------------
79 //-----------------------------------------------------------------
80 double emRadius() const;
81 void setEMRadius( double EMRadius );
82
83 //-----------------------------------------------------------------
85 //-----------------------------------------------------------------
86 const CLHEP::HepLorentzVector &sumEM() const;
87 void setSumEM( const CLHEP::HepLorentzVector &sumEM );
88
89 //-----------------------------------------------------------------
92 //-----------------------------------------------------------------
93 double isolationFraction() const;
95
96 //-----------------------------------------------------------------
99 //-----------------------------------------------------------------
100 double stripWidth2() const;
101 void setStripWidth2( double stripWidth2 );
102
103 //-----------------------------------------------------------------
105 //-----------------------------------------------------------------
106 int numStripCells() const;
108
109 //-----------------------------------------------------------------
112 //-----------------------------------------------------------------
113 double etChrgHAD() const;
114 void setETChrgHAD( double etChrgHAD );
115
116 //-----------------------------------------------------------------
118 //-----------------------------------------------------------------
119 double etIsolEM() const;
120 void setETIsolEM( double etIsolEM );
121
122 //-----------------------------------------------------------------
124 //-----------------------------------------------------------------
125 double etIsolHAD() const;
126 void setETIsolHAD( double etIsolHad );
127
128 //-----------------------------------------------------------------
130 //-----------------------------------------------------------------
131 int nAssocTracksCore() const;
133
134 //-----------------------------------------------------------------
136 //-----------------------------------------------------------------
137 int nAssocTracksIsol() const;
139
140 //-----------------------------------------------------------------
142 //-----------------------------------------------------------------
143 double massTrk3P() const;
144 void setMassTrk3P( double massTrk3P );
145
146 //-----------------------------------------------------------------
148 //-----------------------------------------------------------------
149 double rWidth2Trk3P() const;
150 void setRWidth2Trk3P( double rWidth2Trk3P );
151
152 //-----------------------------------------------------------------
154 //-----------------------------------------------------------------
155 double signD0Trk3P() const;
156 void setSignD0Trk3P( double signD0Trk3P );
157
158 //-----------------------------------------------------------------
160 //-----------------------------------------------------------------
161 double z0SinThetaSig() const;
162 void setZ0SinThetaSig( double z0SinThetaSig );
163
164 //-----------------------------------------------------------------
166 //-----------------------------------------------------------------
167 double etChrgHADoverPttot() const;
169
170 //-----------------------------------------------------------------
172 //-----------------------------------------------------------------
173 double etIsolFrac() const;
174 void setEtIsolFrac( double etIsolFrac );
175
176 //-----------------------------------------------------------------
178 //-----------------------------------------------------------------
179 double etEflow() const;
180 void setETeflow( double etEflow );
181
182 //-----------------------------------------------------------------
184 //-----------------------------------------------------------------
185 double etHadAtEMScale() const;
186 void setETHadAtEMScale( double etHadAtEMScale );
187
188 //-----------------------------------------------------------------
190 //-----------------------------------------------------------------
191 double etEMAtEMScale() const;
192 void setETEMAtEMScale( double etEMAtEMScale );
193
194 //-----------------------------------------------------------------
197 //-----------------------------------------------------------------
198 double etEMCL() const;
199 void setETEMCL( double etEMCL );
200
201 //-----------------------------------------------------------------
205 //-----------------------------------------------------------------
206 double etChrgEM() const;
207 void setETChrgEM( double etChrgEM );
208
209 //-----------------------------------------------------------------
213 //-----------------------------------------------------------------
214 double etNeuEM() const;
215 void setETNeuEM( double etNeuEM );
216
217 //-----------------------------------------------------------------
219 //-----------------------------------------------------------------
220 double etResNeuEM() const;
221 void setETResNeuEM( double etResNeuEM );
222
223 //-----------------------------------------------------------------
226 //-----------------------------------------------------------------
227 double etChrgEM01Trk( unsigned tr ) const;
228 void setETChrgEM01Trk( unsigned tr, double etChrgEM01Trk );
229 void resizeETChrgEM01Trk( size_t sz );
230
232 void addETChrgEM01Trk( double etChrgEM01Trk );
233
234 //-----------------------------------------------------------------
237 //-----------------------------------------------------------------
238 double etResChrgEMTrk( unsigned tr ) const;
239 void setETResChrgEMTrk( unsigned tr, double etResChrgEMTrk );
240 void resizeETResChrgEMTrk( size_t sz );
241
243 void addETResChrgEMTrk( double etResChrgEMTrk );
244
245 //-----------------------------------------------------------------
248 //-----------------------------------------------------------------
249 void setSecVertex( const Trk :: RecVertex *secVertex );
250 const Trk :: RecVertex *secVertex() const;
251
252 //-----------------------------------------------------------------
254 //-----------------------------------------------------------------
255 unsigned numPi0() const;
256
257 //-----------------------------------------------------------------
259 //-----------------------------------------------------------------
260 const CaloCluster *pi0( unsigned num ) const;
261
262 //-----------------------------------------------------------------
264 //-----------------------------------------------------------------
265 void addPi0( const CaloCluster *pi0, const CaloClusterContainer *pi0a );
266
267 //-----------------------------------------------------------------
269 //-----------------------------------------------------------------
271
272 //-----------------------------------------------------------------
275 //-----------------------------------------------------------------
276 double trFlightPathSig() const;
277 void setTrFlightPathSig( double trFlightPathSig );
278
279 //-----------------------------------------------------------------
281 //-----------------------------------------------------------------
282 double sumEtCellsLArOverLeadTrackPt() const;
283 void setSumEtCellsLArOverLeadTrackPt(double SumEtCellsLArOverLeadTrackPt);
284
285 //-----------------------------------------------------------------
287 //-----------------------------------------------------------------
288 double hadronicLeak() const;
289 void setHadronicLeak(double HadronicLeak);
290
291 //-----------------------------------------------------------------
293 //-----------------------------------------------------------------
294 double secondaryMax() const;
295 void setSecondaryMax(double SecondaryMax);
296
297
298
299 private:
300 //-----------------------------------------------------------------
301 // Identification variables variables
302 //-----------------------------------------------------------------
303 static const std::string s_className;
320
321 //-----------------------------------------------------------------
322 // Energy at the EM scale
323 //-----------------------------------------------------------------
326
327 double m_etEMCL;
329 double m_etNeuEM;
331
333
334 std :: vector<double> m_etChrgEM01Trk;
335 std :: vector<double> m_etResChrgEMTrk;
336 CLHEP::HepLorentzVector m_sumEM;
337
338 //-----------------------------------------------------------------
339 // Secondary Vertex
340 //-----------------------------------------------------------------
341 std::unique_ptr<Trk::RecVertex> m_secVertex;
342
343 //-----------------------------------------------------------------
344 // Pi0
345 //-----------------------------------------------------------------
347
348 double m_etEflow;
349
353
354
355
356 };
357
358 //-------------------------------------------------------------------------
359 // Implementation of accessors
360 //-------------------------------------------------------------------------
361 inline double Tau1P3PDetails :: emRadius() const
362 {
363 return m_emRadius;
364 }
365
366 inline void Tau1P3PDetails :: setEMRadius( double emRadius )
367 {
369 }
370
371 inline double Tau1P3PDetails :: isolationFraction() const
372 {
373 return m_ET12Frac;
374 }
375
376 inline void Tau1P3PDetails :: setIsolationFraction( double isolationFraction )
377 {
379 }
380
381 inline const CLHEP::HepLorentzVector &Tau1P3PDetails :: sumEM() const
382 {
383 return m_sumEM;
384 }
385
386 inline void Tau1P3PDetails :: setSumEM( const CLHEP::HepLorentzVector &sumEM )
387 {
388 m_sumEM = sumEM;
389 }
390
391 inline double Tau1P3PDetails :: stripWidth2() const
392 {
393 return m_stripWidth2;
394 }
395
396 inline void Tau1P3PDetails :: setStripWidth2( double stripWidth2 )
397 {
399 }
400
401 inline int Tau1P3PDetails :: numStripCells() const
402 {
403 return m_numStripCells;
404 }
405
406 inline void Tau1P3PDetails :: setNumStripCells( int numStripCells )
407 {
409 }
410
411 inline double Tau1P3PDetails :: etChrgHAD() const
412 {
413 return m_etChrgHAD;
414 }
415
416 inline void Tau1P3PDetails :: setETChrgHAD( double etChrgHAD )
417 {
419 }
420
421 inline double Tau1P3PDetails :: etIsolEM() const
422 {
423 return m_etIsolEM;
424 }
425
426 inline void Tau1P3PDetails :: setETIsolEM( double etIsolEM )
427 {
429 }
430
431 inline double Tau1P3PDetails :: etIsolHAD() const
432 {
433 return m_etIsolHAD;
434 }
435
436 inline void Tau1P3PDetails :: setETIsolHAD( double etIsolHAD )
437 {
439 }
440
441 inline int Tau1P3PDetails :: nAssocTracksCore() const
442 {
443 return m_nAssocTracksCore;
444 }
445
446 inline void Tau1P3PDetails :: setNAssocTracksCore( int nAssocTracksCore )
447 {
449 }
450
451 inline int Tau1P3PDetails :: nAssocTracksIsol() const
452 {
453 return m_nAssocTracksIsol;
454 }
455
456 inline void Tau1P3PDetails :: setNAssocTracksIsol( int nAssocTracksIsol )
457 {
459 }
460
461 inline double Tau1P3PDetails :: massTrk3P() const
462 {
463 return m_massTrk3P;
464 }
465
466 inline void Tau1P3PDetails :: setMassTrk3P( double massTrk3P )
467 {
469 }
470
471 inline double Tau1P3PDetails :: rWidth2Trk3P() const
472 {
473 return m_rWidth2Trk3P;
474 }
475
476 inline void Tau1P3PDetails :: setRWidth2Trk3P( double rWidth2Trk3P )
477 {
479 }
480
481 inline double Tau1P3PDetails :: signD0Trk3P() const
482 {
483 return m_signD0Trk3P;
484 }
485
486 inline void Tau1P3PDetails :: setSignD0Trk3P( double signD0Trk3P )
487 {
489 }
490
491 inline double Tau1P3PDetails :: z0SinThetaSig() const
492 {
493 return m_z0SinThetaSig;
494 }
495
496 inline void Tau1P3PDetails :: setZ0SinThetaSig( double z0SinThetaSig )
497 {
499 }
500
501 inline double Tau1P3PDetails :: etChrgHADoverPttot() const
502 {
504 }
505
506 inline void Tau1P3PDetails :: setEtChrgHADoverPttot( double etChrgHADoverPttot )
507 {
509 }
510
511 inline double Tau1P3PDetails :: etIsolFrac() const
512 {
513 return m_etIsolFrac;
514 }
515
516 inline void Tau1P3PDetails :: setEtIsolFrac( double etIsolFrac )
517 {
519 }
520
521 inline double Tau1P3PDetails :: etEflow() const
522 {
523 return m_etEflow;
524 }
525
526 inline void Tau1P3PDetails :: setETeflow( double etEflow )
527 {
529 }
530
531 inline double Tau1P3PDetails :: etHadAtEMScale() const
532 {
533 return m_etHadAtEMScale;
534 }
535
536 inline void Tau1P3PDetails :: setETHadAtEMScale( double etHadAtEMScale )
537 {
539 }
540
541 inline double Tau1P3PDetails :: etEMAtEMScale() const
542 {
543 return m_etEMAtEMScale;
544 }
545
546 inline void Tau1P3PDetails :: setETEMAtEMScale( double etEMAtEMScale )
547 {
549 }
550
551 inline double Tau1P3PDetails :: etEMCL() const
552 {
553 return m_etEMCL;
554 }
555
556 inline void Tau1P3PDetails :: setETEMCL( double etEMCL )
557 {
559 }
560
561 inline double Tau1P3PDetails :: etChrgEM() const
562 {
563 return m_etChrgEM;
564 }
565
566 inline void Tau1P3PDetails :: setETChrgEM( double etChrgEM )
567 {
569 }
570
571 inline double Tau1P3PDetails :: etNeuEM() const
572 {
573 return m_etNeuEM;
574 }
575
576 inline void Tau1P3PDetails :: setETNeuEM( double etNeuEM )
577 {
579 }
580
581 inline double Tau1P3PDetails :: etResNeuEM() const
582 {
583 return m_etResNeuEM;
584 }
585
586 inline void Tau1P3PDetails :: setETResNeuEM( double etResNeuEM )
587 {
589 }
590
591 inline double Tau1P3PDetails :: etChrgEM01Trk( unsigned tr ) const
592 {
593 //ak if( m_etChrgEM01Trk.size() < tr )
594 if( m_etChrgEM01Trk.size() > tr )
595 return m_etChrgEM01Trk[tr];
596 //return -11111.;
597 return 0.;
598 }
599
600 inline void Tau1P3PDetails :: setETChrgEM01Trk( unsigned tr, double etChrgEM01Trk )
601 {
602 if( m_etChrgEM01Trk.size() < tr )
604 }
605
606 inline void Tau1P3PDetails :: resizeETChrgEM01Trk( size_t sz )
607 {
608 m_etChrgEM01Trk.resize (sz);
609 }
610
611 inline void Tau1P3PDetails :: addETChrgEM01Trk( double etChrgEM01Trk )
612 {
613 m_etChrgEM01Trk.push_back( etChrgEM01Trk );
614 }
615
616 inline double Tau1P3PDetails :: etResChrgEMTrk( unsigned tr ) const
617 {
618 if( m_etResChrgEMTrk.size() > tr )
619 return m_etResChrgEMTrk[tr];
620 return 0.;
621 }
622
623 inline void Tau1P3PDetails :: setETResChrgEMTrk( unsigned tr, double etResChrgEMTrk )
624 {
625 if( m_etResChrgEMTrk.size() < tr )
627 }
628
629 inline void Tau1P3PDetails :: resizeETResChrgEMTrk( size_t sz )
630 {
631 m_etResChrgEMTrk.resize (sz);
632 }
633
634 inline void Tau1P3PDetails :: addETResChrgEMTrk( double etResChrgEMTrk )
635 {
636 m_etResChrgEMTrk.push_back( etResChrgEMTrk );
637 }
638
639 inline const Trk :: RecVertex *Tau1P3PDetails :: secVertex() const
640 {
641 return m_secVertex.get();
642 }
643
644 inline void Tau1P3PDetails :: setSecVertex( const Trk :: RecVertex *secVertex )
645 {
646 m_secVertex = secVertex ? std::make_unique<Trk::RecVertex>(*secVertex) : nullptr;
647 }
648
649 //-------------------------------------------------------------------------
650 // Pi0
651 //-------------------------------------------------------------------------
652 inline unsigned Tau1P3PDetails :: numPi0() const
653 {
654 return m_pi0.size();
655 }
656
657 inline const CaloCluster *Tau1P3PDetails :: pi0( unsigned num ) const
658 {
659 return *m_pi0[num];
660 }
661
662 inline ElementLinkVector<CaloClusterContainer>& Tau1P3PDetails :: pi0LinkVector()
663 {
664 return m_pi0;
665 }
666
667 inline void Tau1P3PDetails :: addPi0( const CaloCluster *pi0,
668 const CaloClusterContainer *cont )
669 {
671 if( !cont )
672 link.setElement( pi0 );
673 else
674 link.toContainedElement( *cont, pi0 );
675 m_pi0.push_back( link );
676 }
677
678
679 //-------------------------------------------------------------------------
680 // Implementation of calorimetry info accessors
681 //-------------------------------------------------------------------------
682 inline const CaloCluster *Tau1P3PDetails :: cellEM012Cluster() const
683 {
684 return ( (m_cellEM012Cluster.isValid()) ? (*m_cellEM012Cluster) : 0 );
685 }
686
687 inline void Tau1P3PDetails :: setCellEM012Cluster( const CaloClusterContainer *cont,
688 const CaloCluster *clust )
689 {
690 if( m_cellEM012Cluster.isValid() )
691 m_cellEM012Cluster.reset();
692 m_cellEM012Cluster.toContainedElement( *cont, clust);
693 }
694
695 inline const ElementLink<CaloClusterContainer> Tau1P3PDetails :: cellEM012ClusterLink() const
696 {
697 return m_cellEM012Cluster;
698 }
699
700 inline ElementLink<CaloClusterContainer> &Tau1P3PDetails :: cellEM012ClusterLink()
701 {
702 return m_cellEM012Cluster;
703 }
704
705 inline void Tau1P3PDetails :: setCellEM012ClusterLink( const ElementLink<CaloClusterContainer> &x)
706 {
708 }
709
710 //-------------------------------------------------------------------------
711 // Transverse flight path significance
712 //-------------------------------------------------------------------------
713 inline double Tau1P3PDetails :: trFlightPathSig() const
714 {
715 return m_trFlightPathSig;
716 }
717
718 inline void Tau1P3PDetails :: setTrFlightPathSig( double trFlightPathSig )
719 {
721 }
722
723
724 inline void Tau1P3PDetails :: setSumEtCellsLArOverLeadTrackPt( double SumEtCellsLArOverLeadTrackPt )
725 {
726 m_sumEtCellsLArOverLeadTrackPt = SumEtCellsLArOverLeadTrackPt;
727 }
728
729 inline double Tau1P3PDetails :: sumEtCellsLArOverLeadTrackPt() const
730 {
732 }
733
734 inline void Tau1P3PDetails :: setHadronicLeak( double HadronicLeak )
735 {
736 m_hadronicLeak = HadronicLeak;
737 }
738
739 inline double Tau1P3PDetails :: hadronicLeak() const
740 {
741 return m_hadronicLeak;
742 }
743
744 inline void Tau1P3PDetails :: setSecondaryMax( double SecondaryMax )
745 {
746 m_secondaryMax = SecondaryMax;
747 }
748
749 inline double Tau1P3PDetails :: secondaryMax() const
750 {
751 return m_secondaryMax;
752 }
753
754
755
756
757}
758
759#endif // TAU1P3P_DETAILS_ANALYSIS_H
static Double_t sz
Declaration of tau details base class.
#define x
friend class TauJet
Definition of the current "tau version".
std ::vector< double > m_etResChrgEMTrk
double etChrgEM() const
Transverse energy of EM cells (at EM scale) classified as "charged electromagnetic" collected in narr...
void setETEMAtEMScale(double etEMAtEMScale)
const ElementLink< CaloClusterContainer > cellEM012ClusterLink() const
ElementLinks to CaloClusters
void setEtIsolFrac(double etIsolFrac)
void setETIsolHAD(double etIsolHad)
double secondaryMax() const
secondary maximum
double etNeuEM() const
Transverse energy of EM cells (at EM scale), within "core" cone around tau1P3P axis after subtraction...
void setSumEM(const CLHEP::HepLorentzVector &sumEM)
void setETChrgEM01Trk(unsigned tr, double etChrgEM01Trk)
double massTrk3P() const
Invariant mass of the tracks system.
void setETResNeuEM(double etResNeuEM)
Tau1P3PDetails & operator=(const Tau1P3PDetails &rhs)
ElementLinkVector< CaloClusterContainer > m_pi0
double hadronicLeak() const
hadronic leakage in Et summed over cells
double etChrgHAD() const
Charged transverse energy in narrow window around track(s) in HAD calo.
int nAssocTracksIsol() const
Associated tracks in isolation region.
double etResChrgEMTrk(unsigned tr) const
Correction term for eflow calculations (evaluated for each track separately).
double etResNeuEM() const
Correction term for eflow calculations.
void setTrFlightPathSig(double trFlightPathSig)
virtual const std::string & className() const override
void setETResChrgEMTrk(unsigned tr, double etResChrgEMTrk)
void resizeETResChrgEMTrk(size_t sz)
CLHEP::HepLorentzVector m_sumEM
void setETIsolEM(double etIsolEM)
std ::vector< double > m_etChrgEM01Trk
std::unique_ptr< Trk::RecVertex > m_secVertex
void setIsolationFraction(double isolationFraction)
const CLHEP::HepLorentzVector & sumEM() const
EM part of the energy.
void setETChrgEM(double etChrgEM)
double isolationFraction() const
Ratio of the uncalibrated transverse energy within dR < 0.1 and dR < 0.2.
double sumEtCellsLArOverLeadTrackPt() const
Ratio of sum Et of LAr Cells to the pT of leading track.
void setEtChrgHADoverPttot(double etChrgHADoverPttot)
void setZ0SinThetaSig(double z0SinThetaSig)
double etIsolEM() const
Transverse energy in EM calo (at EM Scale) in 0.2 < dR < 0.4.
double etChrgHADoverPttot() const
charged hadronic transverse energy over sum of transverse momenta of all tracks
double stripWidth2() const
Uncalibrated transverse energy weighted width in the strip layer within dR < 0.2.
double etIsolHAD() const
Transverse energy in HAD calo (at EM Scale) in 0.2 < dR < 0.4.
int nAssocTracksCore() const
Associated, "not good" quality tracks in core region.
double rWidth2Trk3P() const
Width of tracks momenta.
double signD0Trk3P() const
signed transverse impact parameter
double etIsolFrac() const
Ratio of Transverse Energy in 0.2 < dr < 0.4 to total transverse energy at EM scale.
void setETEMCL(double etEMCL)
double etHadAtEMScale() const
Had energy at the EM scale.
void setNAssocTracksCore(int nAssocTracksCore)
int numStripCells() const
Number of Strip cells within dR < 0.2, with E > m_stripEthr.
double trFlightPathSig() const
Transverse flight path significance for taus with at least 2 associated tracks.
void setRWidth2Trk3P(double rWidth2Trk3P)
virtual double parameter(TauJetParameters ::Detail detail) const override
Generic parameter accessors - for old AOD compatibility.
void setEMRadius(double EMRadius)
void setSecVertex(const Trk ::RecVertex *secVertex)
Secondary vertex reconstructed with Vtx::FastFit tool for taus with at least 2 associated tracks.
void setHadronicLeak(double HadronicLeak)
const CaloCluster * pi0(unsigned num) const
access pi0 clusters
virtual bool hasParameter(TauJetParameters ::Detail detail) const override
check if parameter exists
void addPi0(const CaloCluster *pi0, const CaloClusterContainer *pi0a)
add pi0 cluster to the cluster container
void setSumEtCellsLArOverLeadTrackPt(double SumEtCellsLArOverLeadTrackPt)
double emRadius() const
Uncalibrated transverse energy weighted radius in the Presampler + EM1 + EM2 within dR < 0....
double etEMAtEMScale() const
EM energy at the EM scale.
void setETHadAtEMScale(double etHadAtEMScale)
void setETChrgHAD(double etChrgHAD)
void setNumStripCells(int numStripCells)
void setCellEM012ClusterLink(const ElementLink< CaloClusterContainer > &x)
void addETResChrgEMTrk(double etResChrgEMTrk)
add transverse energy of track (for eflow correction) to vector
void setNAssocTracksIsol(int nAssocTracksIsol)
void setETNeuEM(double etNeuEM)
double z0SinThetaSig() const
Significance of z0SinTheta.
static const std::string s_className
ElementLinkVector< CaloClusterContainer > & pi0LinkVector()
Get Pi0 Link.
void setCellEM012Cluster(const CaloClusterContainer *cont, const CaloCluster *clust)
void setMassTrk3P(double massTrk3P)
void setSecondaryMax(double SecondaryMax)
const Trk::RecVertex * secVertex() const
const CaloCluster * cellEM012Cluster() const
cells used for candidate building, only EM calorimeter, without 3rd sampling
void resizeETChrgEM01Trk(size_t sz)
double etEMCL() const
Transverse energy of cells classified as "pure electromagnetic" seeded by egamma or topo cluster (ste...
void addETChrgEM01Trk(double etChrgEM01Trk)
add transverse energy of track for EM layers 0 1 only
void setSignD0Trk3P(double signD0Trk3P)
void setETeflow(double etEflow)
friend class Tau1P3PDetailsCnv_p1
double etEflow() const
ET from energy flow.
unsigned numPi0() const
number of pi0 clusters
double etChrgEM01Trk(unsigned tr) const
Transverse energy in narrow window around the track(s), EM layers 0 1 only.
void setStripWidth2(double stripWidth2)
ElementLink< CaloClusterContainer > m_cellEM012Cluster
TauDetails()
Default constructor.
Principal data class for CaloCell clusters.
ElementLinkVector implementation for standalone ROOT.
The namespace of all packages in PhysicsAnalysis/JetTagging.