59 #ifndef G4GoudsmitSaundersonMscModel_h
60 #define G4GoudsmitSaundersonMscModel_h 1
62 #include <CLHEP/Units/SystemOfUnits.h>
G4GoudsmitSaundersonMscModel(const G4String &nam="GoudsmitSaunderson")
void CalculateIntegrals(const G4ParticleDefinition *, G4double, G4double, G4double &, G4double &)
virtual G4double ComputeTrueStepLength(G4double geomStepLength)
G4GoudsmitSaundersonTable * GSTable
static G4double TCSP[103][106]
CLHEP::Hep3Vector G4ThreeVector
G4int currentMaterialIndex
const G4ParticleDefinition * particle
G4GoudsmitSaundersonMscModel & operator=(const G4GoudsmitSaundersonMscModel &right)
G4LossTableManager * theManager
G4double currentKinEnergy
void StartTracking(G4Track *)
static G4double FTCSE[103][106]
virtual G4double ComputeTruePathLengthLimit(const G4Track &track, G4double ¤tMinimalStep)
G4ParticleChangeForMSC * fParticleChange
static G4double TCSE[103][106]
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &)
static G4double FTCSP[103][106]
G4double GetPDGMass() const
void SetParticle(const G4ParticleDefinition *p)
virtual ~G4GoudsmitSaundersonMscModel()
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *particle, G4double KineticEnergy, G4double AtomicNumber, G4double, G4double, G4double)
void SampleCosineTheta(G4double, G4double, G4double &, G4double &)
G4double GetLambda(G4double)
virtual G4ThreeVector & SampleScattering(const G4ThreeVector &, G4double safety)
static const double eplus
G4double GetPDGCharge() const
const G4MaterialCutsCouple * currentCouple
static G4double ener[106]
virtual G4double ComputeGeomPathLength(G4double truePathLength)
void LoadELSEPAXSections()