#include <ElectronLimiter.h>
Definition at line 23 of file ElectronLimiter.h.
◆ ElectronLimiter()
ElectronLimiter::ElectronLimiter |
( |
const edm::ParameterSet & |
p, |
|
|
const G4ParticleDefinition * |
part |
|
) |
| |
|
explicit |
◆ ~ElectronLimiter()
ElectronLimiter::~ElectronLimiter |
( |
| ) |
|
|
override |
◆ InitialiseProcess()
void ElectronLimiter::InitialiseProcess |
( |
const G4ParticleDefinition * |
| ) |
|
|
override |
◆ IsApplicable()
G4bool ElectronLimiter::IsApplicable |
( |
const G4ParticleDefinition & |
| ) |
|
|
override |
◆ PostStepDoIt()
G4VParticleChange * ElectronLimiter::PostStepDoIt |
( |
const G4Track & |
aTrack, |
|
|
const G4Step & |
|
|
) |
| |
|
override |
◆ PostStepGetPhysicalInteractionLength()
G4double ElectronLimiter::PostStepGetPhysicalInteractionLength |
( |
const G4Track & |
track, |
|
|
G4double |
previousStepSize, |
|
|
G4ForceCondition * |
condition |
|
) |
| |
|
override |
Definition at line 53 of file ElectronLimiter.cc.
57 G4double
limit = DBL_MAX;
60 G4double kinEnergy = aTrack.GetKineticEnergy();
69 const G4Region *reg = aTrack.GetVolume()->GetLogicalVolume()->GetRegion();
81 G4double safety = aTrack.GetStep()->GetPreStepPoint()->GetSafety();
83 G4double
range =
ionisation_->GetRangeForLoss(kinEnergy, aTrack.GetMaterialCutsCouple());
84 if (safety >=
range) {
References goodZToMuMu_cfi::condition, energyLimits_, factors_, fieldCheckFlag_, mps_fire::i, CMSTrackingCutModel::InitialiseForStep(), ionisation_, killTrack_, remoteMonitoring_LED_IterMethod_cfg::limit, min(), minStepLimit_, nRegions_, FastTimerService_cff::range, rangeCheckFlag_, regions_, rms_, and trcut_.
◆ SetFieldCheckFlag()
void ElectronLimiter::SetFieldCheckFlag |
( |
G4bool |
val | ) |
|
|
inline |
◆ SetRangeCheckFlag()
void ElectronLimiter::SetRangeCheckFlag |
( |
G4bool |
val | ) |
|
|
inline |
◆ SetTrackingCutPerRegion()
void ElectronLimiter::SetTrackingCutPerRegion |
( |
std::vector< const G4Region * > & |
reg, |
|
|
std::vector< G4double > & |
cut, |
|
|
std::vector< G4double > & |
fac, |
|
|
std::vector< G4double > & |
rms |
|
) |
| |
◆ StartTracking()
void ElectronLimiter::StartTracking |
( |
G4Track * |
| ) |
|
|
override |
◆ energyLimits_
std::vector<G4double> ElectronLimiter::energyLimits_ |
|
private |
◆ factors_
std::vector<G4double> ElectronLimiter::factors_ |
|
private |
◆ fieldCheckFlag_
G4bool ElectronLimiter::fieldCheckFlag_ |
|
private |
◆ ionisation_
G4VEnergyLossProcess* ElectronLimiter::ionisation_ |
|
private |
◆ killTrack_
G4bool ElectronLimiter::killTrack_ |
|
private |
◆ minStepLimit_
G4double ElectronLimiter::minStepLimit_ |
|
private |
◆ nRegions_
G4int ElectronLimiter::nRegions_ |
|
private |
◆ particle_
const G4ParticleDefinition* ElectronLimiter::particle_ |
|
private |
◆ rangeCheckFlag_
G4bool ElectronLimiter::rangeCheckFlag_ |
|
private |
◆ regions_
std::vector<const G4Region *> ElectronLimiter::regions_ |
|
private |
◆ rms_
std::vector<G4double> ElectronLimiter::rms_ |
|
private |
◆ trcut_