60 #ifndef G4ICRU73QOModel_h
61 #define G4ICRU73QOModel_h 1
G4double GetOscillatorEnergy(G4int Z, G4int nbOfTheShell) const
G4double DEDXPerElement(G4int Z, G4double kineticEnergy)
G4ICRU73QOModel(const G4ParticleDefinition *p=0, const G4String &nam="ICRU73QO")
G4int GetNumberOfShells(G4int Z) const
G4double GetL2(G4double normEnergy) const
virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition *, G4double kinEnergy) final
static const G4double ShellEnergy[NQODATA]
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kineticEnergy, G4double Z, G4double A, G4double cutEnergy, G4double maxEnergy) override
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &) override
static const G4double L1[22][2]
virtual G4double CrossSectionPerVolume(const G4Material *, const G4ParticleDefinition *, G4double kineticEnergy, G4double cutEnergy, G4double maxEnergy) override
void SetLowestKinEnergy(G4double val)
G4double GetPDGCharge() const
~G4ICRU73QOModel()=default
static const G4int ZElementAvailable[NQOELEM]
static const G4int NQOELEM
G4double GetPDGMass() const
static const G4int startElemIndex[NQOELEM]
G4double GetShellStrength(G4int Z, G4int nbOfTheShell) const
G4double GetShellEnergy(G4int Z, G4int nbOfTheShell) const
static constexpr double proton_mass_c2
static const G4double SubShellOccupation[NQODATA]
G4ICRU73QOModel & operator=(const G4ICRU73QOModel &right)=delete
static const G4double L2[14][2]
static constexpr double electron_mass_c2
virtual G4double ComputeCrossSectionPerElectron(const G4ParticleDefinition *, G4double kineticEnergy, G4double cutEnergy, G4double maxEnergy) final
double A(double temperature)
G4double DEDX(const G4Material *material, G4double kineticEnergy)
virtual void CorrectionsAlongStep(const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double &eloss, G4double &niel, G4double length) override
G4DensityEffectData * denEffData
static const G4double factorBethe[99]
const G4ParticleDefinition * particle
static const G4double L0[67][2]
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy) override
void SetParticle(const G4ParticleDefinition *p)
static const G4int nbofShellsForElement[NQOELEM]
static const G4int NQODATA
G4double GetL1(G4double normEnergy) const
G4double GetL0(G4double normEnergy) const
G4ParticleChangeForLoss * fParticleChange
G4ParticleDefinition * theElectron
static constexpr double eplus
virtual G4double ComputeDEDXPerVolume(const G4Material *, const G4ParticleDefinition *, G4double kineticEnergy, G4double) override