G4Mag_UsualEqRhs Class Reference

#include <G4Mag_UsualEqRhs.hh>

Inheritance diagram for G4Mag_UsualEqRhs:

G4Mag_EqRhs G4EquationOfMotion G4ErrorMag_UsualEqRhs

Public Member Functions

 G4Mag_UsualEqRhs (G4MagneticField *MagField)
virtual ~G4Mag_UsualEqRhs ()
void EvaluateRhsGivenB (const G4double y[], const G4double B[3], G4double dydx[]) const
virtual void SetChargeMomentumMass (G4double particleCharge, G4double MomentumXc, G4double mass)

Detailed Description

Definition at line 50 of file G4Mag_UsualEqRhs.hh.


Constructor & Destructor Documentation

G4Mag_UsualEqRhs::G4Mag_UsualEqRhs ( G4MagneticField MagField  ) 

Definition at line 42 of file G4Mag_UsualEqRhs.cc.

00043   : G4Mag_EqRhs( MagField ) {}

G4Mag_UsualEqRhs::~G4Mag_UsualEqRhs (  )  [virtual]

Definition at line 45 of file G4Mag_UsualEqRhs.cc.

00045 {}


Member Function Documentation

void G4Mag_UsualEqRhs::EvaluateRhsGivenB ( const G4double  y[],
const G4double  B[3],
G4double  dydx[] 
) const [virtual]

Implements G4Mag_EqRhs.

Reimplemented in G4ErrorMag_UsualEqRhs.

Definition at line 48 of file G4Mag_UsualEqRhs.cc.

References G4Mag_EqRhs::FCof().

Referenced by G4ErrorMag_UsualEqRhs::EvaluateRhsGivenB().

00051 {
00052    G4double momentum_mag_square = y[3]*y[3] + y[4]*y[4] + y[5]*y[5];
00053    G4double inv_momentum_magnitude = 1.0 / std::sqrt( momentum_mag_square );
00054 
00055    G4double cof = FCof()*inv_momentum_magnitude;
00056 
00057    dydx[0] = y[3]*inv_momentum_magnitude;       //  (d/ds)x = Vx/V
00058    dydx[1] = y[4]*inv_momentum_magnitude;       //  (d/ds)y = Vy/V
00059    dydx[2] = y[5]*inv_momentum_magnitude;       //  (d/ds)z = Vz/V
00060 
00061    dydx[3] = cof*(y[4]*B[2] - y[5]*B[1]) ;   // Ax = a*(Vy*Bz - Vz*By)
00062    dydx[4] = cof*(y[5]*B[0] - y[3]*B[2]) ;   // Ay = a*(Vz*Bx - Vx*Bz)
00063    dydx[5] = cof*(y[3]*B[1] - y[4]*B[0]) ;   // Az = a*(Vx*By - Vy*Bx)
00064 
00065    return ;
00066 }

void G4Mag_UsualEqRhs::SetChargeMomentumMass ( G4double  particleCharge,
G4double  MomentumXc,
G4double  mass 
) [virtual]

Reimplemented from G4Mag_EqRhs.

Definition at line 70 of file G4Mag_UsualEqRhs.cc.

References G4Mag_EqRhs::SetChargeMomentumMass().

00074 {
00075    G4Mag_EqRhs::SetChargeMomentumMass( particleCharge, MomentumXc, mass);
00076 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:52:27 2013 for Geant4 by  doxygen 1.4.7