90 G4double x = 0.5*cut/electron_mass_c2;
91 G4double gam = x*ratio + std::sqrt((1. + x)*(1. + x*ratio*ratio));
92 return mass*(gam - 1.0);
112 theBaseParticle =
nullptr;
113 }
else if(
nullptr != bpart) {
114 theBaseParticle = bpart;
116 }
else if(pname ==
"proton" || pname ==
"anti_proton" ||
117 pname ==
"pi+" || pname ==
"pi-" ||
118 pname ==
"kaon+" || pname ==
"kaon-" ||
119 pname ==
"GenericIon" || pname ==
"alpha") {
121 theBaseParticle =
nullptr;
137 ratio = electron_mass_c2/mass;
138 eth = 2.0*MeV*mass/proton_mass_c2;
146 G4bool ion = (pname ==
"GenericIon" || pname ==
"alpha");
170 emax = std::max(emax, eth*10);
174 isInitialised =
true;
182 out <<
" Ionisation";
static G4AntiProton * AntiProton()
static G4Electron * Electron()
static G4EmParameters * Instance()
G4double MinKinEnergy() const
G4double MaxKinEnergy() const
static G4VEmFluctuationModel * ModelOfFluctuations(G4bool isIon=false)
static G4KaonMinus * KaonMinus()
static G4KaonPlus * KaonPlus()
G4double GetPDGMass() const
G4double GetPDGCharge() const
const G4String & GetParticleName() const
G4double GetPDGSpin() const
static G4Proton * Proton()
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 SetSecondaryParticle(const G4ParticleDefinition *p)
void SetProcessSubType(G4int)
G4bool IsApplicable(const G4ParticleDefinition &p) override
virtual void ProcessDescription(std::ostream &) const override
G4double MinPrimaryEnergy(const G4ParticleDefinition *p, const G4Material *, G4double cut) final
~G4hIonisation() override
G4hIonisation(const G4String &name="hIoni")
void InitialiseEnergyLossProcess(const G4ParticleDefinition *, const G4ParticleDefinition *) override