Geant4
10.02
|
#include <G4MultiLevelLocator.hh>
Private Member Functions | |
void | ReportFieldValue (const G4FieldTrack &locationPV, const char *nameLoc, const G4EquationOfMotion *equation) |
Private Attributes | |
unsigned int | fMaxSteps |
unsigned int | fWarnSteps |
G4FieldTrack * | ptrInterMedFT [max_depth+1] |
unsigned long int | fNumCalls |
unsigned long int | fNumAdvanceFull |
unsigned long int | fNumAdvanceGood |
unsigned long int | fNumAdvanceTrials |
Static Private Attributes | |
static const G4int | max_depth =10 |
Additional Inherited Members | |
Static Public Member Functions inherited from G4VIntersectionLocator | |
static void | printStatus (const G4FieldTrack &startFT, const G4FieldTrack ¤tFT, G4double requestStep, G4double safety, G4int stepNum, std::ostream &oss, G4int verboseLevel) |
Protected Member Functions inherited from G4VIntersectionLocator | |
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, double tolerance, unsigned long int numCalls) |
Protected Attributes inherited from G4VIntersectionLocator | |
G4double | kCarTolerance |
G4int | fVerboseLevel |
G4bool | fUseNormalCorrection |
G4bool | fCheckMode |
G4Navigator * | fiNavigator |
G4ChordFinder * | fiChordFinder |
G4double | fiEpsilonStep |
G4double | fiDeltaIntersection |
G4bool | fiUseSafety |
G4Navigator * | fHelpingNavigator |
G4TouchableHistory * | fpTouchable |
Definition at line 51 of file G4MultiLevelLocator.hh.
G4MultiLevelLocator::G4MultiLevelLocator | ( | G4Navigator * | theNavigator | ) |
Definition at line 40 of file G4MultiLevelLocator.cc.
References max_depth, ptrInterMedFT, SetMaxSteps(), and SetWarnSteps().
G4MultiLevelLocator::~G4MultiLevelLocator | ( | ) |
Definition at line 65 of file G4MultiLevelLocator.cc.
References max_depth, ptrInterMedFT, and ReportStatistics().
|
virtual |
Implements G4VIntersectionLocator.
Definition at line 119 of file G4MultiLevelLocator.cc.
References G4MagInt_Driver::AccurateAdvance(), G4VIntersectionLocator::AdjustmentOfFoundIntersection(), G4ChordFinder::ApproxCurvePointV(), G4VIntersectionLocator::CheckAndReEstimateEndpoint(), FatalException, G4VIntersectionLocator::fiDeltaIntersection, G4VIntersectionLocator::fiEpsilonStep, fMaxSteps, fNumAdvanceFull, fNumAdvanceGood, fNumAdvanceTrials, fNumCalls, G4VIntersectionLocator::fVerboseLevel, fWarnSteps, G4cout, G4endl, G4Exception(), G4ThreadLocal, G4VIntersectionLocator::GetAdjustementOfFoundIntersection(), G4VIntersectionLocator::GetChordFinderFor(), G4FieldTrack::GetCurveLength(), G4VIntersectionLocator::GetEpsilonStepFor(), G4MagIntegratorStepper::GetEquationOfMotion(), G4ChordFinder::GetIntegrationDriver(), G4FieldTrack::GetMomentumDir(), G4FieldTrack::GetMomentumDirection(), G4VIntersectionLocator::GetNavigatorFor(), G4FieldTrack::GetPosition(), G4FieldTrack::GetRestMass(), G4MagInt_Driver::GetStepper(), G4VIntersectionLocator::GetSurfaceNormal(), G4VIntersectionLocator::IntersectChord(), JustWarning, G4VIntersectionLocator::kCarTolerance, G4Navigator::LocateGlobalPointWithinVolume(), G4INCL::Math::max(), max_depth, mm, perThousand, G4VIntersectionLocator::printStatus(), ptrInterMedFT, ReportFieldValue(), G4VIntersectionLocator::ReportImmediateHit(), G4VIntersectionLocator::ReportProgress(), G4VIntersectionLocator::ReportReversedPoints(), G4VIntersectionLocator::ReportTrialStep(), G4FieldTrack::SetPosition(), sqr(), and tolerance.
|
private |
Definition at line 848 of file G4MultiLevelLocator.cc.
References G4cout, G4endl, G4EquationOfMotion::GetFieldValue(), G4FieldTrack::GetLabTimeOfFlight(), G4FieldTrack::GetPosition(), and position.
Referenced by EstimateIntersectionPoint().
void G4MultiLevelLocator::ReportStatistics | ( | ) |
Definition at line 837 of file G4MultiLevelLocator.cc.
References fNumAdvanceFull, fNumAdvanceGood, fNumAdvanceTrials, fNumCalls, G4cout, and G4endl.
Referenced by ~G4MultiLevelLocator().
|
inline |
Definition at line 75 of file G4MultiLevelLocator.hh.
References fMaxSteps.
Referenced by G4MultiLevelLocator().
|
inline |
Definition at line 76 of file G4MultiLevelLocator.hh.
References fWarnSteps.
Referenced by G4MultiLevelLocator().
|
private |
Definition at line 87 of file G4MultiLevelLocator.hh.
Referenced by EstimateIntersectionPoint(), and SetMaxSteps().
|
private |
Definition at line 96 of file G4MultiLevelLocator.hh.
Referenced by EstimateIntersectionPoint(), and ReportStatistics().
|
private |
Definition at line 96 of file G4MultiLevelLocator.hh.
Referenced by EstimateIntersectionPoint(), and ReportStatistics().
|
private |
Definition at line 96 of file G4MultiLevelLocator.hh.
Referenced by EstimateIntersectionPoint(), and ReportStatistics().
|
private |
Definition at line 95 of file G4MultiLevelLocator.hh.
Referenced by EstimateIntersectionPoint(), and ReportStatistics().
|
private |
Definition at line 88 of file G4MultiLevelLocator.hh.
Referenced by EstimateIntersectionPoint(), and SetWarnSteps().
|
staticprivate |
Definition at line 86 of file G4MultiLevelLocator.hh.
Referenced by EstimateIntersectionPoint(), G4MultiLevelLocator(), and ~G4MultiLevelLocator().
|
private |
Definition at line 92 of file G4MultiLevelLocator.hh.
Referenced by EstimateIntersectionPoint(), G4MultiLevelLocator(), and ~G4MultiLevelLocator().