ATLAS Offline Software
Loading...
Searching...
No Matches
CaloRecGPU::MomentsOptionsArray Class Reference

Holds an array of bools to represent the different moments that may be calculated and transferred to/from the GPU. More...

#include <DataHolders.h>

Collaboration diagram for CaloRecGPU::MomentsOptionsArray:

Public Member Functions

bool & operator[] (const int moment)
bool operator[] (const int moment) const

Static Public Member Functions

static int moment_to_linear (const int moment)
static MomentsOptionsArray all ()

Public Attributes

bool array [num_moments+1] {}

Static Public Attributes

static constexpr int num_moments = 72

Detailed Description

Holds an array of bools to represent the different moments that may be calculated and transferred to/from the GPU.

While the GPU calculation itself does not skip the computation of any moments (especially since there are some complex inter-dependencies), if only a subset of them is needed, it can cut down on data transfer and especially data conversion times to not consider the rest.

Definition at line 49 of file DataHolders.h.

Member Function Documentation

◆ all()

CaloRecGPU::MomentsOptionsArray CaloRecGPU::MomentsOptionsArray::all ( )
static

Definition at line 198 of file DataHolders.cxx.

199{
200 CaloRecGPU::MomentsOptionsArray ret;
201
202 for (int i = 0; i < num_moments; ++i)
203 {
204 ret.array[i] = true;
205 }
206
207 return ret;
208}
bool array[num_moments+1]
Definition DataHolders.h:52
static constexpr int num_moments
Definition DataHolders.h:51

◆ moment_to_linear()

int CaloRecGPU::MomentsOptionsArray::moment_to_linear ( const int moment)
static

Definition at line 35 of file DataHolders.cxx.

36{
37 switch (moment)
38 {
39 default:
40 return num_moments;
42 return 0;
44 return 1;
46 return 2;
48 return 3;
50 return 4;
52 return 5;
54 return 6;
56 return 7;
58 return 8;
60 return 9;
62 return 10;
64 return 11;
66 return 12;
68 return 13;
70 return 14;
72 return 15;
74 return 16;
76 return 17;
78 return 18;
80 return 19;
82 return 20;
84 return 21;
86 return 22;
88 return 23;
90 return 24;
92 return 25;
94 return 26;
96 return 27;
98 return 28;
100 return 29;
102 return 30;
104 return 31;
106 return 32;
108 return 33;
110 return 34;
112 return 35;
114 return 36;
116 return 37;
118 return 38;
120 return 39;
122 return 40;
124 return 41;
126 return 42;
128 return 43;
130 return 44;
132 return 45;
134 return 46;
136 return 47;
138 return 48;
140 return 49;
142 return 50;
144 return 51;
146 return 52;
148 return 53;
150 return 54;
152 return 55;
154 return 56;
156 return 57;
158 return 58;
160 return 59;
162 return 60;
164 return 61;
166 return 62;
168 return 63;
170 return 64;
172 return 65;
174 return 66;
176 return 67;
178 return 68;
180 return 69;
182 return 70;
184 return 71;
185 }
186}
@ ENG_CALIB_OUT_M
Attached Calibration Hit energy outside clusters but inside the calorimeter with medium matching (Ang...
@ PTD
relative spread of pT of constiuent cells = sqrt(n)*RMS/Mean
@ SECOND_ENG_DENS
Second Moment in E/V.
@ DELTA_PHI
Angular shower axis deviation ( ) from IP-to-Center.
@ ETA2CALOFRAME
Eta of sampling 2 in the calo frame (for egamma)
@ DELTA_ALPHA
Angular shower axis deviation ( ) from IP-to-Center.
@ OOC_WEIGHT
Out-of-cluster weight (E_ooc/E_w)
@ AVG_TILE_Q
Sum(E_cell_Tile^2 Q_cell_Tile)/Sum(E_cell_Tile^2)
@ DELTA_THETA
Angular shower axis deviation ( ) from IP-to-Center.
@ SECOND_LAMBDA
Second Moment in .
@ ETACALOFRAME
Eta in the calo frame (for egamma)
@ FIRST_PHI
First Moment in .
@ ENG_CALIB_OUT_L
Attached Calibration Hit energy outside clusters but inside the calorimeter with loose matching (Angl...
@ CELL_SIGNIFICANCE
Cell significance = E/sig of the cell with the largest |E|/sig.
@ CELL_SIG_SAMPLING
CaloSample of the cell with the largest |E|/sig.
@ EM_PROBABILITY
Classification probability to be em-like.
@ PHI2CALOFRAME
Phi of sampling 2 in the calo frame (for egamma)
@ VERTEX_FRACTION
Vertex fraction of this cluster wrt.
@ ENG_CALIB_DEAD_T
Attached Calibration Hit energy in dead material with tight matching (Angle < 0.3).
@ NCELL_SAMPLING
Number of cells in sampling layer.
@ NVERTEX_FRACTION
slightly updated vertex fraction more pile up independent (similar to nJVF)
@ SECOND_TIME
Second moment of cell time distribution in cluster.
@ N_BAD_CELLS_CORR
Number of bad cells with energy density average correction applied.
@ DM_WEIGHT
Dead-material weight (E_dm/E_ooc)
@ LATERAL
Normalized lateral moment.
@ N_BAD_CELLS
number of bad cells
@ LONGITUDINAL
Normalized longitudinal moment.
@ ENG_FRAC_MAX
Energy fraction of hottest cell.
@ AVG_LAR_Q
Sum(E_cell_LAr^2 Q_cell_LAr)/Sum(E_cell_LAr^2)
@ ENG_CALIB_DEAD_UNCLASS
Attached Calibration Hit energy in dead material in unclassified areas of the detector.
@ PHI1CALOFRAME
Phi of sampling 1 in the calo frame (for egamma)
@ ENG_FRAC_EM
Energy fraction in EM calorimeters.
@ SECOND_R
Second Moment in .
@ ENG_CALIB_DEAD_HEC0
Attached Calibration Hit energy in dead material between EME3 and HEC0.
@ FIRST_ETA
First Moment in .
@ PHICALOFRAME
Phi in the calo frame (for egamma)
@ ENG_BAD_HV_CELLS
Total em-scale energy of cells with bad HV in this cluster.
@ FIRST_ENG_DENS
First Moment in E/V.
@ HAD_WEIGHT
Hadronic weight (E_w/E_em)
@ ENG_CALIB_DEAD_TILEG3
Attached Calibration Hit energy in dead material before scintillator.
@ N_BAD_HV_CELLS
number of cells with bad HV
@ ENG_FRAC_CORE
Energy fraction of the sum of the hottest cells in each sampling.
@ CENTER_LAMBDA
Shower depth at Cluster Centroid.
@ SIGNIFICANCE
Cluster significance.
@ CENTER_MAG
Cluster Centroid ( )
@ MASS
cell based mass i.e. the mass of the 4-vector sum of all massless positive energetic cells
@ ENG_CALIB_DEAD_M
Attached Calibration Hit energy in dead material with medium matching (Angle < 0.5).
@ ENG_CALIB_FRAC_REST
Calibration Hit energy inside the cluster caused by other particles.
@ ENG_CALIB_DEAD_L
Attached Calibration Hit energy in dead material with loose matching (Angle < 1.0).
@ ENG_CALIB_DEAD_EME0
Attached Calibration Hit energy in dead material before EME0, between EME0 and EME1.
@ ENG_CALIB_DEAD_TILE0
Attached Calibration Hit energy in dead material between EMB3 and TILE0.
@ CENTER_Z
Cluster Centroid ( )
@ BAD_CELLS_CORR_E
Energy of bad cells with energy density average correction applied.
@ ETA1CALOFRAME
Eta of sampling 1 in the calo frame (for egamma)
@ ENG_CALIB_FRAC_EM
Calibration Hit energy inside the cluster caused by e/gamma/pi0.
@ ENG_BAD_CELLS
Total em-scale energy of bad cells in this cluster.
@ ENG_CALIB_DEAD_FCAL
Attached Calibration Hit energy in dead material before FCAL, between FCAL and HEC.
@ ENG_CALIB_TOT
Calibration Hit energy inside the cluster.
@ ENG_CALIB_OUT_T
Attached Calibration Hit energy outside clusters but inside the calorimeter with tight matching (Angl...
@ ENG_CALIB_DEAD_LEAKAGE
Attached Calibration Hit energy in dead material behind calorimeters.
@ ENG_CALIB_FRAC_HAD
Calibration Hit energy inside the cluster caused by charged pi+ and pi-.
@ ENG_CALIB_EMB0
Calibration Hit energy inside the cluster barrel presampler.
@ ENG_CALIB_EME0
Calibration Hit energy inside the cluster endcap presampler.
@ ENG_POS
Total positive Energy of this cluster.
@ BADLARQ_FRAC
Energy fraction of LAr cells with quality larger than a given cut.
@ CENTER_X
Cluster Centroid ( )
@ ENG_CALIB_DEAD_EMB0
Attached Calibration Hit energy in dead material before EMB0, between EMB0 and EMB1.
@ ISOLATION
Energy weighted fraction of non-clustered perimeter cells.
@ ENG_CALIB_DEAD_TOT
Attached Calibration Hit energy in dead material.
@ CENTER_Y
Cluster Centroid ( )
@ ENG_CALIB_TILEG3
Calibration Hit energy inside the cluster scintillator.
@ TILE_CONFIDENCE_LEVEL
Confidence Level of a tile calorimeter cluster to be noise.

◆ operator[]() [1/2]

bool & CaloRecGPU::MomentsOptionsArray::operator[] ( const int moment)

Definition at line 188 of file DataHolders.cxx.

189{
190 return array[moment_to_linear(moment)];
191}
static int moment_to_linear(const int moment)

◆ operator[]() [2/2]

bool CaloRecGPU::MomentsOptionsArray::operator[] ( const int moment) const

Definition at line 193 of file DataHolders.cxx.

194{
195 return array[moment_to_linear(moment)];
196}

Member Data Documentation

◆ array

bool CaloRecGPU::MomentsOptionsArray::array[num_moments+1] {}

Definition at line 52 of file DataHolders.h.

52{};

◆ num_moments

int CaloRecGPU::MomentsOptionsArray::num_moments = 72
staticconstexpr

Definition at line 51 of file DataHolders.h.


The documentation for this class was generated from the following files: