67 dedx = 2.0*CLHEP::MeV*CLHEP::cm2/CLHEP::g;
80 if(
nullptr == safetyHelper) {
124 out << std::setw(18) <<
"StepLim=" << alg <<
" Rfact=" <<
facrange
143 if (
nullptr != ionisation) {
144 x = ionisation->GetDEDX(kinEnergy, couple);
158 if (
nullptr != ionisation) {
159 x = ionisation->GetDEDX(kinEnergy, couple, logKinEnergy);
173 localtkin = kinEnergy;
174 if (
nullptr != ionisation) {
175 localrange = ionisation->GetRange(kinEnergy, couple);
178 localrange = kinEnergy/(dedx*q*q*couple->
GetMaterial()->GetDensity());
191 localtkin = kinEnergy;
192 if (
nullptr != ionisation) {
193 localrange = ionisation->GetRange(kinEnergy, couple, logKinEnergy);
196 localrange = kinEnergy/(dedx*q*q*couple->
GetMaterial()->GetDensity());
210 if(
nullptr != ionisation) { e = ionisation->GetKineticEnergy(range, couple); }
213 if(localrange > range) {
static G4EmParameters * Instance()
G4double MscMuHadRangeFactor() const
G4MscStepLimitType MscMuHadStepLimitType() const
G4double MscSafetyFactor() const
G4MscStepLimitType MscStepLimitType() const
G4double MscGeomFactor() const
G4bool LateralDisplacement() const
G4bool MuHadLateralDisplacement() const
G4double MscLambdaLimit() const
G4double MscRangeFactor() const
const G4Material * GetMaterial() const
G4double GetDensity() const
G4int GetPDGEncoding() const
G4double GetPDGCharge() const
static G4TransportationManager * GetTransportationManager()
G4SafetyHelper * GetSafetyHelper() const
G4VParticleChange * pParticleChange
G4VEmModel(const G4String &nam)
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
G4ThreeVector fDisplacement
void InitialiseParameters(const G4ParticleDefinition *)