42#ifndef G4RiGeMuPairProductionModel_h
43#define G4RiGeMuPairProductionModel_h 1
void SetParticle(const G4ParticleDefinition *)
G4RiGeMuPairProductionModel(const G4RiGeMuPairProductionModel &)=delete
static const G4int ZDATPAIR[NZDATPAIR]
virtual void DataCorrupted(G4int Z, G4double logTkin) const
const G4ParticleDefinition * particle
static const G4double wgi[NINTPAIR]
G4ParticleChangeForLoss * fParticleChange
G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kineticEnergy, G4double Z, G4double A, G4double cutEnergy, G4double maxEnergy) override
void Initialise(const G4ParticleDefinition *, const G4DataVector &) override
static const G4double xgi[NINTPAIR]
G4double MaxSecondaryEnergyForElement(G4double kineticEnergy, G4double Z)
void MakeSamplingTables()
G4double MinPrimaryEnergy(const G4Material *, const G4ParticleDefinition *, G4double) override
static const G4int NZDATPAIR
void InitialiseLocal(const G4ParticleDefinition *, G4VEmModel *masterModel) override
G4double ComputeDMicroscopicCrossSection(G4double tkin, G4double Z, G4double pairEnergy)
G4double ComputeMicroscopicCrossSection(G4double tkin, G4double Z, G4double cut)
void SetLowestKineticEnergy(G4double e)
static const G4int NINTPAIR
G4double FindScaledEnergy(G4int Z, G4double rand, G4double logTkin, G4double yymin, G4double yymax)
~G4RiGeMuPairProductionModel() override=default
G4RiGeMuPairProductionModel(const G4ParticleDefinition *p=nullptr)
void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy) override
G4double ComputMuPairLoss(G4double Z, G4double tkin, G4double cut, G4double tmax)
G4double ComputeDEDXPerVolume(const G4Material *, const G4ParticleDefinition *, G4double kineticEnergy, G4double cutEnergy) override
G4VEmModel(const G4String &nam)