#include <HGCDigitizerBase.h>
Public Types | |
typedef edm::SortedCollection< DFr > | DColl |
typedef HGCalDataFrame | DFr |
Public Member Functions | |
DetId::Detector | det () const |
void | GenerateGaussianNoise (CLHEP::HepRandomEngine *engine, const double NoiseMean, const double NoiseStd) |
Gaussian Noise Generation Member Function. More... | |
HGCDigitizerBase (const edm::ParameterSet &ps) | |
CTOR. More... | |
float | keV2fC () const |
getters More... | |
void | run (std::unique_ptr< DColl > &digiColl, hgc::HGCSimHitDataAccumulator &simData, const CaloSubdetectorGeometry *theGeom, const std::unordered_set< DetId > &validIds, uint32_t digitizationType, CLHEP::HepRandomEngine *engine) |
steer digitization mode More... | |
virtual void | runDigitizer (std::unique_ptr< DColl > &coll, hgc::HGCSimHitDataAccumulator &simData, const CaloSubdetectorGeometry *theGeom, const std::unordered_set< DetId > &validIds, CLHEP::HepRandomEngine *engine)=0 |
to be specialized by top class More... | |
void | runSimple (std::unique_ptr< DColl > &coll, hgc::HGCSimHitDataAccumulator &simData, const CaloSubdetectorGeometry *theGeom, const std::unordered_set< DetId > &validIds, CLHEP::HepRandomEngine *engine) |
a trivial digitization: sum energies and digitize More... | |
ForwardSubdetector | subdet () const |
std::array< float, 3 > | tdcForToAOnset () const |
float | tdcOnset () const |
bool | toaModeByEnergy () const |
void | updateOutput (std::unique_ptr< DColl > &coll, const DFr &rawDataFrame) |
prepares the output according to the number of time samples to produce More... | |
virtual | ~HGCDigitizerBase () |
DTOR. More... | |
Protected Attributes | |
double | bxTime_ |
std::vector< double > | cce_ |
DetId::Detector | det_ |
std::string | doseMapFile_ |
bool | doTimeSamples_ |
std::array< std::array< double, samplesize_ >, NoiseArrayLength_ > | GaussianNoiseArray_ |
float | keV2fC_ |
edm::ParameterSet | myCfg_ |
std::unique_ptr< HGCFEElectronics< DFr > > | myFEelectronics_ |
std::vector< float > | noise_fC_ |
bool | NoiseGeneration_Method_ |
const double | NoiseMean_ |
const double | NoiseStd_ |
bool | RandNoiseGenerationFlag_ |
HGCalSiNoiseMap< HGCSiliconDetId > | scal_ |
bool | scaleByDose_ |
double | scaleByDoseFactor_ |
HGCalSiNoiseMap< HFNoseDetId > | scalHFNose_ |
ForwardSubdetector | subdet_ |
bool | thresholdFollowsMIP_ |
Static Protected Attributes | |
static const size_t | NoiseArrayLength_ = 200000 |
static const size_t | samplesize_ = 15 |
Definition at line 54 of file HGCDigitizerBase.h.
Definition at line 57 of file HGCDigitizerBase.h.
typedef HGCalDataFrame HGCDigitizerBase::DFr |
Definition at line 56 of file HGCDigitizerBase.h.
HGCDigitizerBase::HGCDigitizerBase | ( | const edm::ParameterSet & | ps | ) |
CTOR.
Definition at line 9 of file HGCDigitizerBase.cc.
References bxTime_, cce_, doseMapFile_, doTimeSamples_, edm::ParameterSet::exists(), edm::ParameterSet::existsAs(), f, hgceeDigitizer_cfi::feCfg, edm::ParameterSet::getParameter(), keV2fC_, myCfg_, myFEelectronics_, noise_fC_, NoiseGeneration_Method_, hgcalLayerClustersEE_cfi::noises, RandNoiseGenerationFlag_, scal_, scaleByDose_, hgcal_reco_constants_cfi::scaleByDoseAlgo, scaleByDoseFactor_, scalHFNose_, HGCalSiNoiseMap< T >::setCceParam(), HGCalSiNoiseMap< T >::setDefaultADCPulseShape(), HGCalSiNoiseMap< T >::setDoseMap(), HGCalRadiationMap::setFluenceScaleFactor(), HGCalSiNoiseMap< T >::setIleakParam(), and thresholdFollowsMIP_.
|
inlinevirtual |
|
inline |
Definition at line 84 of file HGCDigitizerBase.h.
References det_.
Referenced by HGCHEbackDigitizer::runRealisticDigitizer(), and runSimple().
void HGCDigitizerBase::GenerateGaussianNoise | ( | CLHEP::HepRandomEngine * | engine, |
const double | NoiseMean, | ||
const double | NoiseStd | ||
) |
Gaussian Noise Generation Member Function.
Definition at line 80 of file HGCDigitizerBase.cc.
References GaussianNoiseArray_, mps_fire::i, dqmiolumiharvest::j, NoiseArrayLength_, and samplesize_.
Referenced by run().
|
inline |
void HGCDigitizerBase::run | ( | std::unique_ptr< DColl > & | digiColl, |
hgc::HGCSimHitDataAccumulator & | simData, | ||
const CaloSubdetectorGeometry * | theGeom, | ||
const std::unordered_set< DetId > & | validIds, | ||
uint32_t | digitizationType, | ||
CLHEP::HepRandomEngine * | engine | ||
) |
steer digitization mode
Definition at line 90 of file HGCDigitizerBase.cc.
References DigiToRawDM_cff::digiColl, hgceeDigitizer_cfi::digitizationType, GenerateGaussianNoise(), myFEelectronics_, NoiseGeneration_Method_, NoiseMean_, NoiseStd_, RandNoiseGenerationFlag_, runDigitizer(), runSimple(), scal_, scaleByDose_, scalHFNose_, and HGCalSiNoiseMap< T >::setGeometry().
|
pure virtual |
to be specialized by top class
Referenced by run().
void HGCDigitizerBase::runSimple | ( | std::unique_ptr< DColl > & | coll, |
hgc::HGCSimHitDataAccumulator & | simData, | ||
const CaloSubdetectorGeometry * | theGeom, | ||
const std::unordered_set< DetId > & | validIds, | ||
CLHEP::HepRandomEngine * | engine | ||
) |
a trivial digitization: sum energies and digitize
Definition at line 113 of file HGCDigitizerBase.cc.
References hgceeDigitizer_cfi::adcPulse, HGCalSiNoiseMap< T >::adcPulseForGain(), hgc_digi_utils::addCellMetadata(), cce_, det(), f, nano_mu_digi_cff::float, DetId::Forward, PedestalClient_cfi::gain, GaussianNoiseArray_, HGCalSiNoiseMap< T >::getLSBPerGain(), HGCalSiNoiseMap< T >::getMaxADCPerGain(), HGCalSiNoiseMap< T >::getSiCellOpCharacteristicsCore(), HGCalSiNoiseMap< T >::getTDCOnsetAuto(), HFNose, hgc_digi::HGCCellInfo::hit_info, mps_fire::i, l1ctLayer2EG_cff::id, ALPAKA_ACCELERATOR_NAMESPACE::caPixelDoublets::if(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, myFEelectronics_, hgchebackDigitizer_cfi::noise, noise_fC_, NoiseArrayLength_, NoiseGeneration_Method_, samplesize_, scal_, scaleByDose_, scalHFNose_, hgc_digi::HGCCellInfo::size, hgc_digi::HGCCellInfo::thickness, Calorimetry_cff::thickness, thresholdFollowsMIP_, and updateOutput().
Referenced by run().
|
inline |
|
inline |
Definition at line 83 of file HGCDigitizerBase.h.
References myFEelectronics_.
|
inline |
Definition at line 82 of file HGCDigitizerBase.h.
References myFEelectronics_.
|
inline |
Definition at line 81 of file HGCDigitizerBase.h.
References myFEelectronics_.
prepares the output according to the number of time samples to produce
Definition at line 229 of file HGCDigitizerBase.cc.
References HGCDataFrame< D, S >::id(), ALPAKA_ACCELERATOR_NAMESPACE::vertexFinder::it, HGCDataFrame< D, S >::resize(), HGCDataFrame< D, S >::size(), and DiMuonV_cfg::threshold.
Referenced by HGCHEbackDigitizer::runCaliceLikeDigitizer(), HGCHEbackDigitizer::runEmptyDigitizer(), HGCHEbackDigitizer::runRealisticDigitizer(), and runSimple().
|
protected |
Definition at line 144 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase().
|
protected |
Definition at line 125 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), and runSimple().
|
protected |
Definition at line 156 of file HGCDigitizerBase.h.
Referenced by det(), HFNoseDigitizer::HFNoseDigitizer(), HGCEEDigitizer::HGCEEDigitizer(), HGCHEbackDigitizer::HGCHEbackDigitizer(), and HGCHEfrontDigitizer::HGCHEfrontDigitizer().
|
protected |
Definition at line 134 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase().
|
protected |
Definition at line 147 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase().
|
protected |
Definition at line 168 of file HGCDigitizerBase.h.
Referenced by GenerateGaussianNoise(), and runSimple().
|
protected |
Definition at line 119 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), HGCHEbackDigitizer::HGCHEbackDigitizer(), and keV2fC().
|
protected |
Definition at line 112 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase().
|
protected |
Definition at line 141 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), HGCHEbackDigitizer::HGCHEbackDigitizer(), run(), HGCHEbackDigitizer::runCaliceLikeDigitizer(), HGCHEbackDigitizer::runEmptyDigitizer(), HGCHEbackDigitizer::runRealisticDigitizer(), runSimple(), tdcForToAOnset(), tdcOnset(), and toaModeByEnergy().
|
protected |
Definition at line 122 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), and runSimple().
|
staticprotected |
Definition at line 166 of file HGCDigitizerBase.h.
Referenced by GenerateGaussianNoise(), and runSimple().
|
protected |
Definition at line 171 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), run(), and runSimple().
|
protected |
Definition at line 165 of file HGCDigitizerBase.h.
Referenced by run().
|
protected |
Definition at line 165 of file HGCDigitizerBase.h.
Referenced by run().
|
protected |
Definition at line 169 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), and run().
|
staticprotected |
Definition at line 167 of file HGCDigitizerBase.h.
Referenced by GenerateGaussianNoise(), and runSimple().
|
protected |
Definition at line 137 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), run(), and runSimple().
|
protected |
Definition at line 128 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), run(), and runSimple().
|
protected |
Definition at line 131 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), and HGCHEbackDigitizer::HGCHEbackDigitizer().
|
protected |
Definition at line 138 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), run(), and runSimple().
|
protected |
Definition at line 161 of file HGCDigitizerBase.h.
Referenced by HFNoseDigitizer::HFNoseDigitizer(), and subdet().
|
protected |
Definition at line 150 of file HGCDigitizerBase.h.
Referenced by HGCDigitizerBase(), and runSimple().