ATLAS Offline Software
CaloTopoClusterFromTowerHelpers.h
Go to the documentation of this file.
1 // -*- c++ -*-
2 /* Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration */
3 #ifndef CALOREC_CALOTOPOCLUSTERFROMTOWERHELPERS
4 #define CALOREC_CALOTOPOCLUSTERFROMTOWERHELPERS
5 
6 #include "CaloGeoHelpers/CaloSampling.h"
7 
9 
10 #include <cstdarg>
11 #include <string>
12 #include <map>
13 
14 #define _SNAMELU( NAME ) { CaloSampling::NAME , std::string( #NAME ) }
15 #define _SIDLU( ID ) { std::string( #ID ) , CaloSampling::ID }
16 
17 #define _MNAMELU( NAME ) { xAOD::CaloCluster::NAME, std::string( #NAME ) }
18 #define _MIDLU( ID ) { std::string( #ID ) , xAOD::CaloCluster::ID }
19 
20 class CaloCell;
21 
22 // namespace xAOD {
23 // class CaloCluster;
24 // }
25 
31 namespace CaloRec {
32  namespace Helpers {
35  typedef std::array<double,CaloSampling::Unknown> valarray_t;
36  typedef std::vector<bool> boolarray_t;
37 
42  std::string fmtMsg(const char* fmt,...) ;//{
43  // char _buffer[1024];
44  // va_list args;
45  // va_start(args,fmt);
46  // vsprintf(_buffer,fmt,args);
47  // va_end(args);
48  // return std::string(_buffer);
49  // }
51 
54  {
58  static void fill(valarray_t& array,double value=0.) { array.fill(value); }
59 
61  struct Sampling
62  {
72  Sampling()
74  : presenceInSample((size_t)CaloSampling::Unknown,false)
75  {
83  }
84  };
86 
88  struct Cluster
89  {
92  double cellWeight;
93  double cellAbsWeight;
94  double cellE;
95  double cellAbsE;
96  double accumE;
100  double accumAbsE;
101  double accumTimeNorm;
102  double accumEta;
103  double accumPhi;
104  double accumTime;
105  int nBarrel;
106  int nEndcap;
107  double phiSeed;
110  bool firstCell;
111  Cluster()
114  : cellWeight(0.)
115  , cellAbsWeight(0.)
116  , cellE(0.)
117  , cellAbsE(0.)
118  , accumE(0.)
119  , accumAbsE(0.)
120  , accumTimeNorm(0.)
121  , accumEta(0.)
122  , accumPhi(0.)
123  , accumTime(0.)
124  , nBarrel(0)
125  , nEndcap(0)
126  , phiSeed(0.)
127  , firstCell(true)
128  { }
129  };
131 
134  : sampling(), cluster()
135  { }
136  };
137 
148  bool cellAccumulator(const CaloCell& rcell,CaloClusterSignalAccumulator& accum,double weight,bool onlyKine=false);
155  bool calculateKine(xAOD::CaloCluster* pClus,bool onlyKine=false);
157  } // Helpers
158 
160  namespace Lookup {
163  static const std::map<CaloSampling::CaloSample,std::string> samplingNames = {
164  // EM
167  // HAD
170  // Tile
174  // FCal
176  // Mini-FCal
177  _SNAMELU( MINIFCAL0 ), _SNAMELU( MINIFCAL1 ), _SNAMELU( MINIFCAL2 ), _SNAMELU( MINIFCAL3 ),
178  // unknown
179  _SNAMELU( Unknown )
180  };
181  static const std::map<std::string,CaloSampling::CaloSample> samplingIds = {
182  // EM
185  // HAD
186  _SIDLU( HEC0 ), _SIDLU( HEC1 ), _SIDLU( HEC2 ), _SIDLU( HEC3 ),
188  // Tile
192  // FCal
193  _SIDLU( FCAL0 ), _SIDLU( FCAL1 ), _SIDLU( FCAL2 ),
194  // Mini-FCal
195  _SIDLU( MINIFCAL0 ), _SIDLU( MINIFCAL1 ), _SIDLU( MINIFCAL2 ), _SIDLU( MINIFCAL3 ),
196  // unknown
197  _SIDLU( Unknown )
198  };
199  static const std::string& getSamplingName(CaloSampling::CaloSample sid);
200  static CaloSampling::CaloSample getSamplingId(const std::string& sname);
201  static const std::map<xAOD::CaloCluster::MomentType,std::string> clusterMomentNames = {
205  _MNAMELU( FIRST_PHI ),_MNAMELU( FIRST_ETA ),_MNAMELU( SECOND_R ),_MNAMELU( SECOND_LAMBDA ),_MNAMELU( DELTA_PHI ),_MNAMELU( DELTA_THETA ),_MNAMELU( DELTA_ALPHA ),
206  _MNAMELU( CENTER_X ),_MNAMELU( CENTER_Y ),_MNAMELU( CENTER_Z ),_MNAMELU( CENTER_MAG ),_MNAMELU( CENTER_LAMBDA ),_MNAMELU( LATERAL ),_MNAMELU( LONGITUDINAL ),
207  _MNAMELU( ENG_FRAC_EM ),_MNAMELU( ENG_FRAC_MAX ),_MNAMELU( ENG_FRAC_CORE ),_MNAMELU( FIRST_ENG_DENS ),_MNAMELU( SECOND_ENG_DENS ),_MNAMELU( ENG_POS ),
208  _MNAMELU( ISOLATION ),_MNAMELU( ENG_BAD_CELLS ),_MNAMELU( N_BAD_CELLS ),_MNAMELU( N_BAD_CELLS_CORR ),_MNAMELU( BAD_CELLS_CORR_E ),_MNAMELU( BADLARQ_FRAC ),
209  _MNAMELU( SIGNIFICANCE ),_MNAMELU( CELL_SIGNIFICANCE ),_MNAMELU( CELL_SIG_SAMPLING ),_MNAMELU( AVG_LAR_Q ),_MNAMELU( AVG_TILE_Q ),_MNAMELU( ENG_BAD_HV_CELLS ),
210  _MNAMELU( N_BAD_HV_CELLS ),_MNAMELU( PTD ),_MNAMELU( MASS ),_MNAMELU( EM_PROBABILITY ),_MNAMELU( HAD_WEIGHT ),_MNAMELU( OOC_WEIGHT ),_MNAMELU( DM_WEIGHT ),
211  _MNAMELU( TILE_CONFIDENCE_LEVEL ),_MNAMELU( VERTEX_FRACTION ),_MNAMELU( NVERTEX_FRACTION ),_MNAMELU( ETACALOFRAME ),_MNAMELU( PHICALOFRAME ),_MNAMELU( ETA1CALOFRAME ),
212  _MNAMELU( PHI1CALOFRAME ),_MNAMELU( ETA2CALOFRAME ),_MNAMELU( PHI2CALOFRAME ),_MNAMELU( ENG_CALIB_TOT ),_MNAMELU( ENG_CALIB_OUT_L ),_MNAMELU( ENG_CALIB_OUT_M ),
213  _MNAMELU( ENG_CALIB_OUT_T ),_MNAMELU( ENG_CALIB_DEAD_L ),_MNAMELU( ENG_CALIB_DEAD_M ),_MNAMELU( ENG_CALIB_DEAD_T ),_MNAMELU( ENG_CALIB_EMB0 ),_MNAMELU( ENG_CALIB_EME0 ),
214  _MNAMELU( ENG_CALIB_TILEG3 ),_MNAMELU( ENG_CALIB_DEAD_TOT ),_MNAMELU( ENG_CALIB_DEAD_EMB0 ),_MNAMELU( ENG_CALIB_DEAD_TILE0 ),_MNAMELU( ENG_CALIB_DEAD_TILEG3 ),
215  _MNAMELU( ENG_CALIB_DEAD_EME0 ),_MNAMELU( ENG_CALIB_DEAD_HEC0 ),_MNAMELU( ENG_CALIB_DEAD_FCAL ),_MNAMELU( ENG_CALIB_DEAD_LEAKAGE ),_MNAMELU( ENG_CALIB_DEAD_UNCLASS ),
216  _MNAMELU( ENG_CALIB_FRAC_EM ),_MNAMELU( ENG_CALIB_FRAC_HAD ),_MNAMELU( ENG_CALIB_FRAC_REST ),_MNAMELU( ENERGY_DigiHSTruth ),_MNAMELU( ETA_DigiHSTruth ),_MNAMELU( PHI_DigiHSTruth ),
217  _MNAMELU( TIME_DigiHSTruth ),_MNAMELU( ENERGY_CALIB_DigiHSTruth ),_MNAMELU( ETA_CALIB_DigiHSTruth ),_MNAMELU( PHI_CALIB_DigiHSTruth ),_MNAMELU( TIME_CALIB_DigiHSTruth ),
218  _MNAMELU( FIRST_PHI_DigiHSTruth ),_MNAMELU( FIRST_ETA_DigiHSTruth ),_MNAMELU( SECOND_R_DigiHSTruth ),_MNAMELU( SECOND_LAMBDA_DigiHSTruth ),_MNAMELU( DELTA_PHI_DigiHSTruth ),
219  _MNAMELU( DELTA_THETA_DigiHSTruth ),_MNAMELU( DELTA_ALPHA_DigiHSTruth ),_MNAMELU( CENTER_X_DigiHSTruth ),_MNAMELU( CENTER_Y_DigiHSTruth ),_MNAMELU( CENTER_Z_DigiHSTruth ),
220  _MNAMELU( CENTER_MAG_DigiHSTruth ),_MNAMELU( CENTER_LAMBDA_DigiHSTruth ),_MNAMELU( LATERAL_DigiHSTruth ),_MNAMELU( LONGITUDINAL_DigiHSTruth ),_MNAMELU( ENG_FRAC_EM_DigiHSTruth ),
221  _MNAMELU( ENG_FRAC_MAX_DigiHSTruth ),_MNAMELU( ENG_FRAC_CORE_DigiHSTruth ),_MNAMELU( FIRST_ENG_DENS_DigiHSTruth ),_MNAMELU( SECOND_ENG_DENS_DigiHSTruth ),
222  _MNAMELU( ISOLATION_DigiHSTruth ),_MNAMELU( ENG_BAD_CELLS_DigiHSTruth ),_MNAMELU( N_BAD_CELLS_DigiHSTruth ),_MNAMELU( N_BAD_CELLS_CORR_DigiHSTruth ),
223  _MNAMELU( BAD_CELLS_CORR_E_DigiHSTruth ),_MNAMELU( BADLARQ_FRAC_DigiHSTruth ),_MNAMELU( ENG_POS_DigiHSTruth ),_MNAMELU( SIGNIFICANCE_DigiHSTruth ),
224  _MNAMELU( CELL_SIGNIFICANCE_DigiHSTruth ),_MNAMELU( CELL_SIG_SAMPLING_DigiHSTruth ),_MNAMELU( AVG_LAR_Q_DigiHSTruth ),_MNAMELU( AVG_TILE_Q_DigiHSTruth ),
225  _MNAMELU( ENG_BAD_HV_CELLS_DigiHSTruth ),_MNAMELU( N_BAD_HV_CELLS_DigiHSTruth ),_MNAMELU( EM_PROBABILITY_DigiHSTruth ),_MNAMELU( HAD_WEIGHT_DigiHSTruth ),
226  _MNAMELU( OOC_WEIGHT_DigiHSTruth ),_MNAMELU( DM_WEIGHT_DigiHSTruth )
227  };
228  static const std::map<std::string,xAOD::CaloCluster::MomentType> clusterMomentTypes = {
229  _MIDLU( FIRST_PHI ),_MIDLU( FIRST_ETA ),_MIDLU( SECOND_R ),_MIDLU( SECOND_LAMBDA ),_MIDLU( DELTA_PHI ),_MIDLU( DELTA_THETA ),_MIDLU( DELTA_ALPHA ),
230  _MIDLU( CENTER_X ),_MIDLU( CENTER_Y ),_MIDLU( CENTER_Z ),_MIDLU( CENTER_MAG ),_MIDLU( CENTER_LAMBDA ),_MIDLU( LATERAL ),_MIDLU( LONGITUDINAL ),
231  _MIDLU( ENG_FRAC_EM ),_MIDLU( ENG_FRAC_MAX ),_MIDLU( ENG_FRAC_CORE ),_MIDLU( FIRST_ENG_DENS ),_MIDLU( SECOND_ENG_DENS ),_MIDLU( ENG_POS ),
232  _MIDLU( ISOLATION ),_MIDLU( ENG_BAD_CELLS ),_MIDLU( N_BAD_CELLS ),_MIDLU( N_BAD_CELLS_CORR ),_MIDLU( BAD_CELLS_CORR_E ),_MIDLU( BADLARQ_FRAC ),
233  _MIDLU( SIGNIFICANCE ),_MIDLU( CELL_SIGNIFICANCE ),_MIDLU( CELL_SIG_SAMPLING ),_MIDLU( AVG_LAR_Q ),_MIDLU( AVG_TILE_Q ),_MIDLU( ENG_BAD_HV_CELLS ),
234  _MIDLU( N_BAD_HV_CELLS ),_MIDLU( PTD ),_MIDLU( MASS ),_MIDLU( EM_PROBABILITY ),_MIDLU( HAD_WEIGHT ),_MIDLU( OOC_WEIGHT ),_MIDLU( DM_WEIGHT ),
235  _MIDLU( TILE_CONFIDENCE_LEVEL ),_MIDLU( VERTEX_FRACTION ),_MIDLU( NVERTEX_FRACTION ),_MIDLU( ETACALOFRAME ),_MIDLU( PHICALOFRAME ),_MIDLU( ETA1CALOFRAME ),
236  _MIDLU( PHI1CALOFRAME ),_MIDLU( ETA2CALOFRAME ),_MIDLU( PHI2CALOFRAME ),_MIDLU( ENG_CALIB_TOT ),_MIDLU( ENG_CALIB_OUT_L ),_MIDLU( ENG_CALIB_OUT_M ),
237  _MIDLU( ENG_CALIB_OUT_T ),_MIDLU( ENG_CALIB_DEAD_L ),_MIDLU( ENG_CALIB_DEAD_M ),_MIDLU( ENG_CALIB_DEAD_T ),_MIDLU( ENG_CALIB_EMB0 ),_MIDLU( ENG_CALIB_EME0 ),
238  _MIDLU( ENG_CALIB_TILEG3 ),_MIDLU( ENG_CALIB_DEAD_TOT ),_MIDLU( ENG_CALIB_DEAD_EMB0 ),_MIDLU( ENG_CALIB_DEAD_TILE0 ),_MIDLU( ENG_CALIB_DEAD_TILEG3 ),
239  _MIDLU( ENG_CALIB_DEAD_EME0 ),_MIDLU( ENG_CALIB_DEAD_HEC0 ),_MIDLU( ENG_CALIB_DEAD_FCAL ),_MIDLU( ENG_CALIB_DEAD_LEAKAGE ),_MIDLU( ENG_CALIB_DEAD_UNCLASS ),
240  _MIDLU( ENG_CALIB_FRAC_EM ),_MIDLU( ENG_CALIB_FRAC_HAD ),_MIDLU( ENG_CALIB_FRAC_REST ),_MIDLU( ENERGY_DigiHSTruth ),_MIDLU( ETA_DigiHSTruth ),_MIDLU( PHI_DigiHSTruth ),
241  _MIDLU( TIME_DigiHSTruth ),_MIDLU( ENERGY_CALIB_DigiHSTruth ),_MIDLU( ETA_CALIB_DigiHSTruth ),_MIDLU( PHI_CALIB_DigiHSTruth ),_MIDLU( TIME_CALIB_DigiHSTruth ),
242  _MIDLU( FIRST_PHI_DigiHSTruth ),_MIDLU( FIRST_ETA_DigiHSTruth ),_MIDLU( SECOND_R_DigiHSTruth ),_MIDLU( SECOND_LAMBDA_DigiHSTruth ),_MIDLU( DELTA_PHI_DigiHSTruth ),
243  _MIDLU( DELTA_THETA_DigiHSTruth ),_MIDLU( DELTA_ALPHA_DigiHSTruth ),_MIDLU( CENTER_X_DigiHSTruth ),_MIDLU( CENTER_Y_DigiHSTruth ),_MIDLU( CENTER_Z_DigiHSTruth ),
244  _MIDLU( CENTER_MAG_DigiHSTruth ),_MIDLU( CENTER_LAMBDA_DigiHSTruth ),_MIDLU( LATERAL_DigiHSTruth ),_MIDLU( LONGITUDINAL_DigiHSTruth ),_MIDLU( ENG_FRAC_EM_DigiHSTruth ),
245  _MIDLU( ENG_FRAC_MAX_DigiHSTruth ),_MIDLU( ENG_FRAC_CORE_DigiHSTruth ),_MIDLU( FIRST_ENG_DENS_DigiHSTruth ),_MIDLU( SECOND_ENG_DENS_DigiHSTruth ),
246  _MIDLU( ISOLATION_DigiHSTruth ),_MIDLU( ENG_BAD_CELLS_DigiHSTruth ),_MIDLU( N_BAD_CELLS_DigiHSTruth ),_MIDLU( N_BAD_CELLS_CORR_DigiHSTruth ),
247  _MIDLU( BAD_CELLS_CORR_E_DigiHSTruth ),_MIDLU( BADLARQ_FRAC_DigiHSTruth ),_MIDLU( ENG_POS_DigiHSTruth ),_MIDLU( SIGNIFICANCE_DigiHSTruth ),
248  _MIDLU( CELL_SIGNIFICANCE_DigiHSTruth ),_MIDLU( CELL_SIG_SAMPLING_DigiHSTruth ),_MIDLU( AVG_LAR_Q_DigiHSTruth ),_MIDLU( AVG_TILE_Q_DigiHSTruth ),
249  _MIDLU( ENG_BAD_HV_CELLS_DigiHSTruth ),_MIDLU( N_BAD_HV_CELLS_DigiHSTruth ),_MIDLU( EM_PROBABILITY_DigiHSTruth ),_MIDLU( HAD_WEIGHT_DigiHSTruth ),
250  _MIDLU( OOC_WEIGHT_DigiHSTruth ),_MIDLU( DM_WEIGHT_DigiHSTruth )
251  };
252  static const std::string& getMomentName(xAOD::CaloCluster::MomentType momentType);
253  static bool getMomentType(const std::string& momentName,xAOD::CaloCluster::MomentType& momentType);
254  static bool haveMomentType(const std::string& momentName);
255  } // Lookup
257 } // CaloRec
258 
259 inline const std::string& CaloRec::Lookup::getSamplingName(CaloSampling::CaloSample sid) { return samplingNames.find(sid)->second; }
260 inline CaloSampling::CaloSample CaloRec::Lookup::getSamplingId(const std::string& sname) {
261  auto fid(samplingIds.find(sname)); return fid != samplingIds.end() ? fid->second : samplingIds.find("Unknown")->second;
262 }
263 
264 inline bool CaloRec::Lookup::haveMomentType(const std::string& momentName) { return clusterMomentTypes.contains(momentName); }
265 inline const std::string& CaloRec::Lookup::getMomentName(xAOD::CaloCluster::MomentType momentType) { return clusterMomentNames.at(momentType); }
266 inline bool CaloRec::Lookup::getMomentType(const std::string& momentName,xAOD::CaloCluster::MomentType& momentType) {
267  bool isOk(haveMomentType(momentName)); if ( isOk ) { momentType = clusterMomentTypes.at(momentName); } return isOk;
268 }
269 
270 
271 #endif
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::cellWeight
double cellWeight
Signal weight.
Definition: CaloTopoClusterFromTowerHelpers.h:92
TauGNNUtils::Variables::Cluster::CENTER_LAMBDA
bool CENTER_LAMBDA(const xAOD::TauJet &, const xAOD::CaloVertexedTopoCluster &cluster, double &out)
Definition: TauGNNUtils.cxx:840
CaloCell_ID_FCS::TileExt2
@ TileExt2
Definition: FastCaloSim_CaloCell_ID.h:39
constants.EMB1
int EMB1
Definition: Calorimeter/CaloClusterCorrection/python/constants.py:53
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::posNormInSample
valarray_t posNormInSample
Positive (absolute) normalization energy.
Definition: CaloTopoClusterFromTowerHelpers.h:71
TauGNNUtils::Variables::Cluster::EM_PROBABILITY
bool EM_PROBABILITY(const xAOD::TauJet &, const xAOD::CaloVertexedTopoCluster &cluster, double &out)
Definition: TauGNNUtils.cxx:909
CaloCell_ID_FCS::TileExt0
@ TileExt0
Definition: FastCaloSim_CaloCell_ID.h:37
CaloCell_ID_FCS::TileBar1
@ TileBar1
Definition: FastCaloSim_CaloCell_ID.h:32
CaloRec::Helpers::CaloClusterSignalAccumulator
Cache for data accumulator.
Definition: CaloTopoClusterFromTowerHelpers.h:54
CaloRec::Helpers::CaloClusterSignalAccumulator::cluster
Cluster cluster
Definition: CaloTopoClusterFromTowerHelpers.h:130
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::accumTime
double accumTime
Time.
Definition: CaloTopoClusterFromTowerHelpers.h:104
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::presenceInSample
boolarray_t presenceInSample
Flag for presens of sampling in cluster.
Definition: CaloTopoClusterFromTowerHelpers.h:64
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::accumPhi
double accumPhi
Accumulated energy-weighted phi.
Definition: CaloTopoClusterFromTowerHelpers.h:103
CaloSampling
provides Calorimeter Sampling enum
Definition: Calorimeter/CaloGeoHelpers/CaloGeoHelpers/CaloSampling.h:17
CaloRec::Helpers::boolarray_t
std::vector< bool > boolarray_t
Vector of flags indicating sampling contribution.
Definition: CaloTopoClusterFromTowerHelpers.h:36
CaloCell_ID_FCS::FCAL1
@ FCAL1
Definition: FastCaloSim_CaloCell_ID.h:41
athena.value
value
Definition: athena.py:124
CaloRec::Helpers::fmtMsg
std::string fmtMsg(const char *fmt,...)
Definition: CaloTopoClusterFromTowerHelpers.cxx:13
CaloCell_ID_FCS::HEC2
@ HEC2
Definition: FastCaloSim_CaloCell_ID.h:29
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::etaInSample
valarray_t etaInSample
Eta.
Definition: CaloTopoClusterFromTowerHelpers.h:66
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::phiSeed
double phiSeed
Phi seed.
Definition: CaloTopoClusterFromTowerHelpers.h:109
CaloRec::Helpers::CaloClusterSignalAccumulator::CaloClusterSignalAccumulator
CaloClusterSignalAccumulator()
Constructor.
Definition: CaloTopoClusterFromTowerHelpers.h:133
CaloCell_ID_FCS::TileGap3
@ TileGap3
Definition: FastCaloSim_CaloCell_ID.h:36
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::energyInSample
valarray_t energyInSample
Energy.
Definition: CaloTopoClusterFromTowerHelpers.h:65
CaloRec::Helpers::valarray_t
std::array< double, CaloSampling::Unknown > valarray_t
Array accommodating data for samplings.
Definition: CaloTopoClusterFromTowerHelpers.h:35
CaloRec::Helpers::CaloClusterSignalAccumulator::fill
static void fill(valarray_t &array, double value=0.)
Pre-fill array with given value.
Definition: CaloTopoClusterFromTowerHelpers.h:58
dqt_zlumi_pandas.weight
int weight
Definition: dqt_zlumi_pandas.py:189
xAOD::CaloCluster_v1::MomentType
MomentType
Enums to identify different moments.
Definition: CaloCluster_v1.h:120
_MIDLU
#define _MIDLU(ID)
Definition: CaloTopoClusterFromTowerHelpers.h:18
CaloRec::Helpers::cellAccumulator
bool cellAccumulator(const CaloCell &rcell, CaloClusterSignalAccumulator &accum, double weight, bool onlyKine=false)
Definition: CaloTopoClusterFromTowerHelpers.cxx:23
xAOD::CaloCluster_v1
Description of a calorimeter cluster.
Definition: CaloCluster_v1.h:59
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::accumE
double accumE
Signal.
Definition: CaloTopoClusterFromTowerHelpers.h:99
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::Cluster
Cluster()
Constructor.
Definition: CaloTopoClusterFromTowerHelpers.h:113
CaloCell_ID_FCS::HEC1
@ HEC1
Definition: FastCaloSim_CaloCell_ID.h:28
constants.EMB2
int EMB2
Definition: Calorimeter/CaloClusterCorrection/python/constants.py:54
CaloSampling::CaloSample
CaloSample
Definition: Calorimeter/CaloGeoHelpers/CaloGeoHelpers/CaloSampling.h:22
CaloCluster.h
CaloCell_ID_FCS::TileBar0
@ TileBar0
Definition: FastCaloSim_CaloCell_ID.h:31
CaloCell_ID_FCS::TileGap2
@ TileGap2
Definition: FastCaloSim_CaloCell_ID.h:35
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::nBarrel
int nBarrel
Number of cells in barrel.
Definition: CaloTopoClusterFromTowerHelpers.h:105
constants.EME1
int EME1
Definition: Calorimeter/CaloClusterCorrection/python/constants.py:55
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::cellE
double cellE
Signal.
Definition: CaloTopoClusterFromTowerHelpers.h:94
TauGNNUtils::Variables::Cluster::SECOND_LAMBDA
bool SECOND_LAMBDA(const xAOD::TauJet &, const xAOD::CaloVertexedTopoCluster &cluster, double &out)
Definition: TauGNNUtils.cxx:835
_MNAMELU
#define _MNAMELU(NAME)
Definition: CaloTopoClusterFromTowerHelpers.h:17
CaloCell_ID_FCS::TileGap1
@ TileGap1
Definition: FastCaloSim_CaloCell_ID.h:34
_SNAMELU
#define _SNAMELU(NAME)
Definition: CaloTopoClusterFromTowerHelpers.h:14
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster
Cluster quantities.
Definition: CaloTopoClusterFromTowerHelpers.h:89
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::Sampling
Sampling()
Definition: CaloTopoClusterFromTowerHelpers.h:73
lumiFormat.array
array
Definition: lumiFormat.py:91
CaloRec::Helpers::calculateKine
bool calculateKine(xAOD::CaloCluster *pClus, bool onlyKine=false)
Kinematic updates.
Definition: CaloTopoClusterFromTowerHelpers.cxx:118
CaloRec
Namespace for helper functions.
Definition: CaloCellFactor.h:22
CaloCell_ID_FCS::TileExt1
@ TileExt1
Definition: FastCaloSim_CaloCell_ID.h:38
CaloCell_ID_FCS::EME3
@ EME3
Definition: FastCaloSim_CaloCell_ID.h:26
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::phiMaxEnergyInSample
valarray_t phiMaxEnergyInSample
Phi of maximum energy.
Definition: CaloTopoClusterFromTowerHelpers.h:70
TauGNNUtils::Variables::Cluster::SECOND_R
bool SECOND_R(const xAOD::TauJet &, const xAOD::CaloVertexedTopoCluster &cluster, double &out)
Definition: TauGNNUtils.cxx:830
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::accumAbsE
double accumAbsE
Absolute signal.
Definition: CaloTopoClusterFromTowerHelpers.h:100
CaloCell_ID_FCS::HEC0
@ HEC0
Definition: FastCaloSim_CaloCell_ID.h:27
TauGNNUtils::Variables::Cluster::CENTER_MAG
bool CENTER_MAG(const xAOD::TauJet &, const xAOD::CaloVertexedTopoCluster &cluster, double &out)
Definition: TauGNNUtils.cxx:916
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::firstCell
bool firstCell
Flags first cell.
Definition: CaloTopoClusterFromTowerHelpers.h:110
fmt
CaloCell
Data object for each calorimeter readout cell.
Definition: CaloCell.h:57
CaloCell_ID_FCS::PreSamplerE
@ PreSamplerE
Definition: FastCaloSim_CaloCell_ID.h:23
CaloCell_ID_FCS::PreSamplerB
@ PreSamplerB
Definition: FastCaloSim_CaloCell_ID.h:19
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::cellAbsE
double cellAbsE
Absolute signal.
Definition: CaloTopoClusterFromTowerHelpers.h:95
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::cellAbsWeight
double cellAbsWeight
Absolute Signal weight.
Definition: CaloTopoClusterFromTowerHelpers.h:93
TauGNNUtils::Variables::Cluster::FIRST_ENG_DENS
bool FIRST_ENG_DENS(const xAOD::TauJet &, const xAOD::CaloVertexedTopoCluster &cluster, double &out)
Definition: TauGNNUtils.cxx:902
CaloCell_ID_FCS::FCAL2
@ FCAL2
Definition: FastCaloSim_CaloCell_ID.h:42
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::nEndcap
int nEndcap
Number of cells in endcap.
Definition: CaloTopoClusterFromTowerHelpers.h:106
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::phiInSample
valarray_t phiInSample
Phi.
Definition: CaloTopoClusterFromTowerHelpers.h:67
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::maxEnergyInSample
valarray_t maxEnergyInSample
Maxmimum energy.
Definition: CaloTopoClusterFromTowerHelpers.h:68
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::accumEta
double accumEta
Accumulated energy-weighted eta.
Definition: CaloTopoClusterFromTowerHelpers.h:102
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling::etaMaxEnergyInSample
valarray_t etaMaxEnergyInSample
Eta of maximum energy.
Definition: CaloTopoClusterFromTowerHelpers.h:69
CaloRec::Helpers::CaloClusterSignalAccumulator::Cluster::accumTimeNorm
double accumTimeNorm
Time normalization.
Definition: CaloTopoClusterFromTowerHelpers.h:101
CaloCell_ID_FCS::HEC3
@ HEC3
Definition: FastCaloSim_CaloCell_ID.h:30
CaloCell_ID_FCS::FCAL0
@ FCAL0
Definition: FastCaloSim_CaloCell_ID.h:40
CaloCell_ID_FCS::EMB3
@ EMB3
Definition: FastCaloSim_CaloCell_ID.h:22
CaloRec::Helpers::CaloClusterSignalAccumulator::sampling
Sampling sampling
Definition: CaloTopoClusterFromTowerHelpers.h:85
CaloCell_ID_FCS::TileBar2
@ TileBar2
Definition: FastCaloSim_CaloCell_ID.h:33
constants.EME2
int EME2
Definition: Calorimeter/CaloClusterCorrection/python/constants.py:56
_SIDLU
#define _SIDLU(ID)
Definition: CaloTopoClusterFromTowerHelpers.h:15
CaloRec::Helpers::CaloClusterSignalAccumulator::Sampling
Sampling quantities.
Definition: CaloTopoClusterFromTowerHelpers.h:62