54 if ( iter!=minMassCache.end() )
56 minResonanceMass = (*iter).second;
65 for (
G4int i=0; i<nDecays; i++)
72 for (
G4int j=0; j<nDaughters; j++)
76 if (!minMass) minMass =
DBL_MAX;
77 minChannelMass+=minMass;
80 if (minChannelMass < minResonanceMass) minResonanceMass = minChannelMass;
99 return minResonanceMass;
119 if ( minMass > maxMass )
122 "SampleResonanceMass: mass range negative (minMass>maxMass)");
133 double fmin =
BrWigInt0(minMass, gamma, poleMass);
134 double fmax =
BrWigInt0(maxMass, gamma, poleMass);
136 returnMass =
BrWigInv(f, gamma, poleMass);
static G4ThreadLocal minMassMapType * minMassCache_G4MT_TLS_
G4bool IsShortLived() const
G4double BrWigInv(const G4double x, const G4double gamma, const G4double m0) const
G4double SampleMass(const G4double poleMass, const G4double gamma, const G4double minMass, const G4double maxMass) const
G4int GetNumberOfDaughters() const
G4double GetMinimumMass(const G4ParticleDefinition *p) const
G4DecayTable * GetDecayTable() const
G4double GetPDGWidth() const
std::map< const G4ParticleDefinition *, G4double, std::less< const G4ParticleDefinition * > >::const_iterator minMassMapIterator
G4VDecayChannel * GetDecayChannel(G4int index) const
G4double GetPDGMass() const
std::map< const G4ParticleDefinition *, G4double, std::less< const G4ParticleDefinition * > > minMassMapType
G4double BrWigInt0(const G4double x, const G4double gamma, const G4double m0) const