Class RMGSteppingAction

Inheritance Relationships

Base Type

  • public G4UserSteppingAction

Class Documentation

class RMGSteppingAction : public G4UserSteppingAction

Stepping action driving output schemes and optional kill heuristics.

In addition to forwarding each step to the registered output schemes, this action can be configured to drop secondary tracks and to kill long-lived daughter nuclei (see SetDaughterKillLifetime) — useful e.g. to truncate decay chains that would otherwise extend over long timescales.

Public Functions

RMGSteppingAction(RMGRunAction*)
~RMGSteppingAction() = default
RMGSteppingAction(RMGSteppingAction const&) = delete
RMGSteppingAction &operator=(RMGSteppingAction const&) = delete
RMGSteppingAction(RMGSteppingAction&&) = delete
RMGSteppingAction &operator=(RMGSteppingAction&&) = delete
void UserSteppingAction(const G4Step*) override

Forward the step to all output schemes and apply tracking-control of long-lived isotopes.

void SetDaughterKillLifetime(double max_lifetime)

Kill daughter nuclei whose PDG lifetime exceeds max_lifetime.

Applies to ground-state nuclei produced as secondaries; the cut is on the tabulated half-life of the species, not on the sampled decay time. Set to a non-positive value to disable.

Parameters:

max_lifetime – Maximum allowed lifetime, in Geant4 units of time.