Go to the documentation of this file.
25 #ifndef SimG4Core_PhysicsLists_MonopoleTransportation_h
26 #define SimG4Core_PhysicsLists_MonopoleTransportation_h 1
28 #include "G4VProcess.hh"
29 #include "G4FieldManager.hh"
31 #include "G4Navigator.hh"
32 #include "G4TransportationManager.hh"
33 #include "G4PropagatorInField.hh"
36 #include "G4ParticleChangeForTransport.hh"
37 #include "CLHEP/Units/SystemOfUnits.h"
51 G4double previousStepSize,
52 G4double currentMinimumStep,
53 G4double& currentSafety,
56 G4VParticleChange*
AlongStepDoIt(
const G4Track&
track,
const G4Step& stepData)
override;
58 G4VParticleChange*
PostStepDoIt(
const G4Track&
track,
const G4Step& stepData)
override;
62 G4double previousStepSize,
63 G4ForceCondition* pForceCond)
override;
94 G4VParticleChange*
AtRestDoIt(
const G4Track&,
const G4Step&)
override;
168 G4TransportationManager* transportMgr = G4TransportationManager::GetTransportationManager();
169 return transportMgr->GetFieldManager()->DoesFieldExist();
G4VParticleChange * AlongStepDoIt(const G4Track &track, const G4Step &stepData) override
G4SafetyHelper * fpSafetyHelper
void SetThresholdTrials(G4int newMaxTrials)
G4ThreeVector fTransportEndSpin
G4ThreeVector fPreviousSftOrigin
G4bool fGeometryLimitedStep
G4double fMaxEnergyKilled
G4PropagatorInField * fFieldPropagator
CMSFieldManager * fieldMgrCMS
G4double fCandidateEndGlobalTime
G4ThreeVector fTransportEndPosition
G4PropagatorInField * GetPropagatorInField()
G4double GetThresholdWarningEnergy() const
G4ThreeVector fTransportEndMomentumDir
G4double fSumEnergyKilled
G4bool fShortStepOptimisation
G4Navigator * fLinearNavigator
verbosityLevel
L1 selection andOrL1 = cms.bool( True ), l1Algorithms = cms.vstring("L1_ZeroBias_FirstCollidingBunch"...
void ResetKilledStatistics(G4int report=1)
G4ParticleChangeForTransport fParticleChange
G4VParticleChange * PostStepDoIt(const G4Track &track, const G4Step &stepData) override
void SetThresholdWarningEnergy(G4double newEnWarn)
G4bool DoesGlobalFieldExist()
G4VParticleChange * AtRestDoIt(const G4Track &, const G4Step &) override
void SetThresholdImportantEnergy(G4double newEnImp)
G4int GetThresholdTrials() const
G4double AlongStepGetPhysicalInteractionLength(const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double ¤tSafety, G4GPILSelection *selection) override
G4TouchableHandle fCurrentTouchableHandle
G4double PostStepGetPhysicalInteractionLength(const G4Track &, G4double previousStepSize, G4ForceCondition *pForceCond) override
const Monopole * fParticleDef
void StartTracking(G4Track *aTrack) override
G4double fThreshold_Important_Energy
G4double AtRestGetPhysicalInteractionLength(const G4Track &, G4ForceCondition *) override
G4double GetMaxEnergyKilled() const
void EnableShortStepOptimisation(G4bool optimise=true)
G4bool fParticleIsLooping
G4double GetSumEnergyKilled() const
G4double fThreshold_Warning_Energy
void SetPropagatorInField(G4PropagatorInField *pFieldPropagator)
MonopoleTransportation(const Monopole *p, G4int verbosityLevel=1)
G4double GetThresholdImportantEnergy() const
G4double endpointDistance
G4double fTransportEndKineticEnergy
~MonopoleTransportation() override
G4bool fEndGlobalTimeComputed