Class RMGSelectiveEkinMinCutProcess¶
Defined in File RMGSelectiveEkinMinCutProcess.hh
Inheritance Relationships¶
Base Type¶
public G4UserSpecialCuts
Class Documentation¶
-
class RMGSelectiveEkinMinCutProcess : public G4UserSpecialCuts¶
Variant of
G4UserSpecialCutsthat only enforces the kinetic-energy cut on the (logical-volume, particle) pairs registered with RMGHardware.Where no selective cut applies, the process returns an infinite interaction length, so it is effectively transparent. This avoids the cost of applying the standard
G4UserSpecialCutsglobally when the cut is only desired in a few volumes.Public Functions
-
explicit RMGSelectiveEkinMinCutProcess(const G4String &process_name = "UserSpecialCut")¶
-
~RMGSelectiveEkinMinCutProcess() override = default¶
-
G4double PostStepGetPhysicalInteractionLength(const G4Track &aTrack, G4double previousStepSize, G4ForceCondition *condition) override¶
Defer to the base class only when the volume/particle pair is registered for a selective cut; otherwise return an infinite interaction length.
-
explicit RMGSelectiveEkinMinCutProcess(const G4String &process_name = "UserSpecialCut")¶