63{
64
65
66
67
68 G4double pSquared = y[3]*y[3] + y[4]*y[4] + y[5]*y[5] ;
69
70 G4double Energy = std::sqrt( pSquared + fMassCof );
72
73 G4double pModuleInverse = 1.0/std::sqrt(pSquared) ;
74
75 G4double inverse_velocity = Energy * pModuleInverse / c_light;
76
77 G4double cof1 = fElectroMagCof*pModuleInverse ;
78
79 dydx[0] = y[3]*pModuleInverse ;
80 dydx[1] = y[4]*pModuleInverse ;
81 dydx[2] = y[5]*pModuleInverse ;
82
83 dydx[3] = cof1*(cof2*Field[3] + (y[4]*Field[2] - y[5]*Field[1])) ;
84
85 dydx[4] = cof1*(cof2*Field[4] + (y[5]*Field[0] - y[3]*Field[2])) ;
86
87 dydx[5] = cof1*(cof2*Field[5] + (y[3]*Field[1] - y[4]*Field[0])) ;
88
89 dydx[6] = 0.;
90
91
92
93 dydx[7] = inverse_velocity;
94
95 return;
96}