61 #ifndef G4MuBremsstrahlungModel_h
62 #define G4MuBremsstrahlungModel_h 1
64 #include <CLHEP/Units/PhysicalConstants.h>
177 cc=CLHEP::classic_electr_radius/
rmass ;
178 coeff= 16.*CLHEP::fine_structure_const*
cc*
cc/3. ;
G4MuBremsstrahlungModel(const G4ParticleDefinition *p=0, const G4String &nam="MuBrem")
virtual void InitialiseLocal(const G4ParticleDefinition *, G4VEmModel *masterModel)
G4ParticleDefinition * theGamma
G4double ComputeMicroscopicCrossSection(G4double tkin, G4double Z, G4double cut)
void SetLowestKineticEnergy(G4double e)
void SetParticle(const G4ParticleDefinition *)
virtual void Initialise(const G4ParticleDefinition *, const G4DataVector &)
virtual G4double ComputeDMicroscopicCrossSection(G4double tkin, G4double Z, G4double gammaEnergy)
static const G4double xgi[6]
virtual G4double MinEnergyCut(const G4ParticleDefinition *, const G4MaterialCutsCouple *)
static const G4double wgi[6]
double A(double temperature)
const G4ParticleDefinition * particle
virtual ~G4MuBremsstrahlungModel()
virtual G4double MinPrimaryEnergy(const G4Material *, const G4ParticleDefinition *, G4double)
virtual G4double ComputeDEDXPerVolume(const G4Material *, const G4ParticleDefinition *, G4double kineticEnergy, G4double cutEnergy)
G4double ComputMuBremLoss(G4double Z, G4double tkin, G4double cut)
G4double GetPDGMass() const
G4ParticleChangeForLoss * fParticleChange
virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition *, G4double kineticEnergy, G4double Z, G4double A, G4double cutEnergy, G4double maxEnergy)
G4MuBremsstrahlungModel & operator=(const G4MuBremsstrahlungModel &right)
virtual void SampleSecondaries(std::vector< G4DynamicParticle * > *, const G4MaterialCutsCouple *, const G4DynamicParticle *, G4double tmin, G4double maxEnergy)