61 lambdalimit(1.*
CLHEP::mm),
62 geomMin(1.e-6*
CLHEP::mm),
63 geomMax(1.e50*
CLHEP::mm),
64 fDisplacement(0.,0.,0.),
67 dedx = 2.0*CLHEP::MeV*CLHEP::cm2/CLHEP::g;
80 if(
nullptr == safetyHelper) {
106 emin, emax, useSpline);
143 out << std::setw(18) <<
"StepLim=" << alg <<
" Rfact=" <<
facrange
162 if (
nullptr != ionisation) {
163 x = ionisation->
GetDEDX(kinEnergy, couple);
177 if (
nullptr != ionisation) {
178 x = ionisation->
GetDEDX(kinEnergy, couple, logKinEnergy);
192 localtkin = kinEnergy;
193 if (
nullptr != ionisation) {
194 localrange = ionisation->
GetRange(kinEnergy, couple);
197 localrange = kinEnergy/(dedx*q*q*couple->
GetMaterial()->GetDensity());
210 localtkin = kinEnergy;
211 if (
nullptr != ionisation) {
212 localrange = ionisation->
GetRange(kinEnergy, couple, logKinEnergy);
215 localrange = kinEnergy/(dedx*q*q*couple->
GetMaterial()->GetDensity());
229 if(
nullptr != ionisation) { e = ionisation->
GetKineticEnergy(range, couple); }
232 if(localrange > range) {
static G4EmParameters * Instance()
G4double MscMuHadRangeFactor() const
G4double MinKinEnergy() const
G4MscStepLimitType MscMuHadStepLimitType() const
G4double MscSafetyFactor() const
G4MscStepLimitType MscStepLimitType() const
G4double MscGeomFactor() const
G4double MaxKinEnergy() const
G4bool LateralDisplacement() const
G4bool MuHadLateralDisplacement() const
G4double MscLambdaLimit() const
G4double MscRangeFactor() const
G4PhysicsTable * BuildTableForModel(G4PhysicsTable *table, G4VEmModel *model, const G4ParticleDefinition *, G4double emin, G4double emax, G4bool spline)
static G4LossTableManager * Instance()
G4LossTableBuilder * GetTableBuilder()
const G4Material * GetMaterial() const
G4double GetDensity() const
G4double GetPDGMass() const
G4int GetPDGEncoding() const
G4double GetPDGCharge() const
const G4String & GetParticleName() const
static G4TransportationManager * GetTransportationManager()
G4SafetyHelper * GetSafetyHelper() const
G4PhysicsTable * xSectionTable
G4double LowEnergyLimit() const
G4double HighEnergyLimit() const
G4VParticleChange * pParticleChange
G4double HighEnergyActivationLimit() const
G4double LowEnergyActivationLimit() const
G4bool ForceBuildTableFlag() const
G4double GetKineticEnergy(G4double range, const G4MaterialCutsCouple *)
G4double GetDEDX(G4double kineticEnergy, const G4MaterialCutsCouple *)
G4double GetRange(G4double kineticEnergy, const G4MaterialCutsCouple *)
void DumpParameters(std::ostream &out) const
G4double GetDEDX(const G4ParticleDefinition *part, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
G4VMscModel(const G4String &nam)
G4ParticleChangeForMSC * GetParticleChangeForMSC(const G4ParticleDefinition *p=nullptr)
G4double GetEnergy(const G4ParticleDefinition *part, G4double range, const G4MaterialCutsCouple *couple)
G4double GetRange(const G4ParticleDefinition *part, G4double kineticEnergy, const G4MaterialCutsCouple *couple)
G4MscStepLimitType steppingAlgorithm
void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double tmax) override
void InitialiseParameters(const G4ParticleDefinition *)