29 #ifndef G4SampleResonance_h
30 #define G4SampleResonance_h 1
59 {
return 2.0*gamma*std::atan( 2.0 * (x-m0)/ gamma ); }
62 {
return 0.5*gamma*gamma*std::log( (x-m0)*(x-m0)+gamma*gamma/4.0 ) + m0*
BrWigInt0(x,gamma,m0); }
65 {
return 0.5*gamma*std::tan( 0.5*x/gamma )+m0; }
69 typedef std::map<const G4ParticleDefinition*, G4double, std::less<const G4ParticleDefinition*> >::const_iterator
minMassMapIterator;
70 typedef std::map<const G4ParticleDefinition*, G4double, std::less<const G4ParticleDefinition*> >
minMassMapType;
G4double SampleMass(const G4double poleMass, const G4double gamma, const G4double minMass, const G4double maxMass) const
static G4ThreadLocal minMassMapType * minMassCache_G4MT_TLS_
G4double BrWigInt0(const G4double x, const G4double gamma, const G4double m0) const
G4double BrWigInt1(const G4double x, const G4double gamma, const G4double m0) const
std::map< const G4ParticleDefinition *, G4double, std::less< const G4ParticleDefinition * > >::const_iterator minMassMapIterator
G4double GetMinimumMass(const G4ParticleDefinition *p) const
G4double BrWigInv(const G4double x, const G4double gamma, const G4double m0) const
std::map< const G4ParticleDefinition *, G4double, std::less< const G4ParticleDefinition * > > minMassMapType