54 #ifndef G4UrbanMscModel_h
55 #define G4UrbanMscModel_h 1
59 #include <CLHEP/Units/SystemOfUnits.h>
234 G4double facz = 0.990395+w*(-0.168386+w*0.093286) ;
240 coeffc1 = 2.3785 - Z13*(4.1981e-1 - Z13*6.3100e-2);
241 coeffc2 = 4.7526e-1 + Z13*(1.7694 - Z13*3.3885e-1);
242 coeffc3 = 2.3683e-1 - Z13*(1.8111 - Z13*3.2774e-1);
243 coeffc4 = 1.7888e-2 + Z13*(1.9659e-2 - Z13*2.6664e-3);
258 G4double a = (2.*xmeanth+9.*x2meanth-3.)/(2.*xmeanth-3.*x2meanth+1.);
G4ParticleChangeForMSC * fParticleChange
ThreeVector shoot(const G4int Ap, const G4int Af)
CLHEP::HepRandomEngine * rndmEngineMod
G4UrbanMscModel(const G4String &nam="UrbanMsc")
CLHEP::Hep3Vector G4ThreeVector
virtual ~G4UrbanMscModel()
G4ThreeVector & SampleScattering(const G4ThreeVector &, G4double safety)
G4bool latDisplasmentbackup
void SetNewDisplacementFlag(G4bool)
const G4double w[NPOINTSGL]
G4UrbanMscModel & operator=(const G4UrbanMscModel &right)
const G4ParticleDefinition * particle
G4double currentRadLength
G4int currentMaterialIndex
G4double SampleCosineTheta(G4double trueStepLength, G4double KineticEnergy)
const G4ParticleDefinition * positron
void SampleDisplacementNew(G4double sinTheta, G4double phi)
G4double Randomizetlimit()
G4double ComputeGeomPathLength(G4double truePathLength)
const G4MaterialCutsCouple * couple
G4double ComputeTrueStepLength(G4double geomStepLength)
static const G4double emax
G4double G4Log(G4double x)
G4double G4Exp(G4double initial_x)
Exponential Function double precision.
void SetParticle(const G4ParticleDefinition *)
void Initialise(const G4ParticleDefinition *, const G4DataVector &)
G4LossTableManager * theManager
G4double GetPDGMass() const
void SampleDisplacement(G4double sinTheta, G4double phi)
static const G4double c_highland
G4double currentKinEnergy
G4double ComputeTheta0(G4double truePathLength, G4double KineticEnergy)
static const double eplus
G4double GetPDGCharge() const
G4double SimpleScattering(G4double xmeanth, G4double x2meanth)
void StartTracking(G4Track *)
G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *particle, G4double KineticEnergy, G4double AtomicNumber, G4double AtomicWeight=0., G4double cut=0., G4double emax=DBL_MAX)
G4double ComputeTruePathLengthLimit(const G4Track &track, G4double ¤tMinimalStep)