|
Geant4
10.04
|
Generate momenta using the RauboldLynch method. More...
Public Member Functions | |
| PhaseSpaceRauboldLynch () | |
| virtual | ~PhaseSpaceRauboldLynch () |
| PhaseSpaceRauboldLynch (PhaseSpaceRauboldLynch const &other) | |
| Dummy copy constructor to silence Coverity warning. More... | |
| PhaseSpaceRauboldLynch & | operator= (PhaseSpaceRauboldLynch const &rhs) |
| Dummy assignment operator to silence Coverity warning. More... | |
| void | generate (const G4double sqrtS, ParticleList &particles) |
| Generate momenta according to a uniform, Lorentz-invariant phase-space model. More... | |
| G4double | getMaxGeneratedWeight () const |
| Return the largest generated weight. More... | |
Public Member Functions inherited from IPhaseSpaceGenerator | |
| IPhaseSpaceGenerator () | |
| virtual | ~IPhaseSpaceGenerator () |
Private Member Functions | |
| void | initialize (ParticleList &particles) |
| Initialize internal structures (masses and sum of masses) More... | |
| G4double | computeMaximumWeightNaive () |
| Compute the maximum possible weight using a naive algorithm. More... | |
| G4double | computeMaximumWeightParam () |
| Compute the maximum possible weight using parametrizations. More... | |
| G4double | computeWeight () |
| Compute the maximum possible weight. More... | |
| void | generateEvent (ParticleList &particles) |
| Generate an event. More... | |
Private Attributes | |
| std::vector< G4double > | masses |
| std::vector< G4double > | sumMasses |
| std::vector< G4double > | rnd |
| std::vector< G4double > | invariantMasses |
| std::vector< G4double > | momentaCM |
| size_t | nParticles |
| G4double | sqrtS |
| G4double | availableEnergy |
| G4double | maxGeneratedWeight |
| InterpolationTable * | wMaxMassless |
| InterpolationTable * | wMaxCorrection |
| G4double | prelog [wMaxNP] |
| Precalculated coefficients: -ln(n) More... | |
Static Private Attributes | |
| static const size_t | nMasslessParticlesTable = 13 |
| static const size_t | wMaxNE = 30 |
| static const G4double | wMaxMasslessX [wMaxNE] |
| static const G4double | wMaxMasslessY [wMaxNE] |
| static const G4double | wMaxCorrectionX [wMaxNE] |
| static const G4double | wMaxCorrectionY [wMaxNE] |
| static const G4double | wMaxInterpolationMargin |
| static const size_t | wMaxNP = 20 |
Generate momenta using the RauboldLynch method.
|
virtual |
| PhaseSpaceRauboldLynch | ( | PhaseSpaceRauboldLynch const & | other | ) |
Dummy copy constructor to silence Coverity warning.
| PhaseSpaceRauboldLynch& operator= | ( | PhaseSpaceRauboldLynch const & | rhs | ) |
Dummy assignment operator to silence Coverity warning.
|
virtual |
Generate momenta according to a uniform, Lorentz-invariant phase-space model.
This function will assign momenta to the particles in the list that is passed as an argument. The event is generated in the CM frame.
| sqrtS | total centre-of-mass energy of the system |
| particles | list of particles |
Implements IPhaseSpaceGenerator.
| G4double getMaxGeneratedWeight | ( | ) | const |
Return the largest generated weight.
|
private |
Initialize internal structures (masses and sum of masses)
|
private |
Compute the maximum possible weight using a naive algorithm.
|
private |
Compute the maximum possible weight using parametrizations.
|
private |
Compute the maximum possible weight.
|
private |
Generate an event.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |