14#include "G4VRestDiscreteProcess.hh"
15#include "G4ParticleChangeForDecay.hh"
16#include "G4DecayProcessType.hh"
17#include <framework/core/Module.h>
26 class G4LongLivedNeutral;
67 const G4Track& aTrack,
79 const G4Track& aTrack,
90 virtual G4bool
IsApplicable(
const G4ParticleDefinition&)
override;
104 virtual G4VParticleChange*
DecayIt(
105 const G4Track& aTrack,
119 const G4Track& track,
120 G4ForceCondition* condition
133 const G4Track& track,
134 G4double previousStepSize,
135 G4ForceCondition* condition
142 G4double previousStepSize,
143 G4ForceCondition* condition
148 G4ForceCondition* condition
186 const G4Track& aTrack,
This class is a decay process.
virtual G4VParticleChange * PostStepDoIt(const G4Track &aTrack, const G4Step &aStep) override
G4VProcess::PostStepDoIt() implemention.
G4LongLivedNeutralDecay & operator=(const G4LongLivedNeutralDecay &right)
Assignment Operator.
virtual G4double GetMeanFreePath(const G4Track &aTrack, G4double previousStepSize, G4ForceCondition *condition) override
GetMeanFreePath returns ctau*beta*gamma for decay in flight.
virtual G4double PostStepGetPhysicalInteractionLength(const G4Track &track, G4double previousStepSize, G4ForceCondition *condition) override
G4VProcess::PostStepGetPhysicalInteractionLength() implemention.
virtual G4double AtRestGetPhysicalInteractionLength(const G4Track &track, G4ForceCondition *condition) override
G4VProcess::AtRestGetPhysicalInteractionLength() implemention.
G4ParticleChangeForDecay fParticleChangeForDecay
ParticleChange for decay process.
G4LongLivedNeutralDecay(const G4LongLivedNeutralDecay &right)
Copy Constructor.
G4double fRemainderLifeTime
ParticleChange for decay process.
virtual void EndTracking() override
inform End of tracking for each track to the physics process
virtual G4VParticleChange * DecayIt(const G4Track &aTrack, const G4Step &aStep)
G4Decay::DecayIt() implemention.
const G4double HighestValue
Remainder of life time at rest.
G4int verboseLevel
controle flag for output message 0: Silent 1: Warning message 2: More
virtual G4double GetMeanLifeTime(const G4Track &aTrack, G4ForceCondition *condition) override
GetMeanLifeTime returns ctau for decay at rest.
virtual ~G4LongLivedNeutralDecay()
Destructor.
virtual G4bool IsApplicable(const G4ParticleDefinition &) override
returns "true" if the decay process can be applied to the particle type.
virtual void BuildPhysicsTable(const G4ParticleDefinition &) override
In G4Decay, thePhysicsTable stores values of beta * std::sqrt( 1 - beta*beta) as a function of normal...
virtual void StartTracking(G4Track *) override
inform Start of tracking for each track to the physics process
G4double GetRemainderLifeTime() const
Get Remainder of life time at rest decay.
virtual G4VParticleChange * AtRestDoIt(const G4Track &aTrack, const G4Step &aStep) override
G4VProcess::AtRestDoIt() implementation for decay at rest.
Abstract base class for different kinds of events.