#include <ECalSD.h>
Public Member Functions | |
ECalSD (const std::string &, const EcalSimulationParameters *, const SensitiveDetectorCatalog &, edm::ParameterSet const &p, const SimTrackManager *) | |
uint32_t | setDetUnitId (const G4Step *) override |
void | setNumberingScheme (EcalNumberingScheme *) |
~ECalSD () override | |
Public Member Functions inherited from CaloSD | |
CaloSD (const std::string &aSDname, const SensitiveDetectorCatalog &clg, edm::ParameterSet const &p, const SimTrackManager *, float timeSlice=1., bool ignoreTkID=false) | |
void | clear () override |
void | clearHits () override |
void | DrawAll () override |
void | EndOfEvent (G4HCofThisEvent *eventHC) override |
void | fillHits (edm::PCaloHitContainer &, const std::string &) override |
void | Initialize (G4HCofThisEvent *HCE) override |
bool | isItFineCalo (const G4VTouchable *touch) |
void | PrintAll () override |
G4bool | ProcessHits (G4Step *step, G4TouchableHistory *) override |
bool | ProcessHits (G4GFlashSpot *aSpot, G4TouchableHistory *) override |
void | reset () override |
~CaloSD () override | |
Public Member Functions inherited from SensitiveCaloDetector | |
SensitiveCaloDetector (const std::string &iname, const SensitiveDetectorCatalog &clg) | |
Public Member Functions inherited from SensitiveDetector | |
void | EndOfEvent (G4HCofThisEvent *eventHC) override |
const std::vector< std::string > & | getNames () const |
void | Initialize (G4HCofThisEvent *eventHC) override |
bool | isCaloSD () const |
SensitiveDetector (const std::string &iname, const SensitiveDetectorCatalog &, bool calo) | |
~SensitiveDetector () override | |
Public Member Functions inherited from Observer< const BeginOfRun *> | |
Observer () | |
void | slotForUpdate (const BeginOfRun * iT) |
virtual | ~Observer () |
Public Member Functions inherited from Observer< const BeginOfEvent *> | |
Observer () | |
void | slotForUpdate (const BeginOfEvent * iT) |
virtual | ~Observer () |
Public Member Functions inherited from Observer< const BeginOfTrack *> | |
Observer () | |
void | slotForUpdate (const BeginOfTrack * iT) |
virtual | ~Observer () |
Public Member Functions inherited from Observer< const EndOfTrack *> | |
Observer () | |
void | slotForUpdate (const EndOfTrack * iT) |
virtual | ~Observer () |
Public Member Functions inherited from Observer< const EndOfEvent *> | |
Observer () | |
void | slotForUpdate (const EndOfEvent * iT) |
virtual | ~Observer () |
Protected Member Functions | |
double | EnergyCorrected (const G4Step &, const G4Track *) override |
uint16_t | getDepth (const G4Step *) override |
double | getEnergyDeposit (const G4Step *) override |
int | getTrackID (const G4Track *) override |
Protected Member Functions inherited from CaloSD | |
bool | checkHit () |
CaloG4Hit * | createNewHit (const G4Step *, const G4Track *) |
virtual void | endEvent () |
virtual bool | filterHit (CaloG4Hit *, double) |
unsigned int | findBoundaryCrossingParent (const G4Track *track, bool markParentAsSaveable=true) |
double | getAttenuation (const G4Step *aStep, double birk1, double birk2, double birk3) const |
virtual bool | getFromLibrary (const G4Step *step) |
int | getNumberOfHits () |
double | getResponseWt (const G4Track *) |
bool | hitExists (const G4Step *) |
void | ignoreRejection () |
virtual void | initEvent (const BeginOfEvent *) |
virtual void | initRun () |
void | printDetectorLevels (const G4VTouchable *) const |
void | processHit (const G4Step *step) |
void | resetForNewPrimary (const G4Step *) |
void | setNumberCheckedHits (int val) |
void | setParameterized (bool val) |
G4ThreeVector | setToGlobal (const G4ThreeVector &, const G4VTouchable *) const |
G4ThreeVector | setToLocal (const G4ThreeVector &, const G4VTouchable *) const |
virtual int | setTrackID (const G4Step *) |
void | setUseMap (bool val) |
std::string | shortreprID (const CaloHitID &ID) |
std::string | shortreprID (const CaloG4Hit *hit) |
void | update (const BeginOfRun *) override |
This routine will be called when the appropriate signal arrives. More... | |
void | update (const BeginOfEvent *) override |
This routine will be called when the appropriate signal arrives. More... | |
void | update (const BeginOfTrack *trk) override |
This routine will be called when the appropriate signal arrives. More... | |
void | update (const EndOfTrack *trk) override |
This routine will be called when the appropriate signal arrives. More... | |
void | update (const ::EndOfEvent *) override |
void | updateHit (CaloG4Hit *) |
Protected Member Functions inherited from SensitiveDetector | |
TrackInformation * | cmsTrackInformation (const G4Track *aTrack) |
Local3DPoint | ConvertToLocal3DPoint (const G4ThreeVector &point) const |
Local3DPoint | FinalStepPosition (const G4Step *step, coordinates) const |
Local3DPoint | InitialStepPosition (const G4Step *step, coordinates) const |
Local3DPoint | LocalPostStepPosition (const G4Step *step) const |
Local3DPoint | LocalPreStepPosition (const G4Step *step) const |
void | NaNTrap (const G4Step *step) const |
void | setNames (const std::vector< std::string > &) |
Protected Member Functions inherited from Observer< const EndOfEvent *> | |
virtual void | update (const EndOfEvent *)=0 |
This routine will be called when the appropriate signal arrives. More... | |
Private Member Functions | |
double | curve_LY (const G4LogicalVolume *) |
void | getBaseNumber (const G4Step *) |
double | getBirkL3 (const G4Step *) |
uint16_t | getLayerIDForTimeSim () |
uint16_t | getRadiationLength (const G4StepPoint *hitPoint, const G4LogicalVolume *lv) |
void | initMap () |
bool | isXtal (const G4LogicalVolume *) |
Private Attributes | |
EnergyResolutionVsLumi | ageing |
bool | ageingWithSlopeLY |
double | birk1 |
double | birk2 |
double | birk3 |
double | birkCut |
double | birkSlope |
double | crystalDepth |
double | crystalLength |
std::string | crystalMat |
G4ThreeVector | currentLocalPoint |
uint16_t | depth |
std::string | depth1Name |
std::string | depth2Name |
const EcalSimulationParameters * | ecalSimParameters_ |
std::vector< const G4LogicalVolume * > | noWeight |
std::unique_ptr< EcalNumberingScheme > | numberingScheme_ |
double | scaleRL |
double | slopeLY |
bool | storeLayerTimeSim |
bool | storeRL |
bool | storeTrack |
EcalBaseNumber | theBaseNumber |
bool | useBirk |
bool | useBirkL3 |
std::vector< const G4LogicalVolume * > | useDepth1 |
std::vector< const G4LogicalVolume * > | useDepth2 |
bool | useWeight |
std::map< const G4LogicalVolume *, double > | xtalLMap |
Additional Inherited Members | |
Protected Types inherited from SensitiveDetector | |
enum | coordinates { WorldCoordinates, LocalCoordinates } |
Static Protected Member Functions inherited from CaloSD | |
static std::string | printableDecayChain (const std::vector< unsigned int > &decayChain) |
Protected Attributes inherited from CaloSD | |
CaloG4Hit * | currentHit |
CaloHitID | currentID |
float | edepositEM |
float | edepositHAD |
double | eminHit |
double | energyCut |
G4ThreeVector | entranceLocal |
G4ThreeVector | entrancePoint |
bool | forceSave |
float | incidentEnergy |
double | kmaxIon |
double | kmaxNeutron |
double | kmaxProton |
G4ThreeVector | posGlobal |
CaloHitID | previousID |
bool | suppressHeavy |
double | tmaxHit |
ECalSD::ECalSD | ( | const std::string & | name, |
const EcalSimulationParameters * | ecpar, | ||
const SensitiveDetectorCatalog & | clg, | ||
edm::ParameterSet const & | p, | ||
const SimTrackManager * | manager | ||
) |
Definition at line 41 of file ECalSD.cc.
References ageing, ageingWithSlopeLY, birk1, birk2, birk3, birkCut, birkSlope, crystalMat, depth1Name, EcalSimulationParameters::depth1Name_, depth2Name, EcalSimulationParameters::depth2Name_, submitPVValidationJobs::dump, ecalSimParameters_, Exception, g, relativeConstraints::geom, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), initMap(), dqmdumpme::k, CaloSD::kmaxIon, CaloSD::kmaxNeutron, CaloSD::kmaxProton, SensitiveDetectorCatalog::logicalNames(), materialBudgetVolume_cfi::lvNames, TFileDirectory::make(), Skims_PA_cff::name, numberingScheme_, AlCaHLTBitMon_ParallelJobs::p, scaleRL, generator_cfi::scheme, EnergyResolutionVsLumi::setLumies(), setNumberingScheme(), slopeLY, storeLayerTimeSim, storeRL, storeTrack, AlCaHLTBitMon_QueryRunRegistry::string, CaloSD::suppressHeavy, compare::tfile, runGCPTkAlMap::title, useBirk, useBirkL3, useWeight, EcalSimulationParameters::useWeight_, and TrackerOfflineValidation_Dqm_cff::xmin.
|
private |
Definition at line 427 of file ECalSD.cc.
References ageing, ageingWithSlopeLY, EnergyResolutionVsLumi::calcLightCollectionEfficiencyWeighted(), crystalDepth, crystalLength, CaloSD::currentID, currentLocalPoint, slopeLY, CaloHitID::unitID(), and mps_merge::weight.
Referenced by EnergyCorrected(), and getEnergyDeposit().
|
overrideprotectedvirtual |
Reimplemented from CaloSD.
Definition at line 229 of file ECalSD.cc.
References funct::abs(), any(), crystalDepth, crystalLength, currentLocalPoint, curve_LY(), CaloSD::getResponseWt(), noWeight, CaloSD::setToLocal(), HLT_2022v12_cff::track, useWeight, and xtalLMap.
|
private |
Definition at line 453 of file ECalSD.cc.
References EcalBaseNumber::addLevel(), EcalBaseNumber::getCapacity(), cuy::ii, Skims_PA_cff::name, EcalBaseNumber::reset(), EcalBaseNumber::setSize(), AlCaHLTBitMon_QueryRunRegistry::string, and theBaseNumber.
Referenced by setDetUnitId().
|
private |
Definition at line 472 of file ECalSD.cc.
References birk1, birkCut, birkSlope, ALCARECOTkAlJpsiMuMu_cff::charge, fastSimProducer_cff::density, dqm-mbProfile::log, and mps_merge::weight.
Referenced by getEnergyDeposit().
|
overrideprotectedvirtual |
Reimplemented from CaloSD.
Definition at line 255 of file ECalSD.cc.
References funct::abs(), any(), crystalDepth, crystalLength, currentLocalPoint, TauDecayModes::dec, depth, getLayerIDForTimeSim(), getRadiationLength(), isXtal(), PCaloHit::kEcalDepthMask, PCaloHit::kEcalDepthOffset, PCaloHit::kEcalDepthRefz, rho, setDetUnitId(), CaloSD::setToLocal(), storeLayerTimeSim, storeRL, useDepth1, useDepth2, xtalLMap, and z.
|
overrideprotectedvirtual |
Reimplemented from CaloSD.
Definition at line 180 of file ECalSD.cc.
References any(), birk1, birk2, birk3, curve_LY(), CaloSD::getAttenuation(), getBirkL3(), CaloSD::getResponseWt(), TrackInformation::isPrimary(), CaloSD::kmaxIon, CaloSD::kmaxNeutron, CaloSD::kmaxProton, noWeight, CaloSD::suppressHeavy, useBirk, useBirkL3, and useWeight.
|
private |
Definition at line 313 of file ECalSD.cc.
References crystalDepth.
Referenced by getDepth(), and getRadiationLength().
|
private |
Definition at line 287 of file ECalSD.cc.
References funct::abs(), crystalDepth, crystalLength, getLayerIDForTimeSim(), GetRecoTauVFromDQM_MC_cff::kk, rho, scaleRL, CaloSD::setToLocal(), AlCaHLTBitMon_QueryRunRegistry::string, useWeight, and z.
Referenced by getDepth().
|
overrideprotectedvirtual |
Reimplemented from CaloSD.
Definition at line 244 of file ECalSD.cc.
References depth, CaloSD::forceSave, CaloSD::getTrackID(), and storeTrack.
|
private |
Definition at line 334 of file ECalSD.cc.
References any(), crystalMat, depth1Name, depth2Name, PVValHelper::dz, EcalSimulationParameters::dzs_, ecalSimParameters_, mps_fire::i, EcalSimulationParameters::lvNames_, EcalSimulationParameters::matNames_, Skims_PA_cff::name, noWeight, AlCaHLTBitMon_QueryRunRegistry::string, useDepth1, useDepth2, and xtalLMap.
Referenced by ECalSD().
|
private |
|
overridevirtual |
Implements CaloSD.
Definition at line 318 of file ECalSD.cc.
References getBaseNumber(), numberingScheme_, and theBaseNumber.
Referenced by getDepth().
void ECalSD::setNumberingScheme | ( | EcalNumberingScheme * | scheme | ) |
Definition at line 327 of file ECalSD.cc.
References numberingScheme_, and generator_cfi::scheme.
Referenced by ECalSD(), and HcalTB04Analysis::update().
|
private |
Definition at line 69 of file ECalSD.h.
Referenced by curve_LY(), and ECalSD().
|
private |
Definition at line 70 of file ECalSD.h.
Referenced by curve_LY(), and ECalSD().
|
private |
Definition at line 63 of file ECalSD.h.
Referenced by ECalSD(), getBirkL3(), and getEnergyDeposit().
|
private |
Definition at line 63 of file ECalSD.h.
Referenced by ECalSD(), and getEnergyDeposit().
|
private |
Definition at line 63 of file ECalSD.h.
Referenced by ECalSD(), and getEnergyDeposit().
|
private |
Definition at line 63 of file ECalSD.h.
Referenced by ECalSD(), and getBirkL3().
|
private |
Definition at line 63 of file ECalSD.h.
Referenced by ECalSD(), and getBirkL3().
|
private |
Definition at line 75 of file ECalSD.h.
Referenced by curve_LY(), EnergyCorrected(), getDepth(), getLayerIDForTimeSim(), and getRadiationLength().
|
private |
Definition at line 74 of file ECalSD.h.
Referenced by curve_LY(), EnergyCorrected(), getDepth(), and getRadiationLength().
|
private |
|
private |
Definition at line 73 of file ECalSD.h.
Referenced by curve_LY(), EnergyCorrected(), and getDepth().
|
private |
Definition at line 76 of file ECalSD.h.
Referenced by dqm_interfaces.DirID::__eq__(), dqm_interfaces.DirID::__repr__(), getDepth(), getTrackID(), and dqm_interfaces.DirWalkerDB::run().
|
private |
|
private |
|
private |
|
private |
Definition at line 67 of file ECalSD.h.
Referenced by EnergyCorrected(), getEnergyDeposit(), and initMap().
|
private |
Definition at line 60 of file ECalSD.h.
Referenced by ECalSD(), setDetUnitId(), and setNumberingScheme().
|
private |
Definition at line 64 of file ECalSD.h.
Referenced by ECalSD(), and getRadiationLength().
|
private |
Definition at line 64 of file ECalSD.h.
Referenced by curve_LY(), and ECalSD().
|
private |
Definition at line 61 of file ECalSD.h.
Referenced by ECalSD(), and getDepth().
|
private |
Definition at line 61 of file ECalSD.h.
Referenced by ECalSD(), and getDepth().
|
private |
Definition at line 61 of file ECalSD.h.
Referenced by ECalSD(), and getTrackID().
|
private |
Definition at line 68 of file ECalSD.h.
Referenced by getBaseNumber(), and setDetUnitId().
|
private |
Definition at line 62 of file ECalSD.h.
Referenced by ECalSD(), and getEnergyDeposit().
|
private |
Definition at line 62 of file ECalSD.h.
Referenced by ECalSD(), and getEnergyDeposit().
|
private |
Definition at line 67 of file ECalSD.h.
Referenced by getDepth(), and initMap().
|
private |
Definition at line 67 of file ECalSD.h.
Referenced by getDepth(), and initMap().
|
private |
Definition at line 61 of file ECalSD.h.
Referenced by ECalSD(), EnergyCorrected(), getEnergyDeposit(), and getRadiationLength().
|
private |
Definition at line 66 of file ECalSD.h.
Referenced by EnergyCorrected(), getDepth(), initMap(), and isXtal().