G4KM_OpticalEqRhs Class Reference

#include <G4KM_OpticalEqRhs.hh>

Inheritance diagram for G4KM_OpticalEqRhs:

G4Mag_EqRhs G4EquationOfMotion

Public Member Functions

 G4KM_OpticalEqRhs (G4KM_DummyField *field, G4V3DNucleus *nucleus)
 ~G4KM_OpticalEqRhs ()
virtual void EvaluateRhsGivenB (const G4double y[], const G4double B[3], G4double dydx[]) const
virtual void SetChargeMomentumMass (G4double particleCharge, G4double MomentumXc, G4double MassXc2)
void SetFactor (G4double mass, G4double opticalParameter)

Detailed Description

Definition at line 49 of file G4KM_OpticalEqRhs.hh.


Constructor & Destructor Documentation

G4KM_OpticalEqRhs::G4KM_OpticalEqRhs ( G4KM_DummyField field,
G4V3DNucleus nucleus 
)

Definition at line 45 of file G4KM_OpticalEqRhs.cc.

00046                                                              :
00047   G4Mag_EqRhs(field), theNucleus(nucleus)
00048 {
00049   theFactor = 0;
00050   theMass = 0;
00051 }

G4KM_OpticalEqRhs::~G4KM_OpticalEqRhs (  )  [inline]

Definition at line 72 of file G4KM_OpticalEqRhs.hh.

00073 { }


Member Function Documentation

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

Implements G4Mag_EqRhs.

void G4KM_OpticalEqRhs::SetChargeMomentumMass ( G4double  particleCharge,
G4double  MomentumXc,
G4double  MassXc2 
) [inline, virtual]

Reimplemented from G4Mag_EqRhs.

Definition at line 77 of file G4KM_OpticalEqRhs.hh.

00078 { }

void G4KM_OpticalEqRhs::SetFactor ( G4double  mass,
G4double  opticalParameter 
)

Definition at line 54 of file G4KM_OpticalEqRhs.cc.

References G4InuclSpecialFunctions::bindingEnergy(), G4lrint(), G4NucleiProperties::GetBindingEnergy(), G4V3DNucleus::GetCharge(), G4V3DNucleus::GetMassNumber(), and G4INCL::Math::pi.

Referenced by G4RKPropagation::Init().

00055 {
00056   G4double A = theNucleus->GetMassNumber();
00057   G4double Z = theNucleus->GetCharge();
00058   G4double bindingEnergy = G4NucleiProperties::GetBindingEnergy(G4lrint(A), G4lrint(Z));
00059   G4double nucleusMass = Z*proton_mass_c2+(A-Z)*neutron_mass_c2+bindingEnergy;
00060   G4double reducedMass = mass*nucleusMass/(mass+nucleusMass);
00061 
00062   G4double nucleonMass = (proton_mass_c2+neutron_mass_c2)/2;
00063 
00064 // _factor in (MeV*fermi)*fermi/MeV = fermi*fermi  -- need to have A as density normalized to 1
00065   theFactor = 2*pi*hbarc*hbarc*(1+mass/nucleonMass)* opticalParameter/reducedMass * A;
00066 
00067   theMass = mass;
00068 }


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