140 G4double x = 0.5*cut/electron_mass_c2;
141 G4double gam = x*ratio + std::sqrt((1. + x)*(1. + x*ratio*ratio));
142 return mass*(gam - 1.0);
158 if(part == bpart || pname ==
"proton" ||
159 pname ==
"anti_proton" ||
160 pname ==
"pi+" || pname ==
"pi-" ||
161 pname ==
"kaon+" || pname ==
"kaon-")
166 else if(bpart == 0) {
178 theBaseParticle = bpart;
183 ratio = electron_mass_c2/mass;
184 eth = 2.0*MeV*mass/proton_mass_c2;
204 isInitialised =
true;
static G4AntiProton * AntiProton()
static G4Electron * Electron()
static G4KaonMinus * KaonMinus()
static G4KaonPlus * KaonPlus()
G4bool IsShortLived() const
G4double GetPDGMass() const
G4double GetPDGCharge() const
const G4String & GetParticleName() const
G4double GetPDGSpin() const
static G4Proton * Proton()
void SetHighEnergyLimit(G4double)
void SetLowEnergyLimit(G4double)
void SetFluctModel(G4VEmFluctuationModel *)
void SetEmModel(G4VEmModel *, G4int index=1)
G4VEmModel * EmModel(G4int index=1)
G4double MaxKinEnergy() const
void AddEmModel(G4int, G4VEmModel *, G4VEmFluctuationModel *fluc=0, const G4Region *region=0)
void SetStepFunction(G4double v1, G4double v2)
G4double MinKinEnergy() const
void SetBaseParticle(const G4ParticleDefinition *p)
void SetSecondaryParticle(const G4ParticleDefinition *p)
G4VEmFluctuationModel * FluctModel()
void SetProcessSubType(G4int)
virtual void InitialiseEnergyLossProcess(const G4ParticleDefinition *, const G4ParticleDefinition *)
virtual G4bool IsApplicable(const G4ParticleDefinition &p)
virtual G4double MinPrimaryEnergy(const G4ParticleDefinition *p, const G4Material *, G4double cut)
G4hIonisation(const G4String &name="hIoni")