109 return p->
GetPDGMass()*(std::sqrt(1. + 0.5*cut/CLHEP::electron_mass_c2) - 1.0);
128 theBaseParticle =
nullptr;
129 }
else if(
nullptr != bpart) {
130 theBaseParticle = bpart;
131 }
else if(part == ion || pdg == 1000020040) {
132 theBaseParticle =
nullptr;
134 theBaseParticle = ion;
139 eth = 2*CLHEP::MeV*part->
GetPDGMass()/CLHEP::proton_mass_c2;
167 emax = std::max(emax, eth*10);
173 if(part == ion && (
EmModel(1)->GetName() ==
"BetheBloch" ||
174 EmModel(1)->GetName() ==
"BetheBlochGasIon")) {
175 stopDataActive =
true;
180 isInitialised =
true;
191 out <<
" Stopping Power data for "
193 <<
" ion/material pairs" <<
G4endl;
210 out <<
" Ion ionisation";
static G4Electron * Electron()
void SetIonisationModels(G4VEmModel *mod1=nullptr, G4VEmModel *mod2=nullptr)
void AddStoppingData(G4int Z, G4int A, const G4String &materialName, G4PhysicsVector *dVector)
void InitialiseForNewRun()
G4int GetNumberOfStoppingVectors() const
static G4EmParameters * Instance()
G4double MinKinEnergy() const
G4double MaxKinEnergy() const
static G4VEmFluctuationModel * ModelOfFluctuations(G4bool isIon=false)
static G4GenericIon * GenericIon()
static G4LossTableManager * Instance()
G4EmCorrections * EmCorrections()
G4double GetPDGMass() const
G4int GetPDGEncoding() const
void SetHighEnergyLimit(G4double)
G4double HighEnergyLimit() const
void SetLowEnergyLimit(G4double)
void AddEmModel(G4int, G4VEmModel *, G4VEmFluctuationModel *fluc=nullptr, const G4Region *region=nullptr)
void SetFluctModel(G4VEmFluctuationModel *)
void ProcessDescription(std::ostream &outFile) const override
G4VEmModel * EmModel(std::size_t index=0) const
void SetEmModel(G4VEmModel *, G4int index=0)
void SetBaseParticle(const G4ParticleDefinition *p)
G4VEmFluctuationModel * FluctModel() const
void SetLinearLossLimit(G4double val)
void SetSecondaryParticle(const G4ParticleDefinition *p)
void SetProcessSubType(G4int)
~G4ionIonisation() override
void InitialiseEnergyLossProcess(const G4ParticleDefinition *, const G4ParticleDefinition *) override
G4double MinPrimaryEnergy(const G4ParticleDefinition *p, const G4Material *, G4double cut) final
void StreamProcessInfo(std::ostream &outFile) const override
G4ionIonisation(const G4String &name="ionIoni")
G4bool IsApplicable(const G4ParticleDefinition &p) final
void AddStoppingData(G4int Z, G4int A, const G4String &materialName, G4PhysicsVector *dVector)
void ProcessDescription(std::ostream &) const override