Geant4-11
|
#include <G4SafetyHelper.hh>
Public Member Functions | |
G4double | CheckNextStep (const G4ThreeVector &position, const G4ThreeVector &direction, const G4double currentMaxStep, G4double &newSafety) |
G4double | ComputeSafety (const G4ThreeVector &pGlobalPoint, G4double maxRadius=DBL_MAX) |
void | EnableParallelNavigation (G4bool parallel) |
G4SafetyHelper () | |
G4VPhysicalVolume * | GetWorldVolume () |
void | InitialiseHelper () |
void | InitialiseNavigator () |
void | Locate (const G4ThreeVector &pGlobalPoint, const G4ThreeVector &direction) |
void | ReLocateWithinVolume (const G4ThreeVector &pGlobalPoint) |
void | SetCurrentSafety (G4double val, const G4ThreeVector &pos) |
G4int | SetVerboseLevel (G4int lev) |
~G4SafetyHelper () | |
Private Attributes | |
G4bool | fFirstCall = true |
G4double | fLastSafety = 0.0 |
G4ThreeVector | fLastSafetyPosition |
G4int | fMassNavigatorId = -1 |
G4Navigator * | fpMassNavigator = nullptr |
G4PathFinder * | fpPathFinder = nullptr |
G4bool | fUseParallelGeometries = false |
G4int | fVerbose = 0 |
Definition at line 46 of file G4SafetyHelper.hh.
G4SafetyHelper::G4SafetyHelper | ( | ) |
Definition at line 38 of file G4SafetyHelper.cc.
G4SafetyHelper::~G4SafetyHelper | ( | ) |
Definition at line 73 of file G4SafetyHelper.cc.
G4double G4SafetyHelper::CheckNextStep | ( | const G4ThreeVector & | position, |
const G4ThreeVector & | direction, | ||
const G4double | currentMaxStep, | ||
G4double & | newSafety | ||
) |
Definition at line 78 of file G4SafetyHelper.cc.
References G4Navigator::CheckNextStep(), fLastSafety, fLastSafetyPosition, fpMassNavigator, and position.
Referenced by G4VMscModel::ComputeGeomLimit().
G4double G4SafetyHelper::ComputeSafety | ( | const G4ThreeVector & | pGlobalPoint, |
G4double | maxRadius = DBL_MAX |
||
) |
Definition at line 98 of file G4SafetyHelper.cc.
References G4PathFinder::ComputeSafety(), G4Navigator::ComputeSafety(), fLastSafety, fLastSafetyPosition, fpMassNavigator, fpPathFinder, fUseParallelGeometries, and position.
Referenced by G4VMultipleScattering::AlongStepDoIt(), and G4VMscModel::ComputeSafety().
|
inline |
Definition at line 129 of file G4SafetyHelper.hh.
References fUseParallelGeometries.
Referenced by G4PathFinder::EnableParallelNavigation().
|
inline |
Definition at line 135 of file G4SafetyHelper.hh.
References fpMassNavigator, and G4Navigator::GetWorldVolume().
void G4SafetyHelper::InitialiseHelper | ( | ) |
Definition at line 65 of file G4SafetyHelper.cc.
References fFirstCall, fLastSafety, fLastSafetyPosition, and InitialiseNavigator().
Referenced by G4VEnergyLossProcess::BuildPhysicsTable(), G4ElNeutrinoNucleusProcess::G4ElNeutrinoNucleusProcess(), G4MuNeutrinoNucleusProcess::G4MuNeutrinoNucleusProcess(), G4NeutrinoElectronProcess::G4NeutrinoElectronProcess(), G4VMscModel::GetParticleChangeForMSC(), G4PathFinder::PrepareNewTrack(), and G4VMultipleScattering::PreparePhysicsTable().
void G4SafetyHelper::InitialiseNavigator | ( | ) |
Definition at line 43 of file G4SafetyHelper.cc.
References G4TransportationManager::ActivateNavigator(), FatalException, fMassNavigatorId, fpMassNavigator, fpPathFinder, G4Exception(), G4PathFinder::GetInstance(), G4TransportationManager::GetNavigatorForTracking(), G4TransportationManager::GetTransportationManager(), and G4Navigator::GetWorldVolume().
Referenced by InitialiseHelper().
void G4SafetyHelper::Locate | ( | const G4ThreeVector & | pGlobalPoint, |
const G4ThreeVector & | direction | ||
) |
Definition at line 177 of file G4SafetyHelper.cc.
References fpMassNavigator, fpPathFinder, fUseParallelGeometries, G4PathFinder::Locate(), and G4Navigator::LocateGlobalPointAndSetup().
void G4SafetyHelper::ReLocateWithinVolume | ( | const G4ThreeVector & | pGlobalPoint | ) |
Definition at line 143 of file G4SafetyHelper.cc.
References fLastSafety, fLastSafetyPosition, fpMassNavigator, fpPathFinder, fUseParallelGeometries, fVerbose, G4endl, G4Exception(), JustWarning, G4Navigator::LocateGlobalPointWithinVolume(), CLHEP::Hep3Vector::mag(), CLHEP::Hep3Vector::mag2(), G4PathFinder::ReLocate(), and sqr().
Referenced by G4VMultipleScattering::AlongStepDoIt(), G4NeutrinoElectronProcess::PostStepDoIt(), G4ElNeutrinoNucleusProcess::PostStepDoIt(), and G4MuNeutrinoNucleusProcess::PostStepDoIt().
|
inline |
Definition at line 141 of file G4SafetyHelper.hh.
References fLastSafety, fLastSafetyPosition, and pos.
Referenced by G4CoupledTransportation::AlongStepGetPhysicalInteractionLength(), and G4Transportation::AlongStepGetPhysicalInteractionLength().
Definition at line 121 of file G4SafetyHelper.hh.
References fVerbose.
|
private |
Definition at line 100 of file G4SafetyHelper.hh.
Referenced by InitialiseHelper().
|
private |
Definition at line 108 of file G4SafetyHelper.hh.
Referenced by CheckNextStep(), ComputeSafety(), InitialiseHelper(), ReLocateWithinVolume(), and SetCurrentSafety().
|
private |
Definition at line 107 of file G4SafetyHelper.hh.
Referenced by CheckNextStep(), ComputeSafety(), InitialiseHelper(), ReLocateWithinVolume(), and SetCurrentSafety().
|
private |
Definition at line 95 of file G4SafetyHelper.hh.
Referenced by InitialiseNavigator().
|
private |
Definition at line 94 of file G4SafetyHelper.hh.
Referenced by CheckNextStep(), ComputeSafety(), GetWorldVolume(), InitialiseNavigator(), Locate(), and ReLocateWithinVolume().
|
private |
Definition at line 93 of file G4SafetyHelper.hh.
Referenced by ComputeSafety(), InitialiseNavigator(), Locate(), and ReLocateWithinVolume().
|
private |
Definition at line 97 of file G4SafetyHelper.hh.
Referenced by ComputeSafety(), EnableParallelNavigation(), Locate(), and ReLocateWithinVolume().
|
private |
Definition at line 102 of file G4SafetyHelper.hh.
Referenced by ReLocateWithinVolume(), and SetVerboseLevel().