ATLAS Offline Software
PixelNoiseFunctions.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3  */
4 #ifndef PixelNoiseFunctions_h
5 #define PixelNoiseFunctions_h
6 
7 
9 #include <vector>
10 #include <utility> //for std::pair
11 
13 class SiTotalCharge;
14 class PixelModuleData;
17 
18 namespace CLHEP{
19  class HepRandomEngine;
20 }
21 
22 
23 namespace PixelDigitization{
24  void crossTalk(double crossTalk, SiChargedDiodeCollection& chargedDiodes) ;
25 
26  void thermalNoise(double thermalNoise, SiChargedDiodeCollection& chargedDiodes,
27  CLHEP::HepRandomEngine* rndmEngine);
28 
29  void randomNoise(SiChargedDiodeCollection& chargedDiodes, const PixelModuleData *moduleData,
30  int nBcid,
31  const PixelChargeCalibCondData *chargeCalibData, CLHEP::HepRandomEngine* rndmEngine,
32  InDetDD::IPixelReadoutManager * pixelReadout);
33 
34  void
35  randomNoise(SiChargedDiodeCollection& chargedDiodes, const double totalNoiseOccupancy,
36  const std::vector<float> &noiseShape, float overflowToT,
37  const PixelChargeCalibCondData *chargeCalibData, CLHEP::HepRandomEngine* rndmEngine,
38  InDetDD::IPixelReadoutManager * pixelReadout);
39 
40  void
41  randomNoise(SiChargedDiodeCollection& chargedDiodes, const ITkPixSimulationParameters & chipData,
42  int nBcid,
43  const PixelChargeCalibCondData *chargeCalibData, CLHEP::HepRandomEngine* rndmEngine,
44  InDetDD::IPixelReadoutManager * pixelReadout);
45 
46  //randomly disables certain elements, using moduleData to get probability
47  void
49  const PixelModuleData *moduleData,
50  CLHEP::HepRandomEngine* rndmEngine);
51 
52  void
54  const ITkPixSimulationParameters & chipData,
55  CLHEP::HepRandomEngine* rndmEngine);
56 
57  //randomly disables certain elements, probability as a parameter
58  void
60  double disableProbability, CLHEP::HepRandomEngine* rndmEngine);
61 
62  //generate Time-Over-Threshold int values with mean, rms, and valid range
63  int
64  generateToT(CLHEP::HepRandomEngine* rndmEngine, double mean, double sd, const std::pair<int, int>& range);
65  //
66  double
67  getG4Time(const SiTotalCharge& totalCharge);
68 }//namespace
69 
70  #endif
mean
void mean(std::vector< double > &bins, std::vector< double > &values, const std::vector< std::string > &files, const std::string &histname, const std::string &tplotname, const std::string &label="")
Definition: dependence.cxx:254
ITkPixSimulationParameters
Definition: ITkPixSimulationParameters.h:18
PixelModuleData
Definition: PixelModuleData.h:22
InDetDD::IPixelReadoutManager
Definition: IPixelReadoutManager.h:22
PixelDigitization
Definition: PixelDigitizationUtilities.cxx:16
PixelDigitization::getG4Time
double getG4Time(const SiTotalCharge &totalCharge)
Definition: PixelNoiseFunctions.cxx:206
python.selector.AtlRunQuerySelectorLhcOlc.sd
sd
Definition: AtlRunQuerySelectorLhcOlc.py:611
SiChargedDiodeCollection
Definition: SiChargedDiodeCollection.h:109
PixelDigitization::generateToT
int generateToT(CLHEP::HepRandomEngine *rndmEngine, double mean, double sd, const std::pair< int, int > &range)
Definition: PixelNoiseFunctions.cxx:192
PixelChargeCalibCondData
Definition: PixelChargeCalibCondData.h:24
CLHEP
STD'S.
Definition: CaloNoiseCompCondAlg.h:58
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:194
IPixelReadoutManager.h
PixelDigitization::crossTalk
void crossTalk(double crossTalk, SiChargedDiodeCollection &chargedDiodes)
Definition: PixelNoiseFunctions.cxx:28
SiTotalCharge
Definition: SiTotalCharge.h:24
PixelDigitization::randomNoise
void randomNoise(SiChargedDiodeCollection &chargedDiodes, const PixelModuleData *moduleData, int nBcid, const PixelChargeCalibCondData *chargeCalibData, CLHEP::HepRandomEngine *rndmEngine, InDetDD::IPixelReadoutManager *pixelReadout)
Definition: PixelNoiseFunctions.cxx:76
PixelDigitization::randomDisable
void randomDisable(SiChargedDiodeCollection &chargedDiodes, const PixelModuleData *moduleData, CLHEP::HepRandomEngine *rndmEngine)
Definition: PixelNoiseFunctions.cxx:164
PixelDigitization::thermalNoise
void thermalNoise(double thermalNoise, SiChargedDiodeCollection &chargedDiodes, CLHEP::HepRandomEngine *rndmEngine)
Definition: PixelNoiseFunctions.cxx:64