ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <geant4/tree/geant4-10.6-release/source/geometry/navigation/include/G4VIntersectionLocator.hh>
Static Public Member Functions | |
static void | printStatus (const G4FieldTrack &startFT, const G4FieldTrack ¤tFT, G4double requestStep, G4double safety, G4int stepNum, std::ostream &oss, G4int verboseLevel) |
Protected Member Functions | |
G4FieldTrack | ReEstimateEndpoint (const G4FieldTrack &CurrentStateA, const G4FieldTrack &EstimtdEndStateB, G4double linearDistSq, G4double curveDist) |
G4bool | CheckAndReEstimateEndpoint (const G4FieldTrack &CurrentStartA, const G4FieldTrack &EstimatedEndB, G4FieldTrack &RevisedEndPoint, G4int &errorCode) |
G4ThreeVector | GetSurfaceNormal (const G4ThreeVector &CurrentInt_Point, G4bool &validNormal) |
G4ThreeVector | GetGlobalSurfaceNormal (const G4ThreeVector &CurrentE_Point, G4bool &validNormal) |
G4bool | AdjustmentOfFoundIntersection (const G4ThreeVector &A, const G4ThreeVector &CurrentE_Point, const G4ThreeVector &CurrentF_Point, const G4ThreeVector &MomentumDir, const G4bool IntersectAF, G4ThreeVector &IntersectionPoint, G4double &NewSafety, G4double &fPrevSafety, G4ThreeVector &fPrevSftOrigin) |
void | ReportTrialStep (G4int step_no, const G4ThreeVector &ChordAB_v, const G4ThreeVector &ChordEF_v, const G4ThreeVector &NewMomentumDir, const G4ThreeVector &NormalAtEntry, G4bool validNormal) |
G4bool | LocateGlobalPointWithinVolumeAndCheck (const G4ThreeVector &pos) |
void | LocateGlobalPointWithinVolumeCheckAndReport (const G4ThreeVector &pos, const G4String &CodeLocationInfo, G4int CheckMode) |
void | SetCheckMode (G4bool value) |
G4bool | GetCheckMode () |
void | ReportReversedPoints (std::ostringstream &ossMsg, const G4FieldTrack &StartPointVel, const G4FieldTrack &EndPointVel, G4double NewSafety, G4double epsStep, const G4FieldTrack &CurrentA_PointVelocity, const G4FieldTrack &CurrentB_PointVelocity, const G4FieldTrack &SubStart_PointVelocity, const G4ThreeVector &CurrentE_Point, const G4FieldTrack &ApproxIntersecPointV, G4int sbstp_no, G4int sbstp_no_p, G4int depth) |
void | ReportProgress (std::ostream &oss, const G4FieldTrack &StartPointVel, const G4FieldTrack &EndPointVel, G4int substep_no, const G4FieldTrack &A_PtVel, const G4FieldTrack &B_PtVel, G4double safetyLast, G4int depth=-1) |
void | ReportImmediateHit (const char *MethodName, const G4ThreeVector &StartPosition, const G4ThreeVector &TrialPoint, G4double tolerance, unsigned long int numCalls) |
Protected Attributes | |
G4double | kCarTolerance |
G4int | fVerboseLevel = 0 |
G4bool | fUseNormalCorrection = false |
G4bool | fCheckMode = false |
G4Navigator * | fiNavigator |
G4ChordFinder * | fiChordFinder = nullptr |
G4double | fiEpsilonStep = -1.0 |
G4double | fiDeltaIntersection = -1.0 |
G4bool | fiUseSafety = false |
G4Navigator * | fHelpingNavigator |
G4TouchableHistory * | fpTouchable = nullptr |
Private Member Functions | |
G4ThreeVector | GetLocalSurfaceNormal (const G4ThreeVector &CurrentE_Point, G4bool &validNormal) |
G4ThreeVector | GetLastSurfaceNormal (const G4ThreeVector &intersectPoint, G4bool &validNormal) const |
Definition at line 49 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 49 of file G4VIntersectionLocator.hh
G4VIntersectionLocator::G4VIntersectionLocator | ( | G4Navigator * | theNavigator | ) |
Definition at line 45 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 45 of file G4VIntersectionLocator.cc
References G4Navigator::Clone(), fHelpingNavigator, fiNavigator, G4Navigator::GetExternalNavigation(), G4GeometryTolerance::GetInstance(), G4GeometryTolerance::GetSurfaceTolerance(), and kCarTolerance.
|
virtual |
Definition at line 64 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 64 of file G4VIntersectionLocator.cc
References fHelpingNavigator, and fpTouchable.
|
protected |
Definition at line 438 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 438 of file G4VIntersectionLocator.cc
References kdfinder::abs(), CLHEP::Hep3Vector::dot(), fVerboseLevel, G4Exception(), GetGlobalSurfaceNormal(), GetNavigatorFor(), IntersectChord(), JustWarning, kCarTolerance, G4InuclParticleNames::lambda, and G4Navigator::LocateGlobalPointWithinVolume().
Referenced by G4SimpleLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), and G4MultiLevelLocator::EstimateIntersectionPoint().
|
inline |
Definition at line 118 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 118 of file G4VIntersectionLocator.hh
References fUseNormalCorrection.
|
protected |
Definition at line 328 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 328 of file G4VIntersectionLocator.cc
References fiEpsilonStep, G4Exception(), G4FieldTrack::GetCurveLength(), G4FieldTrack::GetPosition(), JustWarning, and ReEstimateEndpoint().
Referenced by G4MultiLevelLocator::EstimateIntersectionPoint().
|
pure virtual |
Implemented in G4BrentLocator, G4MultiLevelLocator, and G4SimpleLocator.
|
inline |
Referenced by G4SimpleLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), and G4MultiLevelLocator::EstimateIntersectionPoint().
|
inlineprotected |
Definition at line 202 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 202 of file G4VIntersectionLocator.hh
References fCheckMode.
Referenced by LocateGlobalPointWithinVolumeCheckAndReport().
|
inline |
Referenced by G4SimpleLocator::EstimateIntersectionPoint(), G4MultiLevelLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), and ReEstimateEndpoint().
|
inline |
Referenced by G4BrentLocator::EstimateIntersectionPoint().
|
inline |
Referenced by G4SimpleLocator::EstimateIntersectionPoint(), G4MultiLevelLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), and ReEstimateEndpoint().
|
protected |
Definition at line 562 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 562 of file G4VIntersectionLocator.cc
References fHelpingNavigator, G4endl, G4Exception(), GetLocalSurfaceNormal(), G4Navigator::GetLocalToGlobalTransform(), JustWarning, CLHEP::Hep3Vector::mag2(), message(), G4AffineTransform::NetRotation(), G4AffineTransform::NetTranslation(), perThousand, and G4AffineTransform::TransformAxis().
Referenced by AdjustmentOfFoundIntersection().
|
private |
Definition at line 601 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 601 of file G4VIntersectionLocator.cc
References fiNavigator, and G4Navigator::GetGlobalExitNormal().
Referenced by GetSurfaceNormal().
|
private |
Definition at line 383 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 383 of file G4VIntersectionLocator.cc
References G4Navigator::CreateTouchableHistory(), G4VSolid::DistanceToOut(), fHelpingNavigator, fpTouchable, G4cerr, G4endl, G4TouchableHistory::GetHistory(), G4VPhysicalVolume::GetLogicalVolume(), GetNavigatorFor(), G4LogicalVolume::GetSolid(), G4NavigationHistory::GetTopTransform(), G4VSolid::Inside(), kCarTolerance, kSurface, G4Navigator::LocateGlobalPointAndSetup(), CLHEP::Hep3Vector::mag(), CLHEP::Hep3Vector::mag2(), CLHEP::perThousand, G4Navigator::SetWorldVolume(), G4VSolid::SurfaceNormal(), and G4AffineTransform::TransformPoint().
Referenced by GetGlobalSurfaceNormal().
|
inline |
Referenced by AdjustmentOfFoundIntersection(), G4SimpleLocator::EstimateIntersectionPoint(), G4MultiLevelLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), GetLocalSurfaceNormal(), and LocateGlobalPointWithinVolumeAndCheck().
|
protected |
Definition at line 517 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 517 of file G4VIntersectionLocator.cc
References G4endl, G4Exception(), GetLastSurfaceNormal(), JustWarning, CLHEP::Hep3Vector::mag(), CLHEP::Hep3Vector::mag2(), message(), and perThousand.
Referenced by G4SimpleLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), and G4MultiLevelLocator::EstimateIntersectionPoint().
|
inline |
|
inline |
Referenced by AdjustmentOfFoundIntersection(), G4SimpleLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), and G4MultiLevelLocator::EstimateIntersectionPoint().
|
protected |
Definition at line 673 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 673 of file G4VIntersectionLocator.cc
References G4Navigator::CheckMode(), G4Navigator::CreateTouchableHistoryHandle(), G4VSolid::DistanceToIn(), fCheckMode, G4endl, G4Exception(), G4VPhysicalVolume::GetCopyNo(), G4Navigator::GetGlobalToLocalTransform(), GetNavigatorFor(), G4TouchableHistory::GetSolid(), G4TouchableHistory::GetVolume(), G4VSolid::Inside(), G4Navigator::IsCheckModeActive(), JustWarning, kInside, kSurface, G4Navigator::LocateGlobalPointAndSetup(), G4Navigator::LocateGlobalPointWithinVolume(), message(), Acts::Test::transform, and G4AffineTransform::TransformPoint().
Referenced by LocateGlobalPointWithinVolumeCheckAndReport().
|
protected |
Definition at line 735 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 735 of file G4VIntersectionLocator.cc
References G4endl, G4Exception(), GetCheckMode(), JustWarning, LocateGlobalPointWithinVolumeAndCheck(), message(), and SetCheckMode().
void G4VIntersectionLocator::printStatus | ( | const G4FieldTrack & | startFT, |
const G4FieldTrack & | currentFT, | ||
G4double | requestStep, | ||
G4double | safety, | ||
G4int | stepNum | ||
) |
Definition at line 75 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 75 of file G4VIntersectionLocator.cc
References fVerboseLevel, and G4cout.
Referenced by G4SimpleLocator::EstimateIntersectionPoint(), G4MultiLevelLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), printStatus(), ReportProgress(), and ReportReversedPoints().
|
static |
Definition at line 91 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 91 of file G4VIntersectionLocator.cc
References G4endl, G4FieldTrack::GetCurveLength(), G4FieldTrack::GetMomentum(), G4FieldTrack::GetMomentumDir(), G4FieldTrack::GetPosition(), CLHEP::Hep3Vector::mag(), printStatus(), CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().
|
protected |
Definition at line 189 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 189 of file G4VIntersectionLocator.cc
References kdfinder::abs(), fVerboseLevel, G4cout, G4endl, G4Exception(), G4ThreadLocal, GetChordFinderFor(), G4FieldTrack::GetCurveLength(), GetEpsilonStepFor(), G4ChordFinder::GetIntegrationDriver(), G4FieldTrack::GetPosition(), JustWarning, kCarTolerance, CLHEP::Hep3Vector::mag(), and message().
Referenced by CheckAndReEstimateEndpoint(), G4SimpleLocator::EstimateIntersectionPoint(), and G4BrentLocator::EstimateIntersectionPoint().
|
protected |
Definition at line 839 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 839 of file G4VIntersectionLocator.cc
References DBL_MAX, G4cout, G4endl, G4ThreadLocal, and G4AutoDelete::Register().
Referenced by G4MultiLevelLocator::EstimateIntersectionPoint().
|
protected |
Definition at line 807 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 807 of file G4VIntersectionLocator.cc
References G4endl, and printStatus().
Referenced by G4MultiLevelLocator::EstimateIntersectionPoint().
|
protected |
Definition at line 760 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 760 of file G4VIntersectionLocator.cc
References G4endl, G4FieldTrack::GetCurveLength(), and printStatus().
Referenced by G4MultiLevelLocator::EstimateIntersectionPoint().
|
protected |
Definition at line 616 of file G4VIntersectionLocator.cc.
View newest version in sPHENIX GitHub at line 616 of file G4VIntersectionLocator.cc
References CLHEP::Hep3Vector::dot(), G4cout, G4endl, G4Exception(), JustWarning, CLHEP::Hep3Vector::mag(), CLHEP::Hep3Vector::mag2(), message(), and perThousand.
Referenced by G4SimpleLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), and G4MultiLevelLocator::EstimateIntersectionPoint().
Definition at line 201 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 201 of file G4VIntersectionLocator.hh
References fCheckMode.
Referenced by LocateGlobalPointWithinVolumeCheckAndReport().
|
inline |
Referenced by G4PropagatorInField::RefreshIntersectionLocator().
Referenced by G4PropagatorInField::RefreshIntersectionLocator().
Referenced by G4PropagatorInField::RefreshIntersectionLocator().
|
inline |
Referenced by G4ErrorPropagatorManager::StartNavigator().
Referenced by G4PropagatorInField::RefreshIntersectionLocator().
Definition at line 256 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 256 of file G4VIntersectionLocator.hh
Referenced by GetCheckMode(), LocateGlobalPointWithinVolumeAndCheck(), and SetCheckMode().
|
protected |
Definition at line 267 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 267 of file G4VIntersectionLocator.hh
Referenced by G4VIntersectionLocator(), GetGlobalSurfaceNormal(), GetLocalSurfaceNormal(), and ~G4VIntersectionLocator().
|
protected |
Definition at line 260 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 260 of file G4VIntersectionLocator.hh
|
protected |
Definition at line 262 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 262 of file G4VIntersectionLocator.hh
Referenced by G4SimpleLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), and G4MultiLevelLocator::EstimateIntersectionPoint().
|
protected |
Definition at line 261 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 261 of file G4VIntersectionLocator.hh
Referenced by CheckAndReEstimateEndpoint(), and G4MultiLevelLocator::EstimateIntersectionPoint().
|
protected |
Definition at line 258 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 258 of file G4VIntersectionLocator.hh
Referenced by G4VIntersectionLocator(), and GetLastSurfaceNormal().
Definition at line 263 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 263 of file G4VIntersectionLocator.hh
|
protected |
Definition at line 270 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 270 of file G4VIntersectionLocator.hh
Referenced by GetLocalSurfaceNormal(), and ~G4VIntersectionLocator().
Definition at line 255 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 255 of file G4VIntersectionLocator.hh
Referenced by AreIntersectionsAdjusted().
|
protected |
Definition at line 254 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 254 of file G4VIntersectionLocator.hh
Referenced by AdjustmentOfFoundIntersection(), G4SimpleLocator::EstimateIntersectionPoint(), G4MultiLevelLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), printStatus(), and ReEstimateEndpoint().
|
protected |
Definition at line 252 of file G4VIntersectionLocator.hh.
View newest version in sPHENIX GitHub at line 252 of file G4VIntersectionLocator.hh
Referenced by AdjustmentOfFoundIntersection(), G4SimpleLocator::EstimateIntersectionPoint(), G4MultiLevelLocator::EstimateIntersectionPoint(), G4BrentLocator::EstimateIntersectionPoint(), G4VIntersectionLocator(), GetLocalSurfaceNormal(), and ReEstimateEndpoint().