42 #ifndef G4CHORDFINDER_HH
43 #define G4CHORDFINDER_HH
141 G4double& stepEstimate_Unconstrained ) ;
177 G4double fFirstFraction, fFractionLast, fFractionNextEstimate;
190 G4double fLastStepEstimate_Unconstrained;
195 G4int fTotalNoTrials_FNC, fNoCalls_FNC, fmaxTrials_FNC;
200 #include "G4ChordFinder.icc"
202 #endif // G4CHORDFINDER_HH
G4double InvParabolic(const G4double xa, const G4double ya, const G4double xb, const G4double yb, const G4double xc, const G4double yc)
G4double GetFirstFraction()
G4ChordFinder(G4MagInt_Driver *pIntegrationDriver)
G4double GetFractionNextEstimate()
void PrintDchordTrial(G4int noTrials, G4double stepTrial, G4double oldStepTrial, G4double dChordStep)
G4FieldTrack ApproxCurvePointV(const G4FieldTrack &curveAPointVelocity, const G4FieldTrack &curveBPointVelocity, const G4ThreeVector ¤tEPoint, G4double epsStep)
void SetLastStepEstimateUnc(G4double stepEst)
void SetIntegrationDriver(G4MagInt_Driver *IntegrationDriver)
virtual void PrintStatistics()
G4int SetVerbose(G4int newvalue=1)
virtual G4double FindNextChord(const G4FieldTrack &yStart, G4double stepMax, G4FieldTrack &yEnd, G4double &dyErr, G4double epsStep, G4double *pNextStepForAccuracy, const G4ThreeVector latestSafetyOrigin, G4double latestSafetyRadius)
void TestChordPrint(G4int noTrials, G4int lastStepTrial, G4double dChordStep, G4double nextStepTrial)
G4bool AcceptableMissDist(G4double dChordStep) const
void AccumulateStatistics(G4int noTrials)
G4double AdvanceChordLimited(G4FieldTrack &yCurrent, G4double stepInitial, G4double epsStep_Relative, const G4ThreeVector latestSafetyOrigin, G4double lasestSafetyRadius)
G4double GetMultipleRadius()
void SetFractions_Last_Next(G4double fractLast=0.90, G4double fractNext=0.95)
G4double NewStep(G4double stepTrialOld, G4double dChordStep, G4double &stepEstimate_Unconstrained)
G4double GetLastStepEstimateUnc()
G4double GetDeltaChord() const
G4MagInt_Driver * GetIntegrationDriver()
G4double GetFractionLast()
void SetDeltaChord(G4double newval)
G4FieldTrack ApproxCurvePointS(const G4FieldTrack &curveAPointVelocity, const G4FieldTrack &curveBPointVelocity, const G4FieldTrack &ApproxCurveV, const G4ThreeVector ¤tEPoint, const G4ThreeVector ¤tFPoint, const G4ThreeVector &PointG, G4bool first, G4double epsStep)
void SetFirstFraction(G4double fractFirst)