34 #define INCLXX_IN_GEANT4_MODE 1
38 #ifndef G4INCLPHASESPACERAUBOLDLYNCH_HH
39 #define G4INCLPHASESPACERAUBOLDLYNCH_HH
77 std::vector<G4double>
rnd;
118 #endif // G4INCLPHASESPACERAUBOLDLYNCH_HH
InterpolationTable * wMaxCorrection
Generate momenta using the RauboldLynch method.
static const G4double wMaxMasslessX[wMaxNE]
Abstract interface for the phase-space generators.
Simple interpolation table.
std::vector< G4double > sumMasses
void generate(const G4double sqrtS, ParticleList &particles)
Generate momenta according to a uniform, Lorentz-invariant phase-space model.
Abstract interface for the phase-space generators.
G4double maxGeneratedWeight
static const size_t nMasslessParticlesTable
G4double computeMaximumWeightParam()
Compute the maximum possible weight using parametrizations.
void initialize(ParticleList &particles)
Initialize internal structures (masses and sum of masses)
std::vector< G4double > invariantMasses
static const size_t wMaxNE
void generateEvent(ParticleList &particles)
Generate an event.
std::vector< G4double > masses
std::vector< G4double > rnd
PhaseSpaceRauboldLynch & operator=(PhaseSpaceRauboldLynch const &rhs)
Dummy assignment operator to silence Coverity warning.
static const G4double wMaxInterpolationMargin
G4double computeWeight()
Compute the maximum possible weight.
G4double computeMaximumWeightNaive()
Compute the maximum possible weight using a naive algorithm.
static const G4double wMaxCorrectionY[wMaxNE]
static const G4double wMaxMasslessY[wMaxNE]
InterpolationTable * wMaxMassless
std::vector< G4double > momentaCM
Class for interpolating the of a 1-dimensional function.
G4double getMaxGeneratedWeight() const
Return the largest generated weight.
static const G4double wMaxCorrectionX[wMaxNE]
G4double prelog[wMaxNP]
Precalculated coefficients: -ln(n)
virtual ~PhaseSpaceRauboldLynch()
static const size_t wMaxNP