Thermal-FIST 1.5
Package for hadron resonance gas model applications
Loading...
Searching...
No Matches
ParticleDecaysMC.h File Reference
#include <cmath>
#include <vector>
#include <map>
#include "HRGEventGenerator/SimpleParticle.h"

Go to the source code of this file.

Namespaces

namespace  thermalfist
 The main namespace where all classes and functions of the Thermal-FIST library reside.
 
namespace  thermalfist::ParticleDecaysMC
 Contains functions for Monte Carlo generation of decays.
 

Functions

double thermalfist::ParticleDecaysMC::ThreeBodym12F2 (double m12, double M, double m1, double m2, double m3)
 Square of the \(m_{12}\) probability density function used in a three-body decay (unnormalized)
 
double thermalfist::ParticleDecaysMC::TernaryThreeBodym12Maximum (double M, double m1, double m2, double m3)
 Determines the maximum of the \(m_{12}\) probability density function used in a three-body decay.
 
double thermalfist::ParticleDecaysMC::GetRandomThreeBodym12 (double M, double m1, double m2, double m3, double fm12max)
 Sample the invariant mass \(m_{12}\) of the leading two daughter particles in a three-body decay.
 
SimpleParticle thermalfist::ParticleDecaysMC::LorentzBoost (const SimpleParticle &part, double vx, double vy, double vz)
 Lorentz boost of the 4-momentum and 4-coordinate of a particle.
 
SimpleParticle thermalfist::ParticleDecaysMC::LorentzBoostMomentumOnly (const SimpleParticle &part, double vx, double vy, double vz)
 Lorentz boost of the 4-momentum of a particle.
 
SimpleParticle thermalfist::ParticleDecaysMC::LorentzBoostMomentaAndCoordinates (const SimpleParticle &part, double vx, double vy, double vz)
 Lorentz boost of the 4-coordinate and 4-momentum of a particle.
 
std::vector< SimpleParticlethermalfist::ParticleDecaysMC::TwoBodyDecay (const SimpleParticle &Mother, double m1, long long pdg1, double m2, long long pdg2)
 Samples the decay products of a two-body decay.
 
std::vector< SimpleParticlethermalfist::ParticleDecaysMC::ManyBodyDecay (const SimpleParticle &Mother, std::vector< double > masses, std::vector< long long > pdgs)
 Samples the decay products of a many-body decay.
 
void thermalfist::ParticleDecaysMC::ShuffleDecayProducts (std::vector< double > &masses, std::vector< long long > &pdgs)
 Shuffles the decay products.
 
double thermalfist::ParticleDecaysMC::ParticleDistanceSquared (const SimpleParticle &part1, const SimpleParticle &part2)
 Return the square of the distance between particles at equal time.
 
double thermalfist::ParticleDecaysMC::ComputeDCA (const SimpleParticle &part)
 Computes the distance of closest approach (DCA) to the origin.
 

Variables

int thermalfist::ParticleDecaysMC::threebodysucc = 0
 Used for debugging the succes rate in the rejection sampling of \(m_{12}\).
 
int thermalfist::ParticleDecaysMC::threebodytot = 0