93 fMassCof = particleMass*particleMass ;
107 G4double pSquared = y[3]*y[3] + y[4]*y[4] + y[5]*y[5] ;
109 G4double Energy = std::sqrt( pSquared + fMassCof );
111 G4double pModuleInverse = 1.0/std::sqrt(pSquared);
115 G4double cofEl = fElCharge * pModuleInverse ;
116 G4double cofMag = fMagCharge * Energy * pModuleInverse;
119 dydx[0] = y[3]*pModuleInverse ;
120 dydx[1] = y[4]*pModuleInverse ;
121 dydx[2] = y[5]*pModuleInverse ;
133 dydx[3] = cofMag * Field[0] + cofEl * (y[4]*Field[2] - y[5]*Field[1]);
134 dydx[4] = cofMag * Field[1] + cofEl * (y[5]*Field[0] - y[3]*Field[2]);
135 dydx[5] = cofMag * Field[2] + cofEl * (y[3]*Field[1] - y[4]*Field[0]);
151 dydx[7] = inverse_velocity;
G4double GetCharge() const
Definition of the G4MonopoleEquation class.
static constexpr double eplus
virtual void EvaluateRhsGivenB(const G4double y[], const G4double Field[], G4double dydx[]) const
G4MonopoleEquation(G4ElectroMagneticField *emField)
virtual void SetChargeMomentumMass(G4ChargeState particleChargeState, G4double momentum, G4double mass)
G4double MagneticCharge() const