ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetValidation
InDetTrackClusterAssValidation
src
TrackClusterAssValidationUtils.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 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
14
class
PartPropCache
15
{
17
// Public methods:
19
public
:
21
PartPropCache
() {};
23
PartPropCache
(
const
PartPropCache
&) =
default
;
25
PartPropCache
(
int
uidCharge,
int
rapidity
);
27
~PartPropCache
() =
default
;
29
PartPropCache
&
operator =
(
const
PartPropCache
&) =
default
;
31
int
id
()
const
{
return
abs(
m_uidCharge
);}
32
int
charge
()
const
{
return
((
m_uidCharge
>0) - (
m_uidCharge
<0));}
//returns 1, -1 or 0 depending on sign
33
int
rapidity
()
const
{
return
m_rapidity
;}
34
35
protected
:
36
int
m_uidCharge
{};
37
int
m_rapidity
{};
38
};
39
41
// Inline methods
43
44
inline
PartPropCache::PartPropCache
(
int
uidCharge,
int
rapidity
)
45
{
46
m_uidCharge
= uidCharge ;
47
m_rapidity
=
rapidity
;
48
}
49
50
51
struct
TrackCollectionStat_t
{
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
{} ;
60
int
m_ntracksPOSFWD
{};
61
int
m_ntracksNEGB
{} ;
62
int
m_ntracksNEGE
{} ;
63
int
m_ntracksNEGFWD
{};
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
72
TrackCollectionStat_t
&
operator+=
(
const
TrackCollectionStat_t
&a_stat) {
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];}
78
m_ntracksPOSB
+=a_stat.
m_ntracksPOSB
;
79
m_ntracksPOSE
+=a_stat.
m_ntracksPOSE
;
80
m_ntracksPOSFWD
+=a_stat.
m_ntracksPOSFWD
;
81
m_ntracksNEGB
+=a_stat.
m_ntracksNEGB
;
82
m_ntracksNEGE
+=a_stat.
m_ntracksNEGE
;
83
m_ntracksNEGFWD
+=a_stat.
m_ntracksNEGFWD
;
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]={};
101
int
m_particleSpacePoints
[50]={};
102
int
m_particleClustersBTE
[50][4]={};
103
int
m_particleSpacePointsBTE
[50][4]={};
104
105
int
m_nclustersPosBP
{} ;
106
int
m_nclustersPosBS
{} ;
107
int
m_nclustersPosEP
{} ;
108
int
m_nclustersPosES
{} ;
109
int
m_nclustersNegBP
{} ;
110
int
m_nclustersNegBS
{} ;
111
int
m_nclustersNegEP
{} ;
112
int
m_nclustersNegES
{} ;
113
//
114
int
m_nclustersPTOT
{} ;
115
int
m_nclustersPTOTt
{} ;
116
int
m_nclustersSTOT
{} ;
117
int
m_nclustersSTOTt
{} ;
118
119
120
EventStat_t
&
operator+=
(
const
EventStat_t
&a_stat) {
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];} }
129
m_nclustersPosBP
+=
m_nclustersPosBP
;
130
m_nclustersPosBS
+=
m_nclustersPosBS
;
131
m_nclustersPosEP
+=
m_nclustersPosEP
;
132
m_nclustersPosES
+=
m_nclustersPosES
;
133
m_nclustersNegBP
+=
m_nclustersNegBP
;
134
m_nclustersNegBS
+=
m_nclustersNegBS
;
135
m_nclustersNegEP
+=
m_nclustersNegEP
;
136
m_nclustersNegES
+=
m_nclustersNegES
;
137
m_nclustersPTOT
+=a_stat.
m_nclustersPTOT
;
138
m_nclustersPTOTt
+=a_stat.
m_nclustersPTOTt
;
139
m_nclustersSTOT
+=a_stat.
m_nclustersSTOT
;
140
m_nclustersSTOTt
+=a_stat.
m_nclustersSTOTt
;
141
return
*
this
;
142
}
143
};
144
145
}
146
#endif
// TrackClusterAssValidationUtils_H
147
InDet::PartPropCache::m_uidCharge
int m_uidCharge
Definition
TrackClusterAssValidationUtils.h:36
InDet::PartPropCache::PartPropCache
PartPropCache()
default c'tor
Definition
TrackClusterAssValidationUtils.h:21
InDet::PartPropCache::~PartPropCache
~PartPropCache()=default
destructor does nothing
InDet::PartPropCache::m_rapidity
int m_rapidity
Definition
TrackClusterAssValidationUtils.h:37
InDet::PartPropCache::operator=
PartPropCache & operator=(const PartPropCache &)=default
assignment defaulted
InDet::PartPropCache::charge
int charge() const
Definition
TrackClusterAssValidationUtils.h:32
InDet::PartPropCache::PartPropCache
PartPropCache(const PartPropCache &)=default
copy c'tor defaulted
InDet::PartPropCache::rapidity
int rapidity() const
Definition
TrackClusterAssValidationUtils.h:33
InDet::PartPropCache::id
int id() const
getters
Definition
TrackClusterAssValidationUtils.h:31
InDet
Primary Vertex Finder.
Definition
VP1ErrorUtils.h:36
InDet::EventStat_t
Definition
TrackClusterAssValidationUtils.h:93
InDet::EventStat_t::m_eventsPOS
int m_eventsPOS
Definition
TrackClusterAssValidationUtils.h:96
InDet::EventStat_t::m_nclustersPTOT
int m_nclustersPTOT
Definition
TrackClusterAssValidationUtils.h:114
InDet::EventStat_t::m_nclustersPosEP
int m_nclustersPosEP
Definition
TrackClusterAssValidationUtils.h:107
InDet::EventStat_t::m_nclustersPTOTt
int m_nclustersPTOTt
Definition
TrackClusterAssValidationUtils.h:115
InDet::EventStat_t::m_eventsNEG
int m_eventsNEG
Definition
TrackClusterAssValidationUtils.h:97
InDet::EventStat_t::m_particleSpacePointsBTE
int m_particleSpacePointsBTE[50][4]
Definition
TrackClusterAssValidationUtils.h:103
InDet::EventStat_t::m_nclustersSTOTt
int m_nclustersSTOTt
Definition
TrackClusterAssValidationUtils.h:117
InDet::EventStat_t::m_nclustersSTOT
int m_nclustersSTOT
Definition
TrackClusterAssValidationUtils.h:116
InDet::EventStat_t::m_particleClustersBTE
int m_particleClustersBTE[50][4]
Definition
TrackClusterAssValidationUtils.h:102
InDet::EventStat_t::m_nclustersNegBP
int m_nclustersNegBP
Definition
TrackClusterAssValidationUtils.h:109
InDet::EventStat_t::m_particleClusters
int m_particleClusters[50]
Definition
TrackClusterAssValidationUtils.h:100
InDet::EventStat_t::m_nclustersPosBS
int m_nclustersPosBS
Definition
TrackClusterAssValidationUtils.h:106
InDet::EventStat_t::m_events
int m_events
Definition
TrackClusterAssValidationUtils.h:95
InDet::EventStat_t::m_nclustersPosES
int m_nclustersPosES
Definition
TrackClusterAssValidationUtils.h:108
InDet::EventStat_t::m_nclustersPosBP
int m_nclustersPosBP
Definition
TrackClusterAssValidationUtils.h:105
InDet::EventStat_t::m_nclustersNegBS
int m_nclustersNegBS
Definition
TrackClusterAssValidationUtils.h:110
InDet::EventStat_t::m_nclustersNegEP
int m_nclustersNegEP
Definition
TrackClusterAssValidationUtils.h:111
InDet::EventStat_t::operator+=
EventStat_t & operator+=(const EventStat_t &a_stat)
Definition
TrackClusterAssValidationUtils.h:120
InDet::EventStat_t::m_particleSpacePoints
int m_particleSpacePoints[50]
Definition
TrackClusterAssValidationUtils.h:101
InDet::EventStat_t::m_nclustersNegES
int m_nclustersNegES
Definition
TrackClusterAssValidationUtils.h:112
InDet::EventStat_t::m_eventsBTE
int m_eventsBTE[4]
Definition
TrackClusterAssValidationUtils.h:98
InDet::TrackCollectionStat_t
Definition
TrackClusterAssValidationUtils.h:51
InDet::TrackCollectionStat_t::m_ntracksNEGE
int m_ntracksNEGE
Definition
TrackClusterAssValidationUtils.h:62
InDet::TrackCollectionStat_t::m_ntracksNEGB
int m_ntracksNEGB
Definition
TrackClusterAssValidationUtils.h:61
InDet::TrackCollectionStat_t::m_ntracksPOSB
int m_ntracksPOSB
Definition
TrackClusterAssValidationUtils.h:58
InDet::TrackCollectionStat_t::m_efficiency
int m_efficiency[6]
Definition
TrackClusterAssValidationUtils.h:53
InDet::TrackCollectionStat_t::m_total
int m_total[50]
Definition
TrackClusterAssValidationUtils.h:64
InDet::TrackCollectionStat_t::m_eventsBTE
int m_eventsBTE[4]
Definition
TrackClusterAssValidationUtils.h:69
InDet::TrackCollectionStat_t::m_ntracksNEGFWD
int m_ntracksNEGFWD
Definition
TrackClusterAssValidationUtils.h:63
InDet::TrackCollectionStat_t::m_efficiencyNEG
int m_efficiencyNEG[6]
Definition
TrackClusterAssValidationUtils.h:57
InDet::TrackCollectionStat_t::m_ntracksPOSFWD
int m_ntracksPOSFWD
Definition
TrackClusterAssValidationUtils.h:60
InDet::TrackCollectionStat_t::m_ntracksPOSE
int m_ntracksPOSE
Definition
TrackClusterAssValidationUtils.h:59
InDet::TrackCollectionStat_t::operator+=
TrackCollectionStat_t & operator+=(const TrackCollectionStat_t &a_stat)
Definition
TrackClusterAssValidationUtils.h:72
InDet::TrackCollectionStat_t::m_efficiencyPOS
int m_efficiencyPOS[6]
Definition
TrackClusterAssValidationUtils.h:56
InDet::TrackCollectionStat_t::m_efficiencyN
int m_efficiencyN[6][5]
Definition
TrackClusterAssValidationUtils.h:54
InDet::TrackCollectionStat_t::m_fake
int m_fake[50]
Definition
TrackClusterAssValidationUtils.h:65
InDet::TrackCollectionStat_t::m_efficiencyBTE
int m_efficiencyBTE[6][5][4]
Definition
TrackClusterAssValidationUtils.h:55
InDet::TrackCollectionStat_t::m_events
int m_events
Definition
TrackClusterAssValidationUtils.h:66
InDet::TrackCollectionStat_t::m_eventsNEG
int m_eventsNEG
Definition
TrackClusterAssValidationUtils.h:68
InDet::TrackCollectionStat_t::m_eventsPOS
int m_eventsPOS
Definition
TrackClusterAssValidationUtils.h:67
Generated on
for ATLAS Offline Software by
1.17.0