ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
G4ITPathFinder Class Reference

#include <geant4/tree/geant4-10.6-release/source/processes/electromagnetic/dna/management/include/G4ITPathFinder.hh>

+ Inheritance diagram for G4ITPathFinder:
+ Collaboration diagram for G4ITPathFinder:

Public Member Functions

G4double ComputeStep (const G4FieldTrack &pFieldTrack, G4double pCurrentProposedStepLength, G4int navigatorId, G4int stepNo, G4double &pNewSafety, ELimited &limitedStep, G4FieldTrack &EndState, G4VPhysicalVolume *currentVolume)
 
void Locate (const G4ThreeVector &position, const G4ThreeVector &direction, G4bool relativeSearch=true)
 
void ReLocate (const G4ThreeVector &position)
 
void PrepareNewTrack (const G4ThreeVector &position, const G4ThreeVector &direction, G4VPhysicalVolume *massStartVol=0)
 
G4TouchableHandle CreateTouchableHandle (G4int navId) const
 
G4VPhysicalVolumeGetLocatedVolume (G4int navId) const
 
G4bool IsParticleLooping () const
 
G4double GetCurrentSafety () const
 
G4double GetMinimumStep () const
 
unsigned int GetNumberGeometriesLimitingStep () const
 
G4double ComputeSafety (const G4ThreeVector &globalPoint)
 
G4double ObtainSafety (G4int navId, G4ThreeVector &globalCenterPoint)
 
void EnableParallelNavigation (G4bool enableChoice=true)
 
G4int SetVerboseLevel (G4int lev=-1)
 
G4int GetMaxLoopCount () const
 
void SetMaxLoopCount (G4int new_max)
 
void MovePoint ()
 
G4double LastPreSafety (G4int navId, G4ThreeVector &globalCenterPoint, G4double &minSafety)
 
void PushPostSafetyToPreSafety ()
 
G4StringLimitedString (ELimited lim)
 
- Public Member Functions inherited from G4TrackStateDependent< G4ITPathFinder >
virtual ~G4TrackStateDependent ()
 
virtual void SetTrackState (G4shared_ptr< StateType > state)
 
virtual G4VTrackStateHandle PopTrackState ()
 
virtual G4VTrackStateHandle GetTrackState () const
 
virtual StateTypeHandle GetConcreteTrackState () const
 
virtual void LoadTrackState (G4TrackStateManager &manager)
 
virtual void SaveTrackState (G4TrackStateManager &manager)
 
virtual void NewTrackState ()
 
virtual StateTypeHandle CreateTrackState () const
 
virtual void ResetTrackState ()
 
- Public Member Functions inherited from G4VTrackStateDependent
 G4VTrackStateDependent ()
 
virtual ~G4VTrackStateDependent ()
 

Static Public Member Functions

static G4ITPathFinderGetInstance ()
 

Protected Member Functions

G4double DoNextLinearStep (const G4FieldTrack &FieldTrack, G4double proposedStepLength)
 
G4double DoNextCurvedStep (const G4FieldTrack &FieldTrack, G4double proposedStepLength, G4VPhysicalVolume *pCurrentPhysVolume)
 
void WhichLimited ()
 
void PrintLimited ()
 
G4bool UseSafetyForOptimization (G4bool)
 
void ReportMove (const G4ThreeVector &OldV, const G4ThreeVector &NewV, const G4String &Quantity) const
 
 G4ITPathFinder ()
 
 ~G4ITPathFinder ()
 
G4ITNavigator * GetNavigator (G4int n) const
 
- Protected Member Functions inherited from G4TrackStateDependent< G4ITPathFinder >
 G4TrackStateDependent ()
 

Private Attributes

G4ITMultiNavigatorfpMultiNavigator
 
G4int fNoActiveNavigators
 
G4ITNavigator * fpNavigator [G4ITNavigator::fMaxNav]
 
G4int fVerboseLevel
 
G4ITTransportationManagerfpTransportManager
 
G4double kCarTolerance
 

Static Private Attributes

static G4ThreadLocal
G4ITPathFinder
fpPathFinder =0
 

Additional Inherited Members

- Public Types inherited from G4TrackStateDependent< G4ITPathFinder >
typedef G4ITPathFinder ClassType
 
typedef G4TrackState
< G4ITPathFinder
StateType
 
typedef G4shared_ptr< StateTypeStateTypeHandle
 
- Protected Attributes inherited from G4TrackStateDependent< G4ITPathFinder >
StateTypeHandle fpTrackState
 

Detailed Description

Definition at line 156 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 156 of file G4ITPathFinder.hh

Constructor & Destructor Documentation

G4ITPathFinder::G4ITPathFinder ( )
protected

Definition at line 95 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 95 of file G4ITPathFinder.cc

References fNoActiveNavigators, fpMultiNavigator, fpNavigator, fpTransportManager, G4GeometryTolerance::GetInstance(), G4GeometryTolerance::GetSurfaceTolerance(), G4ITTransportationManager::GetTransportationManager(), kCarTolerance, and num.

Referenced by GetInstance().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4ITPathFinder::~G4ITPathFinder ( )
protected

Definition at line 115 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 115 of file G4ITPathFinder.cc

References fpMultiNavigator, and fpPathFinder.

Member Function Documentation

G4double G4ITPathFinder::ComputeSafety ( const G4ThreeVector globalPoint)

Definition at line 736 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 736 of file G4ITPathFinder.cc

References fMinSafety_atSafLocation, fNewSafetyComputed, fNoActiveNavigators, fpTransportManager, fSafetyLocation, fVerboseLevel, G4cout, G4endl, G4ITTransportationManager::GetActiveNavigatorsIterator(), kInfinity, num, and position.

Referenced by ReLocate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4ITPathFinder::ComputeStep ( const G4FieldTrack pFieldTrack,
G4double  pCurrentProposedStepLength,
G4int  navigatorId,
G4int  stepNo,
G4double pNewSafety,
ELimited limitedStep,
G4FieldTrack EndState,
G4VPhysicalVolume currentVolume 
)

Definition at line 153 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 153 of file G4ITPathFinder.cc

References DoNextLinearStep(), FatalException, fCurrentPreStepSafety, fCurrentStepNo, fCurrentStepSize, fEndState, fLastLocatedPosition, fLastStepNo, fLimitedStep, fMinStep, fNewTrack, fNoActiveNavigators, fNoGeometriesLimiting, fRelocatedPoint, fTrueMinStep, fVerboseLevel, G4cout, G4endl, G4Exception(), G4FieldTrack::GetMomentumDirection(), G4FieldTrack::GetPosition(), kCarTolerance, Locate(), CLHEP::Hep3Vector::mag2(), message(), min, mm, and MovePoint().

+ Here is the call graph for this function:

G4TouchableHandle G4ITPathFinder::CreateTouchableHandle ( G4int  navId) const

Definition at line 769 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 769 of file G4ITPathFinder.cc

References fLocatedVolume, fVerboseLevel, G4cout, G4endl, G4TouchableHistory::GetHistory(), G4VPhysicalVolume::GetName(), GetNavigator(), and G4TouchableHistory::UpdateYourself().

+ Here is the call graph for this function:

G4double G4ITPathFinder::DoNextCurvedStep ( const G4FieldTrack FieldTrack,
G4double  proposedStepLength,
G4VPhysicalVolume pCurrentPhysVolume 
)
protected
G4double G4ITPathFinder::DoNextLinearStep ( const G4FieldTrack FieldTrack,
G4double  proposedStepLength 
)
protected

Definition at line 805 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 805 of file G4ITPathFinder.cc

References fCurrentPreStepSafety, fCurrentStepSize, fEndState, fLimitedStep, fLimitTruth, fMinSafety_PreStepPt, fMinStep, fNoActiveNavigators, fNoGeometriesLimiting, fPreSafetyLocation, fPreSafetyMinValue, fPreSafetyValues, fPreStepCenterRenewed, fPreStepLocation, fpTransportManager, fTrueMinStep, fVerboseLevel, G4cout, G4endl, G4FieldTrack::GetMomentumDirection(), G4FieldTrack::GetPosition(), kDoNot, kInfinity, kUnique, CLHEP::Hep3Vector::mag2(), max, min, num, sqr(), Acts::Test::step(), and WhichLimited().

Referenced by ComputeStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ITPathFinder::EnableParallelNavigation ( G4bool  enableChoice = true)

Definition at line 124 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 124 of file G4ITPathFinder.cc

References G4ITSafetyHelper::EnableParallelNavigation(), fpTransportManager, and G4ITTransportationManager::GetSafetyHelper().

Referenced by PrepareNewTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4double G4ITPathFinder::GetCurrentSafety ( ) const
inline

Definition at line 340 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 340 of file G4ITPathFinder.hh

References G4TrackStateDependent< G4ITPathFinder >::fpTrackState.

G4ITPathFinder * G4ITPathFinder::GetInstance ( void  )
static

Definition at line 83 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 83 of file G4ITPathFinder.cc

References fpPathFinder, and G4ITPathFinder().

+ Here is the call graph for this function:

G4VPhysicalVolume * G4ITPathFinder::GetLocatedVolume ( G4int  navId) const
inline

Definition at line 317 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 317 of file G4ITPathFinder.hh

References G4TrackStateDependent< G4ITPathFinder >::fpTrackState.

G4int G4ITPathFinder::GetMaxLoopCount ( ) const
inline
G4double G4ITPathFinder::GetMinimumStep ( ) const
inline

Definition at line 329 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 329 of file G4ITPathFinder.hh

References G4TrackStateDependent< G4ITPathFinder >::fpTrackState.

G4ITNavigator * G4ITPathFinder::GetNavigator ( G4int  n) const
inlineprotected

Definition at line 350 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 350 of file G4ITPathFinder.hh

References fNoActiveNavigators, fpNavigator, and n.

Referenced by CreateTouchableHandle(), and PrintLimited().

+ Here is the caller graph for this function:

unsigned int G4ITPathFinder::GetNumberGeometriesLimitingStep ( ) const
inline

Definition at line 334 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 334 of file G4ITPathFinder.hh

References G4TrackStateDependent< G4ITPathFinder >::fpTrackState.

G4bool G4ITPathFinder::IsParticleLooping ( ) const
inline
G4double G4ITPathFinder::LastPreSafety ( G4int  navId,
G4ThreeVector globalCenterPoint,
G4double minSafety 
)
inline

Definition at line 363 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 363 of file G4ITPathFinder.hh

References G4TrackStateDependent< G4ITPathFinder >::fpTrackState.

G4String & G4ITPathFinder::LimitedString ( ELimited  lim)

Definition at line 1351 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 1351 of file G4ITPathFinder.cc

References kDoNot, kSharedOther, kSharedTransport, and kUnique.

Referenced by DoNextCurvedStep(), and PrintLimited().

+ Here is the caller graph for this function:

void G4ITPathFinder::Locate ( const G4ThreeVector position,
const G4ThreeVector direction,
G4bool  relativeSearch = true 
)

Definition at line 462 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 462 of file G4ITPathFinder.cc

References fCurrentStepSize, fEndState, fLastLocatedPosition, fLimitedStep, fLimitTruth, fLocatedVolume, fNewTrack, fNoActiveNavigators, fpTransportManager, fRelocatedPoint, fVerboseLevel, G4cout, G4endl, G4ITTransportationManager::GetActiveNavigatorsIterator(), kCarTolerance, kDoNot, CLHEP::Hep3Vector::mag2(), num, position, and ReportMove().

Referenced by ComputeStep(), and PrepareNewTrack().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ITPathFinder::MovePoint ( )
inline

Definition at line 345 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 345 of file G4ITPathFinder.hh

References G4TrackStateDependent< G4ITPathFinder >::fpTrackState.

Referenced by ComputeStep(), and PrepareNewTrack().

+ Here is the caller graph for this function:

G4double G4ITPathFinder::ObtainSafety ( G4int  navId,
G4ThreeVector globalCenterPoint 
)
inline

Definition at line 356 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 356 of file G4ITPathFinder.hh

References G4TrackStateDependent< G4ITPathFinder >::fpTrackState.

void G4ITPathFinder::PrintLimited ( )
protected

Definition at line 1080 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 1080 of file G4ITPathFinder.cc

References fCurrentPreStepSafety, fCurrentStepNo, fCurrentStepSize, fLimitedStep, fLimitTruth, fMinStep, fNoActiveNavigators, fTrueMinStep, fVerboseLevel, G4cout, G4endl, G4VPhysicalVolume::GetName(), GetNavigator(), LimitedString(), and num.

Referenced by DoNextCurvedStep(), and WhichLimited().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ITPathFinder::PushPostSafetyToPreSafety ( )

Definition at line 1371 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 1371 of file G4ITPathFinder.cc

References fMinSafety_atSafLocation, fNewSafetyComputed, fNoActiveNavigators, fPreSafetyLocation, fPreSafetyMinValue, fPreSafetyValues, and fSafetyLocation.

void G4ITPathFinder::ReportMove ( const G4ThreeVector OldV,
const G4ThreeVector NewV,
const G4String Quantity 
) const
protected

Definition at line 440 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 440 of file G4ITPathFinder.cc

References G4cerr, G4endl, G4Exception(), JustWarning, CLHEP::Hep3Vector::mag(), message(), and mm.

Referenced by Locate(), and ReLocate().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4ITPathFinder::SetMaxLoopCount ( G4int  new_max)
inline
G4int G4ITPathFinder::SetVerboseLevel ( G4int  lev = -1)
inline

Definition at line 324 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 324 of file G4ITPathFinder.hh

References fVerboseLevel.

G4bool G4ITPathFinder::UseSafetyForOptimization ( G4bool  )
inlineprotected
void G4ITPathFinder::WhichLimited ( )
protected

Definition at line 1022 of file G4ITPathFinder.cc.

View newest version in sPHENIX GitHub at line 1022 of file G4ITPathFinder.cc

References fCurrentStepSize, fLimitedStep, fLimitTruth, fMinStep, fNoActiveNavigators, fNoGeometriesLimiting, fVerboseLevel, G4cout, G4endl, kCarTolerance, kDoNot, kInfinity, kSharedOther, kSharedTransport, kUnique, num, PrintLimited(), and Acts::Test::step().

Referenced by DoNextLinearStep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4int G4ITPathFinder::fNoActiveNavigators
private
G4ITMultiNavigator* G4ITPathFinder::fpMultiNavigator
private

Definition at line 294 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 294 of file G4ITPathFinder.hh

Referenced by DoNextCurvedStep(), G4ITPathFinder(), PrepareNewTrack(), and ~G4ITPathFinder().

G4ITNavigator* G4ITPathFinder::fpNavigator[G4ITNavigator::fMaxNav]
private

Definition at line 300 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 300 of file G4ITPathFinder.hh

Referenced by DoNextCurvedStep(), G4ITPathFinder(), GetNavigator(), and PrepareNewTrack().

G4ThreadLocal G4ITPathFinder * G4ITPathFinder::fpPathFinder =0
staticprivate

Definition at line 309 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 309 of file G4ITPathFinder.hh

Referenced by GetInstance(), and ~G4ITPathFinder().

G4ITTransportationManager* G4ITPathFinder::fpTransportManager
private

Definition at line 304 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 304 of file G4ITPathFinder.hh

Referenced by ComputeSafety(), DoNextLinearStep(), EnableParallelNavigation(), G4ITPathFinder(), Locate(), PrepareNewTrack(), and ReLocate().

G4int G4ITPathFinder::fVerboseLevel
private
G4double G4ITPathFinder::kCarTolerance
private

Definition at line 307 of file G4ITPathFinder.hh.

View newest version in sPHENIX GitHub at line 307 of file G4ITPathFinder.hh

Referenced by ComputeStep(), G4ITPathFinder(), Locate(), and WhichLimited().


The documentation for this class was generated from the following files: