8 #ifndef PARTICLEDECAYS_H 9 #define PARTICLEDECAYS_H 20 namespace ParticleDecaysMC {
32 double ThreeBodym12F2(
double m12,
double M,
double m1,
double m2,
double m3);
int threebodysucc
Used for debugging the succes rate in the rejection sampling of .
double TernaryThreeBodym12Maximum(double M, double m1, double m2, double m3)
Determines the maximum of the probability density function used in a three-body decay.
std::vector< SimpleParticle > TwoBodyDecay(const SimpleParticle &Mother, double m1, long long pdg1, double m2, long long pdg2)
Samples the decay products of a two-body decay.
double GetRandomThreeBodym12(double M, double m1, double m2, double m3, double fm12max)
Sample the invariant mass of the leading two daughter particles in a three-body decay.
Structure holding information about a single particle in the event generator.
double ThreeBodym12F2(double m12, double M, double m1, double m2, double m3)
Square of the probability density function used in a three-body decay (unnormalized) ...
void ShuffleDecayProducts(std::vector< double > &masses, std::vector< long long > &pdgs)
Shuffles the decay products.
std::vector< SimpleParticle > ManyBodyDecay(const SimpleParticle &Mother, std::vector< double > masses, std::vector< long long > pdgs)
Samples the decay products of a many-body decay.
SimpleParticle LorentzBoost(const SimpleParticle &part, double vx, double vy, double vz)
Lorentz boost of the 4-momentum of a particle.
The main namespace where all classes and functions of the Thermal-FIST library reside.