58 for(i=0;i<nvar;i++) yInitial[i]=yInput[i];
59 yInitial[7]= yInput[7];
60 yMiddle[7] = yInput[7];
61 yOneStep[7] = yInput[7];
63 for(i=nvar;i<maxvar;i++) yOutput[i]=yInput[i];
76 fMidPoint =
G4ThreeVector( yMiddle[0], yMiddle[1], yMiddle[2]);
81 yError [i] = yOutput[i] - yOneStep[i] ;
82 yOutput[i] += yError[i]*correction ;
87 fInitialPoint =
G4ThreeVector( yInitial[0], yInitial[1], yInitial[2]);
88 fFinalPoint =
G4ThreeVector( yOutput[0], yOutput[1], yOutput[2]);
108 if (fInitialPoint != fFinalPoint) {
113 distChord = distLine;
115 distChord = (fMidPoint-fInitialPoint).mag();
CLHEP::Hep3Vector G4ThreeVector
static G4double Distline(const G4ThreeVector &OtherPnt, const G4ThreeVector &LinePntA, const G4ThreeVector &LinePntB)
virtual void DumbStepper(const G4double y[], const G4double dydx[], G4double h, G4double yout[])=0
G4int GetNumberOfVariables() const
virtual G4int IntegratorOrder() const =0
virtual ~G4MagErrorStepper()
G4double DistChord() const
G4int GetNumberOfStateVariables() const
void RightHandSide(const double y[], double dydx[])
void Stepper(const G4double y[], const G4double dydx[], G4double h, G4double yout[], G4double yerr[])