77 eqOfM->GetFieldValue(yIn, bO);
78 G4ThreeVector bOriginal = G4ThreeVector(bO[0],bO[1],bO[2]);
89 AdvanceHelix(yIn, bOriginal, h, yOut);
92 G4double ang = GetAngCurve();
93 G4double rad = GetRadHelix();
106 const G4double radiusOfCurvature = rad;
122 for (G4int i = 0; i < 3; i++)
135 AdvanceHelix(yIn, bOriginal, h*0.5, yTemp);
140 GetEquationOfMotion()->GetFieldValue(yTemp, bM);
141 G4ThreeVector bMid = G4ThreeVector(bM[0],bM[1],bM[2]);
144 AdvanceHelix(yTemp, bMid, h*0.5, yTemp2);
147 for (G4int i = 0; i < 6; i++)
148 {yErr[i] = std::abs(yOut[i] - yTemp2[i]);}
156 const G4ThreeVector& field,
161 G4ThreeVector fieldUnit = field.unit();
171 G4double momMag = G4ThreeVector(yIn[3], yIn[4], yIn[5]).mag();
174 G4ThreeVector momNew = fieldUnit*momMag;
177 G4double yModified[7];
178 for (G4int i = 0; i < 3; i++)
180 yModified[i] = yIn[i];
181 yModified[i + 3] = momNew[i];
188 for (G4int i = 0; i < 3; i++)