48 G4int noIntegrationVariables,
52 const G4int numberOfVariables =
54 ( ( (noIntegrationVariables-1)/4 + 1 ) * 4 ) );
131 b31 = 3.0/40.0 , b32 = 9.0/40.0 ,
132 b41 = 0.3 , b42 = -0.9 , b43 = 1.2 ,
134 b51 = -11.0/54.0 , b52 = 2.5 , b53 = -70.0/27.0 ,
137 b61 = 1631.0/55296.0 , b62 = 175.0/512.0 ,
138 b63 = 575.0/13824.0 , b64 = 44275.0/110592.0 ,
141 c1 = 37.0/378.0 , c3 = 250.0/621.0 , c4 = 125.0/594.0 ,
142 c6 = 512.0/1771.0 , dc5 = -277.0/14336.0 ;
144 const G4double dc1 =
c1 - 2825.0/27648.0 , dc3 = c3 - 18575.0/48384.0 ,
145 dc4 = c4 - 13525.0/55296.0 , dc6 = c6 - 0.25 ;
150 yOut[7] =
yTemp[7] =
yIn[7] = yInput[7];
157 for(i=0; i<numberOfVariables; ++i)
163 for(i=0; i<numberOfVariables; ++i)
165 yTemp[i] =
yIn[i] + b21*Step*dydx[i] ;
169 for(i=0; i<numberOfVariables; ++i)
171 yTemp[i] =
yIn[i] + Step*(b31*dydx[i] + b32*
ak2[i]) ;
175 for(i=0; i<numberOfVariables; ++i)
177 yTemp[i] =
yIn[i] + Step*(b41*dydx[i] + b42*
ak2[i] + b43*
ak3[i]) ;
181 for(i=0; i<numberOfVariables; ++i)
183 yTemp[i] =
yIn[i] + Step*(b51*dydx[i]
184 + b52*
ak2[i] + b53*
ak3[i] + b54*
ak4[i]) ;
188 for(i=0; i<numberOfVariables; ++i)
190 yTemp[i] =
yIn[i] + Step*(b61*dydx[i]
195 for(i=0; i<numberOfVariables; ++i)
199 yOut[i] =
yIn[i] + Step*(
c1*dydx[i] + c3*
ak3[i] + c4*
ak4[i] + c6*
ak6[i]) ;
203 yErr[i] = Step*(dc1*dydx[i]
231 G4Exception(
"G4CashKarpRKF45::StepWithEst()",
"GeomField0001",
261 if (initialPoint != finalPoint)
264 distChord = distLine;
268 distChord = (midPoint-initialPoint).mag();