83 G4double x = 0.5*cut/electron_mass_c2;
84 G4double gam = x*ratio + std::sqrt((1. + x)*(1. + x*ratio*ratio));
85 return mass*(gam - 1.0);
105 theBaseParticle =
nullptr;
106 }
else if(
nullptr != bpart) {
107 theBaseParticle = bpart;
109 }
else if(pname ==
"proton" || pname ==
"anti_proton" ||
110 pname ==
"pi+" || pname ==
"pi-" ||
111 pname ==
"kaon+" || pname ==
"kaon-" ||
112 pname ==
"GenericIon" || pname ==
"alpha") {
114 theBaseParticle =
nullptr;
130 ratio = electron_mass_c2/mass;
131 eth = 2.0*MeV*mass/proton_mass_c2;
139 G4bool ion = (pname ==
"GenericIon" || pname ==
"alpha");
163 emax = std::max(emax, eth*10);
167 isInitialised =
true;
175 out <<
" Hadron 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
void ProcessDescription(std::ostream &) const override
G4double MinPrimaryEnergy(const G4ParticleDefinition *p, const G4Material *, G4double cut) final
G4hIonisation(const G4String &name="hIoni")
void InitialiseEnergyLossProcess(const G4ParticleDefinition *, const G4ParticleDefinition *) override