50 #ifndef G4BetheHeitlerModel_h
51 #define G4BetheHeitlerModel_h 1
66 const G4String& nam =
"BetheHeitler");
109 inline G4double G4BetheHeitlerModel::ScreenFunction1(
G4double ScreenVariable)
116 if (ScreenVariable > 1.)
117 screenVal = 42.24 - 8.368*
G4Log(ScreenVariable+0.952);
119 screenVal = 42.392 - ScreenVariable*(7.796 - 1.961*ScreenVariable);
126 inline G4double G4BetheHeitlerModel::ScreenFunction2(
G4double ScreenVariable)
133 if (ScreenVariable > 1.)
134 screenVal = 42.24 - 8.368*
G4Log(ScreenVariable+0.952);
136 screenVal = 41.405 - ScreenVariable*(5.828 - 0.8945*ScreenVariable);
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy) override
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kinEnergy, G4double Z, G4double A=0., G4double cut=0., G4double emax=DBL_MAX) override
virtual void InitialiseLocal(const G4ParticleDefinition *, G4VEmModel *masterModel) override
double A(double temperature)
G4BetheHeitlerModel(const G4ParticleDefinition *p=0, const G4String &nam="BetheHeitler")
static const G4double emax
G4double G4Log(G4double x)
virtual ~G4BetheHeitlerModel()
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &) override