|
void | accumulateSimHits (const std::vector< PSimHit >::const_iterator inputBegin, const std::vector< PSimHit >::const_iterator inputEnd, const size_t inputBeginGlobalIndex, const uint32_t tofBin, const Phase2TrackerGeomDetUnit *pixdet, const GlobalVector &bfield) override |
|
void | init (const edm::EventSetup &es) override |
|
bool | isAboveThreshold (const DigitizerUtility::SimHitInfo *hitInfo, float charge, float thr) override |
|
| PSPDigitizerAlgorithm (const edm::ParameterSet &conf) |
|
bool | select_hit (const PSimHit &hit, double tCorr, double &sigScale) override |
|
| ~PSPDigitizerAlgorithm () override |
|
virtual void | digitize (const Phase2TrackerGeomDetUnit *pixdet, std::map< int, DigitizerUtility::DigiSimInfo > &digi_map, const TrackerTopology *tTopo) |
|
virtual void | initializeEvent (CLHEP::HepRandomEngine &eng) |
|
void | loadAccumulator (uint32_t detId, const std::map< int, float > &accumulator) |
|
| Phase2TrackerDigitizerAlgorithm (const edm::ParameterSet &conf_common, const edm::ParameterSet &conf_specific) |
|
virtual | ~Phase2TrackerDigitizerAlgorithm () |
|
|
using | Frame = GloballyPositioned< double > |
|
using | Parameters = std::vector< edm::ParameterSet > |
|
using | signal_map_type = std::map< int, DigitizerUtility::Amplitude, std::less< int > > |
|
using | signalMaps = std::map< uint32_t, signal_map_type > |
|
virtual void | add_cross_talk (const Phase2TrackerGeomDetUnit *pixdet) |
|
virtual void | add_noise (const Phase2TrackerGeomDetUnit *pixdet) |
|
virtual void | add_noisy_cells (const Phase2TrackerGeomDetUnit *pixdet, float thePixelThreshold) |
|
double | calcQ (float x) const |
|
int | convertSignalToAdc (uint32_t detID, float signal_in_elec, float threshold) |
|
void | drift (const PSimHit &hit, const Phase2TrackerGeomDetUnit *pixdet, const GlobalVector &bfield, const std::vector< DigitizerUtility::EnergyDepositUnit > &ionization_points, std::vector< DigitizerUtility::SignalPoint > &collection_points) const |
|
LocalVector | DriftDirection (const Phase2TrackerGeomDetUnit *pixdet, const GlobalVector &bfield, const DetId &detId) const |
|
void | fluctuateEloss (int particleId, float momentum, float eloss, float length, int NumberOfSegments, std::vector< float > &elossVector) const |
|
void | induce_signal (const PSimHit &hit, const size_t hitIndex, const uint32_t tofBin, const Phase2TrackerGeomDetUnit *pixdet, const std::vector< DigitizerUtility::SignalPoint > &collection_points) |
|
virtual void | module_killing_conf (uint32_t detID) |
|
virtual void | module_killing_DB (const Phase2TrackerGeomDetUnit *pixdet) |
|
virtual void | pixel_inefficiency (const SubdetEfficiencies &eff, const Phase2TrackerGeomDetUnit *pixdet, const TrackerTopology *tTopo) |
|
virtual void | pixel_inefficiency_db (uint32_t detID) |
|
void | primary_ionization (const PSimHit &hit, std::vector< DigitizerUtility::EnergyDepositUnit > &ionization_points) const |
|
signalMaps | _signal |
|
const bool | addNoise_ |
|
const bool | addNoisyPixels_ |
|
const bool | addPixelInefficiency_ |
|
const bool | addThresholdSmearing_ |
|
const bool | addXtalk_ |
|
const bool | alpha2Order_ |
|
Parameters | badPixels_ |
|
const float | clusterWidth_ |
|
const Parameters | deadModules_ |
|
edm::ESHandle< SiPixelFedCablingMap > | fedCablingMap_ |
|
const std::unique_ptr< SiG4UniversalFluctuation > | fluctuate_ |
|
const bool | fluctuateCharge_ |
|
std::unique_ptr< CLHEP::RandGaussQ > | gaussDistribution_ |
|
edm::ESHandle< TrackerGeometry > | geom_ |
|
const float | GeVperElectron_ |
|
const float | interstripCoupling_ |
|
const bool | makeDigiSimLinks_ |
|
bool | pixelFlag_ |
|
const double | pseudoRadDamage_ |
|
const double | pseudoRadDamageRadius_ |
|
CLHEP::HepRandomEngine * | rengine_ |
|
const float | Sigma0_ |
|
const float | SigmaCoeff_ |
|
edm::ESHandle< SiPixelQuality > | SiPixelBadModule_ |
|
edm::ESHandle< SiPixelLorentzAngle > | SiPixelLorentzAngle_ |
|
std::unique_ptr< CLHEP::RandGaussQ > | smearedThreshold_Barrel_ |
|
std::unique_ptr< CLHEP::RandGaussQ > | smearedThreshold_Endcap_ |
|
const SubdetEfficiencies | subdetEfficiencies_ |
|
const float | tanLorentzAnglePerTesla_Barrel_ |
|
const float | tanLorentzAnglePerTesla_Endcap_ |
|
const int | theAdcFullScale_ |
|
const float | theElectronPerADC_ |
|
const double | theHIPThresholdInE_Barrel_ |
|
const double | theHIPThresholdInE_Endcap_ |
|
const float | theNoiseInElectrons_ |
|
const std::unique_ptr< GaussianTailNoiseGenerator > | theNoiser_ |
|
const int | thePhase2ReadoutMode_ |
|
const float | theReadoutNoise_ |
|
const std::unique_ptr< SiPixelGainCalibrationOfflineSimService > | theSiPixelGainCalibrationService_ |
|
const float | theThresholdInE_Barrel_ |
|
const float | theThresholdInE_Endcap_ |
|
const double | theThresholdSmearing_Barrel_ |
|
const double | theThresholdSmearing_Endcap_ |
|
const float | theTofLowerCut_ |
|
const float | theTofUpperCut_ |
|
const double | tMax_ |
|
const bool | use_deadmodule_DB_ |
|
const bool | use_ineff_from_db_ |
|
const bool | use_LorentzAngle_DB_ |
|
const bool | use_module_killing_ |
|
Definition at line 6 of file PSPDigitizerAlgorithm.h.
void PSPDigitizerAlgorithm::accumulateSimHits |
( |
const std::vector< PSimHit >::const_iterator |
inputBegin, |
|
|
const std::vector< PSimHit >::const_iterator |
inputEnd, |
|
|
const size_t |
inputBeginGlobalIndex, |
|
|
const uint32_t |
tofBin, |
|
|
const Phase2TrackerGeomDetUnit * |
pixdet, |
|
|
const GlobalVector & |
bfield |
|
) |
| |
|
overridevirtual |
Implements Phase2TrackerDigitizerAlgorithm.
Definition at line 30 of file PSPDigitizerAlgorithm.cc.
39 size_t simHitGlobalIndex = inputBeginGlobalIndex;
42 std::vector<PSimHit> matchedSimHits;
43 std::copy_if(inputBegin, inputEnd, std::back_inserter(matchedSimHits), [detId](
auto const&
hit) ->
bool {
44 return hit.detUnitId() == detId;
47 for (
auto const&
hit : matchedSimHits) {
48 LogDebug(
"PSPDigitizerAlgorithm") <<
hit.particleType() <<
" " <<
hit.pabs() <<
" " <<
hit.energyLoss() <<
" "
49 <<
hit.tof() <<
" " <<
hit.trackId() <<
" " <<
hit.processType() <<
" "
50 <<
hit.detUnitId() <<
hit.entryPoint() <<
" " <<
hit.exitPoint();
52 std::vector<DigitizerUtility::EnergyDepositUnit> ionization_points;
53 std::vector<DigitizerUtility::SignalPoint> collection_points;
55 double signalScale = 1.0;
61 drift(
hit, pixdet, bfield, ionization_points, collection_points);
References c_inv, Phase2TrackerDigitizerAlgorithm::drift(), GeomDet::geographicalId(), Phase2TrackerDigitizerAlgorithm::induce_signal(), LogDebug, mag(), Phase2TrackerDigitizerAlgorithm::primary_ionization(), DetId::rawId(), select_hit(), GeomDet::surface(), and Surface::toGlobal().