ATLAS Offline Software
CaloNoiseCompCondAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
11 #ifndef CALOCONDPHYSALGS_CaloNoiseCompCondAlg_H
12 #define CALOCONDPHYSALGS_CaloNoiseCompCondAlg_H
13 
15 #include "CaloDetDescr/CaloDetDescrManager.h" //read handle
16 #include "CaloIdentifier/CaloCell_ID.h" //use of enum in namespace
17 #include "CaloConditions/CaloNoise.h" //write handle
18 #include "CaloIdentifier/CaloGain.h" //use of enum in namespace
19 #include "LArCabling/LArOnOffIdMapping.h" //read handle
20 #include "LArElecCalib/ILArShape.h" //read handle
21 #include "LArElecCalib/ILArPedestal.h" //read handle
22 #include "LArElecCalib/ILArfSampl.h" //read handle
23 #include "LArElecCalib/ILArMinBias.h" //read handle
24 #include "LArElecCalib/ILArAutoCorr.h" //read handle
25 #include "LArRawConditions/LArADC2MeV.h" //read handle
26 #include "LArRawConditions/LArOFC.h" //read handle
27 #include "LArElecCalib/ILArNoise.h"
29 
30 class AtlasDetectorID;
31 class CaloIdManager;
32 class CaloCell;
33 
34 typedef std::vector< std::vector<float> > VectorContainer;
35 typedef std::vector< float > SingleContainer;
36 
41  ELECTRONICNOISE = 100, /* return the electronic noise */
42  ELECTRONICNOISE_HIGHESTGAIN = 101, /* same in highest gain */
43  PILEUPNOISE = 200, /* return the pileup noise */
44  PILEUPNOISE_HIGHESTGAIN = 201, /* return the pileup noise */
45  TOTALNOISE = 300, /* return the total noise */
46  TOTALNOISE_HIGHESTGAIN = 301, /* return the total noise */
47  JOBOPTION = 9999 /* defined by jobOptions */ };
48 
50  ONLYRIGHTSIDEINTEGRATION = 0, /* integral pdf from E to infinity (or -infinity to E is E<0) */
51  ABSOLUTEENERGYVALUE = 1, /* integral pdf from abs(E) to infinity */
52  MAXSYMMETRYHANDLING = 9999 /* defined by jobOptions */ };
53 
55  NCALOS = 4,
56  NGAINS = 3,};
57 
58 namespace CLHEP { class HepRandomEngine; }
59 
61 
62  public:
63 
65  CaloNoiseCompCondAlg(const std::string& name, ISvcLocator* pSvcLocator);
67  virtual ~CaloNoiseCompCondAlg() = default;
68 
70  virtual StatusCode initialize() override final;
72  virtual StatusCode execute() override final;
74  virtual StatusCode finalize() override final {return StatusCode::SUCCESS;};
75 
76  //-------------- user interfaces ------------------------------------------
77  // Note on NMinBias : if you use the interface without it or if you take -1,
78  // the returned data will be the one calculated at the
79  // initialization with the default value (0) or the
80  // specified one (with the property m_Nminbias).
81  // In all cases, the NMinBias used to calculate the OFCs
82  // is NOT known by CaloNoiseCompCondAlg (CaloNoiseCompCondAlg always
83  // recomputes OFCs for its own needs)
84 
85 
86 
87 
88 
89  //== ELECTRONIC NOISE ==
90 
91  //''''''''' functions to use currently
92 
93  float elecNoiseRMS(const CaloCell* caloCell);
94  //Returns the sigma of the electronic noise, finding itself the right gain
95  //from the energy of the given caloCell.
96 
97 
98  float elecNoiseRMS(const CaloDetDescrElement* caloDDE,
99  const CaloGain::CaloGain gain);
100  //Returns the sigma of the electronic noise for the given caloDDE, gain and
101  //the number of minimum bias events per bunch crossing.
102 
103  std::vector<float>
104  elecNoiseRMS3gains(const CaloDetDescrElement* caloDDE);
105  //Returns a vector containing the sigma of the electronic noise for the
106  //given caloDDE, for each gain of the considered calorimeter
107  //(eg: vector of 3 sigma3 gains for LAr)
108 
109 
110 
111  //== PILEUP NOISE ==
112 
113  float pileupNoiseRMS(const CaloCell* caloCell,
114  const float Nminbias=-1);
115  float pileupNoiseRMS(const CaloDetDescrElement* caloDDE,
116  const float Nminbias=-1);
117  //Nminbias is the number of minimum-bias events per bunch-crossing
118  // (default is 0 (set in the constructor) )
119 
120  //== TOTAL NOISE ==
121 
122  float totalNoiseRMS(const CaloCell* caloCell,
123  const float Nminbias=-1);
124  float totalNoiseRMS(const CaloDetDescrElement* caloDDE,
125  const CaloGain::CaloGain gain,
126  const float Nminbias=-1);
127  float totalNoiseRMSHighestGain(const CaloCell* caloCell,
128  const float Nminbias=-1);
129  float totalNoiseRMSHighestGain(const CaloDetDescrElement* caloDDE,
130  const float Nminbias=-1);
131 
132 
133 
134  //== GAIN ==
137  const CaloDetDescrElement* caloDDE);
139  const float &energy);
140 
141  //== ADDITIONNAL STUFF ==
142  // these functions will be replaced soon by dedicated tools,
143  // so please AVOID TO USING THEM
144 
145  //float eScale(const CaloDetDescrElement* caloDDE);
146  //Returns the scale between RawChannels and Cells, i.e
147  //what returns LArG3Escale
148 
149  float adc2mev(const CaloDetDescrElement* caloDDE,
150  const CaloGain::CaloGain gain);
151  //Returns adc2mev factor for the given caloDDE and gain
152 
153  float adc2mev(const Identifier& id,const CaloGain::CaloGain gain);
154  //Returns adc2mev factor for the given ID and gain
155  //SHOULD NOT BE USED ANYMORE, prefer the one above with caloDDE
156 
157  private:
158 
159  std::string m_ReturnNoiseName;
160 
161 
162  //Constants
163  static constexpr int m_nCalos=NCALOS;// number of calorimeters
164  static constexpr int m_nGains=NGAINS;// number of gains
168 
171  int m_nReason[5000][m_nGains]{};
172  int m_itReason[10][m_nGains]{};
173  int m_idHash[5000][m_nGains]{};
174  int m_reason[5000][10][m_nGains]{};
175 
176  std::string m_reasonName[10];
177 
178  //Identifiers
180 
182 
186 
187 
190 
195 
196 
197 
198  // Properties
199  IntegerProperty m_deltaBunch{this, "deltaBunch", 1};
200  UnsignedIntegerProperty m_firstSample{this, "firstSample", 0};
201  BooleanProperty m_UseSymmetry{this, "UseSymmetry", true};
202  BooleanProperty m_DiagnosticHG{this, "DiagnosticHG", false};
203  BooleanProperty m_DiagnosticMG{this, "DiagnosticMG", false};
204  BooleanProperty m_DiagnosticLG{this, "DiagnosticLG", false};
205  BooleanProperty m_DumpDatabaseHG{this, "DumpDatabaseHG", false};
206  BooleanProperty m_DumpDatabaseMG{this, "DumpDatabaseMG", false};
207  BooleanProperty m_DumpDatabaseLG{this, "DumpDatabaseLG", false};
208  FloatProperty m_Nminbias{this, "NMinBias", -1};
209 
210 
211  //Database
212 
217  float m_c[32][32]{};
218  float m_RMSpedestal{};
219  int m_nsamples{};
220  float m_SigmaNoise{};
221  float m_fSampl{};
222  double m_AdcPerMev{};
223  float m_MinBiasRMS{};
224 
225  SG::ReadCondHandleKey<CaloDetDescrManager> m_caloMgrKey {this,"CaloDetDescrManager", "CaloDetDescrManager", "SG Key for CaloDetDescrManager in the Condition Store" };
227 
228  SG::ReadCondHandleKey<LArOnOffIdMapping> m_cablingKey{this,"CablingKey","LArOnOffIdMap","SG Key of LArOnOffIdMapping object"};
229  const LArOnOffIdMapping *m_cabling=nullptr;
230 
231  SG::ReadCondHandleKey<LArADC2MeV> m_adc2mevKey{this, "ADC2MeVKey", "LArADC2MeV", "SG Key of the LArADC2MeV CDO" };
232 
233  SG::ReadCondHandleKey<ILArPedestal> m_pedestalKey{this,"PedestalKey","LArPedestal","SG Key of LArPedestal object"};
234  const ILArPedestal *m_ped=nullptr;
235 
236  SG::ReadCondHandleKey<ILArNoise> m_noiseKey{this,"NoiseKey","","SG Key of LArNoise object"};
237  const ILArNoise *m_noise=nullptr;
238 
239  SG::ReadCondHandleKey<ILArAutoCorr> m_acorrKey{this,"AutocorrKey","LArAutoCorrSym","SG Key of LArAutoCorr object"};
240  const ILArAutoCorr *m_acorr=nullptr;
241 
242  SG::ReadCondHandleKey<ILArOFC> m_LArOFCObjKey{this, "OFKey","LArOFC", "SG Key of LAr OFCs"};
243  const ILArOFC *m_ofccond=nullptr;
244 
245  SG::ReadCondHandleKey<ILArShape> m_shapeKey{this,"ShapeKey","LArShapeSym","SG Key of Shape conditions object"};
246  const ILArShape *m_shapecond=nullptr;
247 
248  SG::ReadCondHandleKey<ILArfSampl> m_fSamplKey{this,"fSamplKey","LArfSamplSym","SG Key of LArfSampl object"};
249  const ILArfSampl *m_fsamplcond = nullptr;
250 
251  SG::ReadCondHandleKey<ILArMinBias> m_LArMinBiasObjKey{this, "LArMinBiasKey", "LArMinBiasSym", "SG Key of LArMinBias"};
252  const ILArMinBias *m_minbias = nullptr;
253 
254  // Output containers
255  SG::WriteCondHandleKey<CaloNoise> m_outputElecKey{this, "OutputElecKey", "elecNoise", "SG Key of resulting noise CDO"};
256  SG::WriteCondHandleKey<CaloNoise> m_outputPileupKey{this, "OutputPileupKey", "pileupNoise", "SG Key of resulting noise CDO"};
257 
258 
259  //Containers
260  std::vector<IdentifierHash> m_indexContainer;
261  // = vector indexed with all the hashids,
262  //containing which index (of container) should be used with a hashid
263  std::vector<IdentifierHash> m_idSymmCaloHashContainer;
264  //used only to initialize m_indexOfContainer
265 
266 
271 
272 
273  //Functions
280 
281  bool checkIfConnected(const Identifier &id);
282  void commonCalculations(float & OFC_AC_OFC,float & OFC_OFC, int icase, unsigned int firstSample=0);
284  const Identifier & id,int igain,
285  std::vector<bool> &retrieve);
287  std::vector<bool> &retrieve);
288  void updateDiagnostic(int reason, const std::string &reason_name,int igain, bool &noiseOK);
289 
290  std::vector<float>
291  calculateElecNoiseForLAR(const IdentifierHash &idCaloHash);
292 
293  float
294  calculatePileUpNoise(const IdentifierHash &idCaloHash,
295  const float &Nminbias);
296 
297  using AthAlgorithm::index;
298  int index(const IdentifierHash &idCaloHash);
299 
300  CaloCell_ID::SUBCALO caloNum(const IdentifierHash idCaloHash);
301  bool isBadValue(float tested_value);
302 
304  const CaloDetDescrElement* caloDDE,
305  const float &energy);
306 
307 
308 
309 };
310 
311 //------------------------------------------------------------
312 
313 inline bool
315 {
316  if(tested_value<BADVALUE+1) return true;
317  return false;
318 }
319 
321 
322 inline CaloCell_ID::SUBCALO
324 {
325  return
326  static_cast<CaloCell_ID::SUBCALO>(m_calocell_id->sub_calo(idCaloHash));
327 }
328 
329 #endif
330 
python.PyKernel.retrieve
def retrieve(aClass, aKey=None)
Definition: PyKernel.py:110
ABSOLUTEENERGYVALUE
@ ABSOLUTEENERGYVALUE
Definition: CaloNoiseCompCondAlg.h:51
CaloNoiseCompCondAlg::m_noiseKey
SG::ReadCondHandleKey< ILArNoise > m_noiseKey
Definition: CaloNoiseCompCondAlg.h:236
CaloNoiseCompCondAlg::m_ofccond
const ILArOFC * m_ofccond
Definition: CaloNoiseCompCondAlg.h:243
LArFCAL_Base_ID
Definition: LArFCAL_Base_ID.h:19
ILArMinBias.h
TOTALNOISE
@ TOTALNOISE
Definition: CaloNoiseCompCondAlg.h:45
CaloNoiseCompCondAlg::adc2mev
float adc2mev(const CaloDetDescrElement *caloDDE, const CaloGain::CaloGain gain)
Definition: CaloNoiseCompCondAlg.cxx:1245
CaloNoiseCompCondAlg::updateDiagnostic
void updateDiagnostic(int reason, const std::string &reason_name, int igain, bool &noiseOK)
Definition: CaloNoiseCompCondAlg.cxx:1018
CaloNoiseCompCondAlg::m_highestGain
CaloGain::CaloGain m_highestGain[m_nCalos]
Definition: CaloNoiseCompCondAlg.h:167
ILArNoise.h
CaloNoiseCompCondAlg::commonCalculations
void commonCalculations(float &OFC_AC_OFC, float &OFC_OFC, int icase, unsigned int firstSample=0)
Definition: CaloNoiseCompCondAlg.cxx:740
CaloNoiseCompCondAlg::m_noise
const ILArNoise * m_noise
Definition: CaloNoiseCompCondAlg.h:237
LArHEC_Base_ID
This class factors out code common between LArEM_ID and LArEM_SuperCell_ID.
Definition: LArHEC_Base_ID.h:44
LArEM_Base_ID
This class factors out code common between LArEM_ID and LArEM_SuperCell_ID.
Definition: LArEM_Base_ID.h:38
CaloNoiseCompCondAlg::m_indexContainer
std::vector< IdentifierHash > m_indexContainer
Definition: CaloNoiseCompCondAlg.h:260
CaloNoiseCompCondAlg::initPileUpNoise
StatusCode initPileUpNoise()
Definition: CaloNoiseCompCondAlg.cxx:558
CaloNoiseCompCondAlg::m_LArOFCObjKey
SG::ReadCondHandleKey< ILArOFC > m_LArOFCObjKey
Definition: CaloNoiseCompCondAlg.h:242
CaloNoiseCompCondAlg
algo to compute electronic and pile up noise in MeV @ based on old CaloNoiseTool, only WorkMode=1 imp...
Definition: CaloNoiseCompCondAlg.h:60
CaloNoiseCompCondAlg::m_shapecond
const ILArShape * m_shapecond
Definition: CaloNoiseCompCondAlg.h:246
CaloNoiseCompCondAlg::m_lar_hec_id
const LArHEC_Base_ID * m_lar_hec_id
Definition: CaloNoiseCompCondAlg.h:184
ILArPedestal
Definition: ILArPedestal.h:12
CaloNoiseCompCondAlg::m_lar_fcal_id
const LArFCAL_Base_ID * m_lar_fcal_id
Definition: CaloNoiseCompCondAlg.h:185
CaloNoiseCompCondAlg::m_elecNoiseRAWContainer
VectorContainer m_elecNoiseRAWContainer
Definition: CaloNoiseCompCondAlg.h:267
CaloDetDescrElement
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:66
CaloNoiseCompCondAlg::initIndex
StatusCode initIndex()
Definition: CaloNoiseCompCondAlg.cxx:282
CaloCondBlobAlgs_fillNoiseFromASCII.gain
gain
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:109
TOTALNOISE_HIGHESTGAIN
@ TOTALNOISE_HIGHESTGAIN
Definition: CaloNoiseCompCondAlg.h:46
CaloNoiseCompCondAlg::m_diagnostic
bool m_diagnostic[m_nGains]
Definition: CaloNoiseCompCondAlg.h:169
CaloNoiseCompCondAlg::m_DumpDatabaseHG
BooleanProperty m_DumpDatabaseHG
Definition: CaloNoiseCompCondAlg.h:205
iSIGMANOISE
@ iSIGMANOISE
Definition: CaloNoiseCompCondAlg.h:38
CaloNoiseCompCondAlg::m_adc2mevContainer
VectorContainer m_adc2mevContainer
Definition: CaloNoiseCompCondAlg.h:270
CaloNoiseCompCondAlg::m_DiagnosticLG
BooleanProperty m_DiagnosticLG
Definition: CaloNoiseCompCondAlg.h:204
DATABASE_ENUM
DATABASE_ENUM
Definition: CaloNoiseCompCondAlg.h:38
ELECTRONICNOISE
@ ELECTRONICNOISE
Definition: CaloNoiseCompCondAlg.h:41
CaloNoiseCompCondAlg::m_UseSymmetry
BooleanProperty m_UseSymmetry
Definition: CaloNoiseCompCondAlg.h:201
CaloNoiseCompCondAlg::m_pileupNoiseContainer
SingleContainer m_pileupNoiseContainer
Definition: CaloNoiseCompCondAlg.h:269
CaloNoiseCompCondAlg::m_TileHashMax
IdentifierHash m_TileHashMax
Definition: CaloNoiseCompCondAlg.h:192
BADVALUE_TO_RETURN
@ BADVALUE_TO_RETURN
Definition: CaloNoiseCompCondAlg.h:37
CaloNoiseCompCondAlg::m_nReason
int m_nReason[5000][m_nGains]
Definition: CaloNoiseCompCondAlg.h:171
CaloNoiseCompCondAlg::m_cabling
const LArOnOffIdMapping * m_cabling
Definition: CaloNoiseCompCondAlg.h:229
SingleContainer
std::vector< float > SingleContainer
Definition: CaloNoiseCompCondAlg.h:35
CaloNoiseCompCondAlg::finalize
virtual StatusCode finalize() override final
standard Athena-Algorithm method
Definition: CaloNoiseCompCondAlg.h:74
CaloNoiseCompCondAlg::calculatePileUpNoise
float calculatePileUpNoise(const IdentifierHash &idCaloHash, const float &Nminbias)
Definition: CaloNoiseCompCondAlg.cxx:677
CaloNoiseCompCondAlg::m_Adc2MeVFactor
float m_Adc2MeVFactor
Definition: CaloNoiseCompCondAlg.h:213
iAUTOCORR
@ iAUTOCORR
Definition: CaloNoiseCompCondAlg.h:38
CaloNoiseCompCondAlg::m_lar_em_id
const LArEM_Base_ID * m_lar_em_id
Definition: CaloNoiseCompCondAlg.h:183
CaloNoiseCompCondAlg::estimatedGain
CaloGain::CaloGain estimatedGain(const CaloDetDescrElement *caloDDE, const float &energy)
CaloDetDescrManager.h
Definition of CaloDetDescrManager.
ILArNoise
Definition: ILArNoise.h:12
CaloCell_ID.h
CaloNoiseCompCondAlg::m_AutoCorr
LArVectorProxy m_AutoCorr
Definition: CaloNoiseCompCondAlg.h:216
ILArAutoCorr
This class defines the interface for accessing AutoCorrelation parameters for each channel @stereotyp...
Definition: ILArAutoCorr.h:29
CaloNoiseCompCondAlg::m_shapeKey
SG::ReadCondHandleKey< ILArShape > m_shapeKey
Definition: CaloNoiseCompCondAlg.h:245
CaloNoiseCompCondAlg::m_ReturnNoiseName
std::string m_ReturnNoiseName
Definition: CaloNoiseCompCondAlg.h:159
CaloNoiseCompCondAlg::retrieveCellDatabase
StatusCode retrieveCellDatabase(const IdentifierHash &idCaloHash, const Identifier &id, int igain, std::vector< bool > &retrieve)
Definition: CaloNoiseCompCondAlg.cxx:793
CaloNoiseCompCondAlg::m_firstSample
UnsignedIntegerProperty m_firstSample
Definition: CaloNoiseCompCondAlg.h:200
AthAlgorithm.h
JOBOPTION
@ JOBOPTION
Definition: CaloNoiseCompCondAlg.h:47
CaloNoiseCompCondAlg::m_reason
int m_reason[5000][10][m_nGains]
Definition: CaloNoiseCompCondAlg.h:174
iOFC
@ iOFC
Definition: CaloNoiseCompCondAlg.h:38
LArADC2MeV.h
CaloNoiseCompCondAlg::initAdc2MeV
StatusCode initAdc2MeV(const LArADC2MeV *adc2mev)
Definition: CaloNoiseCompCondAlg.cxx:480
CaloNoiseCompCondAlg::m_DumpDatabaseLG
BooleanProperty m_DumpDatabaseLG
Definition: CaloNoiseCompCondAlg.h:207
PILEUPNOISE_HIGHESTGAIN
@ PILEUPNOISE_HIGHESTGAIN
Definition: CaloNoiseCompCondAlg.h:44
CaloNoiseCompCondAlg::index
int index(const IdentifierHash &idCaloHash)
Definition: CaloNoiseCompCondAlg.cxx:429
CaloNoiseCompCondAlg::m_LowGainThresh
float m_LowGainThresh[m_nCalos]
Definition: CaloNoiseCompCondAlg.h:165
CaloNoiseCompCondAlg::m_CaloHashMin
IdentifierHash m_CaloHashMin
Definition: CaloNoiseCompCondAlg.h:194
LArOnOffIdMapping.h
iADC2MEV
@ iADC2MEV
Definition: CaloNoiseCompCondAlg.h:38
CaloNoiseCompCondAlg::m_atlas_id
const AtlasDetectorID * m_atlas_id
Definition: CaloNoiseCompCondAlg.h:179
ParticleGun_FastCalo_ChargeFlip_Config.energy
energy
Definition: ParticleGun_FastCalo_ChargeFlip_Config.py:78
CaloIdManager
This class initializes the Calo (LAr and Tile) offline identifiers.
Definition: CaloIdManager.h:45
CaloNoiseCompCondAlg::initElecNoise
StatusCode initElecNoise()
Definition: CaloNoiseCompCondAlg.cxx:512
CaloCell_SuperCell_ID
Helper class for offline supercell identifiers.
Definition: CaloCell_SuperCell_ID.h:48
CaloNoiseCompCondAlg::checkCellDatabase
StatusCode checkCellDatabase(const Identifier &id, int igain, std::vector< bool > &retrieve)
Definition: CaloNoiseCompCondAlg.cxx:881
CaloNoiseCompCondAlg::checkIfConnected
bool checkIfConnected(const Identifier &id)
Definition: CaloNoiseCompCondAlg.cxx:411
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CaloNoiseCompCondAlg::m_calo_id_man
const CaloIdManager * m_calo_id_man
Definition: CaloNoiseCompCondAlg.h:181
iFSAMPL
@ iFSAMPL
Definition: CaloNoiseCompCondAlg.h:39
CaloNoiseCompCondAlg::m_MinBiasRMS
float m_MinBiasRMS
Definition: CaloNoiseCompCondAlg.h:223
CaloNoiseCompCondAlg::elecNoiseRMS
float elecNoiseRMS(const CaloCell *caloCell)
Definition: CaloNoiseCompCondAlg.cxx:1139
CLHEP
STD'S.
Definition: CaloNoiseCompCondAlg.h:58
CaloCell_Base_ID::SUBCALO
SUBCALO
enumeration of sub calorimeters
Definition: CaloCell_Base_ID.h:46
CaloNoiseCompCondAlg::pileupNoiseRMS
float pileupNoiseRMS(const CaloCell *caloCell, const float Nminbias=-1)
Definition: CaloNoiseCompCondAlg.cxx:1147
CaloNoiseCompCondAlg::elecNoiseRMS3gains
std::vector< float > elecNoiseRMS3gains(const CaloDetDescrElement *caloDDE)
Definition: CaloNoiseCompCondAlg.cxx:1121
CaloNoiseCompCondAlg::execute
virtual StatusCode execute() override final
standard Athena-Algorithm method
Definition: CaloNoiseCompCondAlg.cxx:110
CaloNoiseCompCondAlg::CaloNoiseCompCondAlg
CaloNoiseCompCondAlg(const std::string &name, ISvcLocator *pSvcLocator)
Standard Athena-Algorithm Constructor.
Definition: CaloNoiseCompCondAlg.cxx:23
CaloNoiseCompCondAlg::m_calo_dd_man
const CaloDetDescrManager * m_calo_dd_man
Definition: CaloNoiseCompCondAlg.h:226
CaloCell_Base_ID::sub_calo
int sub_calo(const Identifier id) const
returns an int taken from SUBCALO enum and describing the subCalo to which the Id belongs.
CaloNoiseCompCondAlg::m_LArHashMax
IdentifierHash m_LArHashMax
Definition: CaloNoiseCompCondAlg.h:191
CaloNoiseCompCondAlg::initContainers
StatusCode initContainers()
Definition: CaloNoiseCompCondAlg.cxx:258
CaloCell_ID
Helper class for offline cell identifiers.
Definition: CaloCell_ID.h:34
WriteCellNoiseToCool.igain
igain
Definition: WriteCellNoiseToCool.py:338
MAXSYMMETRYHANDLING
@ MAXSYMMETRYHANDLING
Definition: CaloNoiseCompCondAlg.h:52
CaloNoiseCompCondAlg::m_ped
const ILArPedestal * m_ped
Definition: CaloNoiseCompCondAlg.h:234
CaloNoiseCompCondAlg::m_outputElecKey
SG::WriteCondHandleKey< CaloNoise > m_outputElecKey
Definition: CaloNoiseCompCondAlg.h:255
ILArMinBias
Definition: ILArMinBias.h:13
LArOFC.h
columnar::final
CM final
Definition: ColumnAccessor.h:106
AthAlgorithm
Definition: AthAlgorithm.h:47
CaloNoiseCompCondAlg::m_fSamplKey
SG::ReadCondHandleKey< ILArfSampl > m_fSamplKey
Definition: CaloNoiseCompCondAlg.h:248
CaloNoiseCompCondAlg::m_DiagnosticMG
BooleanProperty m_DiagnosticMG
Definition: CaloNoiseCompCondAlg.h:203
BADVALUE
@ BADVALUE
Definition: CaloNoiseCompCondAlg.h:37
CaloNoiseCompCondAlg::m_LArMinBiasObjKey
SG::ReadCondHandleKey< ILArMinBias > m_LArMinBiasObjKey
Definition: CaloNoiseCompCondAlg.h:251
CaloNoiseCompCondAlg::totalNoiseRMS
float totalNoiseRMS(const CaloCell *caloCell, const float Nminbias=-1)
Definition: CaloNoiseCompCondAlg.cxx:1155
VALUE_ENUM
VALUE_ENUM
Definition: CaloNoiseCompCondAlg.h:37
ILArOFC
Definition: ILArOFC.h:14
ONLYRIGHTSIDEINTEGRATION
@ ONLYRIGHTSIDEINTEGRATION
Definition: CaloNoiseCompCondAlg.h:50
CaloNoiseCompCondAlg::m_DiagnosticHG
BooleanProperty m_DiagnosticHG
Definition: CaloNoiseCompCondAlg.h:202
CaloNoiseCompCondAlg::m_fSampl
float m_fSampl
Definition: CaloNoiseCompCondAlg.h:221
ILArShape.h
CaloNoiseCompCondAlg::m_Nminbias
FloatProperty m_Nminbias
Definition: CaloNoiseCompCondAlg.h:208
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
CaloNoise.h
CaloNoiseCompCondAlg::m_HighGainThresh
float m_HighGainThresh[m_nCalos]
Definition: CaloNoiseCompCondAlg.h:166
CaloNoiseCompCondAlg::m_idHash
int m_idHash[5000][m_nGains]
Definition: CaloNoiseCompCondAlg.h:173
CaloNoiseCompCondAlg::estimatedGain
CaloGain::CaloGain estimatedGain(const CaloCell *caloCell)
CaloNoiseCompCondAlg::m_minbias
const ILArMinBias * m_minbias
Definition: CaloNoiseCompCondAlg.h:252
CaloNoiseCompCondAlg::m_reasonName
std::string m_reasonName[10]
Definition: CaloNoiseCompCondAlg.h:176
CalorimeterNoiseType
CalorimeterNoiseType
Definition: CaloNoiseCompCondAlg.h:40
CaloNoiseCompCondAlg::estimatedLArGain
CaloGain::CaloGain estimatedLArGain(const CaloCell_ID::SUBCALO &iCalo, const CaloDetDescrElement *caloDDE, const float &energy)
CaloNoiseCompCondAlg::m_adc2mevKey
SG::ReadCondHandleKey< LArADC2MeV > m_adc2mevKey
Definition: CaloNoiseCompCondAlg.h:231
CaloGain::CaloGain
CaloGain
Definition: CaloGain.h:11
CaloNoiseCompCondAlg::initData
StatusCode initData(const LArADC2MeV *adc2mev)
Definition: CaloNoiseCompCondAlg.cxx:438
CaloNoiseCompCondAlg::totalNoiseRMSHighestGain
float totalNoiseRMSHighestGain(const CaloCell *caloCell, const float Nminbias=-1)
Definition: CaloNoiseCompCondAlg.cxx:1219
SG::ReadCondHandleKey< CaloDetDescrManager >
LArADC2MeV
Definition: LArADC2MeV.h:21
DeMoScan.index
string index
Definition: DeMoScan.py:362
CaloDetDescrManager
This class provides the client interface for accessing the detector description information common to...
Definition: CaloDetDescrManager.h:473
CaloCell
Data object for each calorimeter readout cell.
Definition: CaloCell.h:57
CaloNoiseCompCondAlg::m_RMSpedestal
float m_RMSpedestal
Definition: CaloNoiseCompCondAlg.h:218
CaloNoiseCompCondAlg::m_nCellsWithProblem
int m_nCellsWithProblem[m_nGains]
Definition: CaloNoiseCompCondAlg.h:170
ILArPedestal.h
CaloNoiseCompCondAlg::m_pedestalKey
SG::ReadCondHandleKey< ILArPedestal > m_pedestalKey
Definition: CaloNoiseCompCondAlg.h:233
CaloNoiseCompCondAlg::m_acorrKey
SG::ReadCondHandleKey< ILArAutoCorr > m_acorrKey
Definition: CaloNoiseCompCondAlg.h:239
CaloNoiseCompCondAlg::m_DumpDatabaseMG
BooleanProperty m_DumpDatabaseMG
Definition: CaloNoiseCompCondAlg.h:206
CaloNoiseCompCondAlg::initialize
virtual StatusCode initialize() override final
standard Athena-Algorithm method
Definition: CaloNoiseCompCondAlg.cxx:45
CaloNoiseCompCondAlg::m_nsamples
int m_nsamples
Definition: CaloNoiseCompCondAlg.h:219
CaloNoiseCompCondAlg::m_acorr
const ILArAutoCorr * m_acorr
Definition: CaloNoiseCompCondAlg.h:240
CaloNoiseCompCondAlg::m_Shape
LArVectorProxy m_Shape
Definition: CaloNoiseCompCondAlg.h:215
CaloNoiseCompCondAlg::m_caloMgrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
Definition: CaloNoiseCompCondAlg.h:225
CaloNoiseCompCondAlg::m_elecNoiseCELLContainer
VectorContainer m_elecNoiseCELLContainer
Definition: CaloNoiseCompCondAlg.h:268
ILArAutoCorr.h
SG::WriteCondHandleKey< CaloNoise >
NGAINS
@ NGAINS
Definition: CaloNoiseCompCondAlg.h:56
CaloNoiseCompCondAlg::calculateElecNoiseForLAR
std::vector< float > calculateElecNoiseForLAR(const IdentifierHash &idCaloHash)
Definition: CaloNoiseCompCondAlg.cxx:578
IOVSvcDefs.h
defines and typedefs for IOVSvc
CaloNoiseCompCondAlg::m_idSymmCaloHashContainer
std::vector< IdentifierHash > m_idSymmCaloHashContainer
Definition: CaloNoiseCompCondAlg.h:263
iSHAPE
@ iSHAPE
Definition: CaloNoiseCompCondAlg.h:38
PILEUPNOISE
@ PILEUPNOISE
Definition: CaloNoiseCompCondAlg.h:43
CaloNoiseCompCondAlg::m_nGains
static constexpr int m_nGains
Definition: CaloNoiseCompCondAlg.h:164
nDATABASE
@ nDATABASE
Definition: CaloNoiseCompCondAlg.h:39
ELECTRONICNOISE_HIGHESTGAIN
@ ELECTRONICNOISE_HIGHESTGAIN
Definition: CaloNoiseCompCondAlg.h:42
CaloNumbers
CaloNumbers
Definition: CaloNoiseCompCondAlg.h:54
CaloNoiseCompCondAlg::isBadValue
bool isBadValue(float tested_value)
Definition: CaloNoiseCompCondAlg.h:314
CaloNoiseCompCondAlg::m_c
float m_c[32][32]
Definition: CaloNoiseCompCondAlg.h:217
CaloNoiseCompCondAlg::m_outputPileupKey
SG::WriteCondHandleKey< CaloNoise > m_outputPileupKey
Definition: CaloNoiseCompCondAlg.h:256
CaloNoiseCompCondAlg::m_deltaBunch
IntegerProperty m_deltaBunch
Definition: CaloNoiseCompCondAlg.h:199
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
CaloNoiseCompCondAlg::m_calosupercell_id
const CaloCell_SuperCell_ID * m_calosupercell_id
Definition: CaloNoiseCompCondAlg.h:189
CaloGain.h
ILArShape
Definition: ILArShape.h:13
CaloNoiseCompCondAlg::estimatedGain
CaloGain::CaloGain estimatedGain(const CaloCell *caloCell, const CaloDetDescrElement *caloDDE)
iMINBIASRMS
@ iMINBIASRMS
Definition: CaloNoiseCompCondAlg.h:39
NCALOS
@ NCALOS
Definition: CaloNoiseCompCondAlg.h:55
CaloNoiseCompCondAlg::~CaloNoiseCompCondAlg
virtual ~CaloNoiseCompCondAlg()=default
Default Destructor.
CaloNoiseCompCondAlg::m_cablingKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Definition: CaloNoiseCompCondAlg.h:228
AtlasDetectorID
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Definition: AtlasDetectorID.h:57
VectorContainer
std::vector< std::vector< float > > VectorContainer
Definition: CaloNoiseCompCondAlg.h:32
CaloNoiseCompCondAlg::m_itReason
int m_itReason[10][m_nGains]
Definition: CaloNoiseCompCondAlg.h:172
ILArfSampl.h
CaloNoiseCompCondAlg::m_fsamplcond
const ILArfSampl * m_fsamplcond
Definition: CaloNoiseCompCondAlg.h:249
CaloNoiseCompCondAlg::m_calocell_id
const CaloCell_ID * m_calocell_id
Definition: CaloNoiseCompCondAlg.h:188
CalorimeterNoiseSymmetryHandling
CalorimeterNoiseSymmetryHandling
Definition: CaloNoiseCompCondAlg.h:49
CaloNoiseCompCondAlg::m_nCalos
static constexpr int m_nCalos
Definition: CaloNoiseCompCondAlg.h:163
LArVectorProxy
Proxy for accessing a range of float values like a vector.
Definition: LArVectorProxy.h:38
CaloNoiseCompCondAlg::caloNum
CaloCell_ID::SUBCALO caloNum(const IdentifierHash idCaloHash)
Definition: CaloNoiseCompCondAlg.h:323
ILArfSampl
Definition: ILArfSampl.h:14
LArOnOffIdMapping
Definition: LArOnOffIdMapping.h:20
CaloNoiseCompCondAlg::m_SigmaNoise
float m_SigmaNoise
Definition: CaloNoiseCompCondAlg.h:220
CaloNoiseCompCondAlg::m_CaloHashMax
IdentifierHash m_CaloHashMax
Definition: CaloNoiseCompCondAlg.h:193
CaloNoiseCompCondAlg::m_OFC
LArVectorProxy m_OFC
Definition: CaloNoiseCompCondAlg.h:214
CaloNoiseCompCondAlg::m_AdcPerMev
double m_AdcPerMev
Definition: CaloNoiseCompCondAlg.h:222
Identifier
Definition: IdentifierFieldParser.cxx:14