ATLAS Offline Software
TrackClusterAssValidationUtils.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TrackClusterAssValidationUtils_H
6 #define TrackClusterAssValidationUtils_H
7 
8 namespace InDet {
9 
11  // Header file for class PartPropCache
13 
15  {
17  // Public methods:
19  public:
23  PartPropCache(const PartPropCache&) = default;
25  PartPropCache(int charge,int rapidity);
27  ~PartPropCache() = default;
31  int barcode () const {return abs(m_barcharge);}
32  int charge () const {return ((m_barcharge>0) - (m_barcharge<0));} //returns 1, -1 or 0 depending on sign
33  int rapidity() const {return m_rapidity;}
34 
35  protected:
38  };
39 
41  // Inline methods
43 
44  inline PartPropCache::PartPropCache (int bc,int rap)
45  {
46  m_barcharge = bc ;
47  m_rapidity = rap;
48  }
49 
50 
52  public:
53  int m_efficiency [6]={} ;
54  int m_efficiencyN [6][5]={};
55  int m_efficiencyBTE[6][5][4]={};
56  int m_efficiencyPOS[6]={} ;
57  int m_efficiencyNEG[6]={} ;
58  int m_ntracksPOSB{} ;
59  int m_ntracksPOSE{} ;
61  int m_ntracksNEGB{} ;
62  int m_ntracksNEGE{} ;
64  int m_total [50]={} ;
65  int m_fake [50]={} ;
66  int m_events{} ;
67  int m_eventsPOS{} ;
68  int m_eventsNEG{} ;
69  int m_eventsBTE[4]={0} ;
70 
71 
73  for (int i=0; i<6; ++i) { m_efficiency[i]+=a_stat.m_efficiency[i];}
74  for (int i=0; i<6; ++i) { for (int j=0; j<5; ++j) { m_efficiencyN[i][j]+=a_stat.m_efficiencyN[i][j];}}
75  for (int i=0; i<6; ++i) { for (int j=0; j<5; ++j) { for (int k=0; k<4; ++k) { m_efficiencyBTE[i][j][k]+=a_stat.m_efficiencyBTE[i][j][k];} } }
76  for (int i=0; i<6; ++i) { m_efficiencyPOS[i]+=a_stat.m_efficiencyPOS[i];}
77  for (int i=0; i<6; ++i) { m_efficiencyNEG[i]+=a_stat.m_efficiencyNEG[i];}
84  for (int i=0; i<50; ++i) { m_total[i]+=a_stat.m_total[i];}
85  for (int i=0; i<50; ++i) { m_fake[i]+=a_stat.m_fake[i];}
86 
87  return *this;
88  }
89 
90  };
91 
92 
93  struct EventStat_t {
94  public:
95  int m_events{} ;
96  int m_eventsPOS{} ;
97  int m_eventsNEG{} ;
98  int m_eventsBTE[4]={};
99 
100  int m_particleClusters [50]={};
102  int m_particleClustersBTE [50][4]={};
104 
113  //
118 
119 
121  m_events += a_stat.m_events;
122  m_eventsPOS += a_stat.m_eventsPOS;
123  m_eventsNEG += a_stat.m_eventsNEG;
124  for (int i=0; i<4; ++i) { m_eventsBTE[i] += a_stat.m_eventsBTE[i]; }
125  for (int i=0; i<50; ++i) {m_particleClusters[i] += a_stat.m_particleClusters[i]; };
126  for (int i=0; i<50; ++i) {m_particleSpacePoints[i] += a_stat.m_particleSpacePoints[i]; };
127  for (int i=0; i<50; ++i) {for (int j=0; j<4; ++j) { m_particleClustersBTE[i][j] += a_stat.m_particleClustersBTE[i][j]; } }
128  for (int i=0; i<50; ++i) {for (int j=0; j<4; ++j) { m_particleSpacePointsBTE[i][j] += a_stat.m_particleSpacePointsBTE[i][j];} }
141  return *this;
142  }
143  };
144 
145 }
146 #endif // TrackClusterAssValidationUtils_H
147 
InDet::TrackCollectionStat_t::m_ntracksPOSB
int m_ntracksPOSB
Definition: TrackClusterAssValidationUtils.h:58
InDet::TrackCollectionStat_t::m_ntracksPOSE
int m_ntracksPOSE
Definition: TrackClusterAssValidationUtils.h:59
InDet::EventStat_t::m_nclustersNegEP
int m_nclustersNegEP
Definition: TrackClusterAssValidationUtils.h:111
InDet::TrackCollectionStat_t::m_ntracksPOSFWD
int m_ntracksPOSFWD
Definition: TrackClusterAssValidationUtils.h:60
InDet::EventStat_t::m_nclustersNegBP
int m_nclustersNegBP
Definition: TrackClusterAssValidationUtils.h:109
InDet::PartPropCache::PartPropCache
PartPropCache()
default c'tor
Definition: TrackClusterAssValidationUtils.h:21
InDet
DUMMY Primary Vertex Finder.
Definition: VP1ErrorUtils.h:36
InDet::TrackCollectionStat_t::m_fake
int m_fake[50]
Definition: TrackClusterAssValidationUtils.h:65
InDet::EventStat_t::m_nclustersNegBS
int m_nclustersNegBS
Definition: TrackClusterAssValidationUtils.h:110
InDet::EventStat_t::m_nclustersSTOTt
int m_nclustersSTOTt
Definition: TrackClusterAssValidationUtils.h:117
InDet::EventStat_t::operator+=
EventStat_t & operator+=(const EventStat_t &a_stat)
Definition: TrackClusterAssValidationUtils.h:120
InDet::TrackCollectionStat_t
Definition: TrackClusterAssValidationUtils.h:51
InDet::EventStat_t::m_nclustersNegES
int m_nclustersNegES
Definition: TrackClusterAssValidationUtils.h:112
InDet::EventStat_t::m_particleClusters
int m_particleClusters[50]
Definition: TrackClusterAssValidationUtils.h:100
InDet::EventStat_t::m_particleSpacePointsBTE
int m_particleSpacePointsBTE[50][4]
Definition: TrackClusterAssValidationUtils.h:103
InDet::TrackCollectionStat_t::m_eventsPOS
int m_eventsPOS
Definition: TrackClusterAssValidationUtils.h:67
InDet::TrackCollectionStat_t::m_efficiency
int m_efficiency[6]
Definition: TrackClusterAssValidationUtils.h:53
InDet::PartPropCache::PartPropCache
PartPropCache(const PartPropCache &)=default
copy c'tor defaulted
InDet::TrackCollectionStat_t::m_eventsNEG
int m_eventsNEG
Definition: TrackClusterAssValidationUtils.h:68
InDet::PartPropCache::m_barcharge
int m_barcharge
Definition: TrackClusterAssValidationUtils.h:36
lumiFormat.i
int i
Definition: lumiFormat.py:92
InDet::PartPropCache
Definition: TrackClusterAssValidationUtils.h:15
InDet::TrackCollectionStat_t::m_efficiencyNEG
int m_efficiencyNEG[6]
Definition: TrackClusterAssValidationUtils.h:57
InDet::PartPropCache::barcode
int barcode() const
getters
Definition: TrackClusterAssValidationUtils.h:31
InDet::PartPropCache::~PartPropCache
~PartPropCache()=default
destructor does nothing
InDet::TrackCollectionStat_t::m_efficiencyPOS
int m_efficiencyPOS[6]
Definition: TrackClusterAssValidationUtils.h:56
InDet::EventStat_t::m_nclustersPosES
int m_nclustersPosES
Definition: TrackClusterAssValidationUtils.h:108
InDet::TrackCollectionStat_t::m_ntracksNEGFWD
int m_ntracksNEGFWD
Definition: TrackClusterAssValidationUtils.h:63
InDet::TrackCollectionStat_t::m_events
int m_events
Definition: TrackClusterAssValidationUtils.h:66
InDet::EventStat_t::m_nclustersSTOT
int m_nclustersSTOT
Definition: TrackClusterAssValidationUtils.h:116
InDet::TrackCollectionStat_t::m_eventsBTE
int m_eventsBTE[4]
Definition: TrackClusterAssValidationUtils.h:69
InDet::TrackCollectionStat_t::m_ntracksNEGB
int m_ntracksNEGB
Definition: TrackClusterAssValidationUtils.h:61
InDet::PartPropCache::charge
int charge() const
Definition: TrackClusterAssValidationUtils.h:32
InDet::EventStat_t::m_eventsBTE
int m_eventsBTE[4]
Definition: TrackClusterAssValidationUtils.h:98
InDet::EventStat_t::m_nclustersPTOTt
int m_nclustersPTOTt
Definition: TrackClusterAssValidationUtils.h:115
InDet::EventStat_t::m_nclustersPosBP
int m_nclustersPosBP
Definition: TrackClusterAssValidationUtils.h:105
InDet::EventStat_t::m_events
int m_events
Definition: TrackClusterAssValidationUtils.h:95
InDet::EventStat_t
Definition: TrackClusterAssValidationUtils.h:93
InDet::EventStat_t::m_eventsPOS
int m_eventsPOS
Definition: TrackClusterAssValidationUtils.h:96
InDet::EventStat_t::m_eventsNEG
int m_eventsNEG
Definition: TrackClusterAssValidationUtils.h:97
InDet::EventStat_t::m_nclustersPTOT
int m_nclustersPTOT
Definition: TrackClusterAssValidationUtils.h:114
InDet::TrackCollectionStat_t::m_ntracksNEGE
int m_ntracksNEGE
Definition: TrackClusterAssValidationUtils.h:62
InDet::TrackCollectionStat_t::m_efficiencyBTE
int m_efficiencyBTE[6][5][4]
Definition: TrackClusterAssValidationUtils.h:55
InDet::TrackCollectionStat_t::m_total
int m_total[50]
Definition: TrackClusterAssValidationUtils.h:64
InDet::EventStat_t::m_nclustersPosEP
int m_nclustersPosEP
Definition: TrackClusterAssValidationUtils.h:107
InDet::EventStat_t::m_nclustersPosBS
int m_nclustersPosBS
Definition: TrackClusterAssValidationUtils.h:106
InDet::TrackCollectionStat_t::m_efficiencyN
int m_efficiencyN[6][5]
Definition: TrackClusterAssValidationUtils.h:54
InDet::TrackCollectionStat_t::operator+=
TrackCollectionStat_t & operator+=(const TrackCollectionStat_t &a_stat)
Definition: TrackClusterAssValidationUtils.h:72
InDet::PartPropCache::m_rapidity
int m_rapidity
Definition: TrackClusterAssValidationUtils.h:37
InDet::PartPropCache::operator=
PartPropCache & operator=(const PartPropCache &)=default
assignment defaulted
InDet::EventStat_t::m_particleClustersBTE
int m_particleClustersBTE[50][4]
Definition: TrackClusterAssValidationUtils.h:102
fitman.k
k
Definition: fitman.py:528
InDet::PartPropCache::rapidity
int rapidity() const
Definition: TrackClusterAssValidationUtils.h:33
InDet::EventStat_t::m_particleSpacePoints
int m_particleSpacePoints[50]
Definition: TrackClusterAssValidationUtils.h:101