Thermal-FIST 1.5
Package for hadron resonance gas model applications
Loading...
Searching...
No Matches
thermalfist::ThermalParticleSystem Class Reference

Class containing the particle list. More...

#include <ThermalParticleSystem.h>

Public Types

enum  SortModeType { SortByMass = 0 , SortByMassAndPDG = 1 , SortByBaryonAndMassAndPDG = 2 }
 Mode list to sort particles species. More...
 
typedef std::pair< double, int > SingleDecayContribution
 
typedef std::vector< SingleDecayContributionDecayContributionsToParticle
 A vector of SingleDecayContribution where each element corresponds to a certain resonance species.
 
typedef std::vector< DecayContributionsToParticleDecayContributionsToAllParticles
 
typedef std::pair< std::vector< double >, int > SingleDecayCumulantsContribution
 
typedef std::vector< SingleDecayCumulantsContributionDecayCumulantsContributionsToParticle
 A vector of SingleDecayCumulantsContribution where each element corresponds to a certain resonance species.
 
typedef std::vector< DecayCumulantsContributionsToParticleDecayCumulantsContributionsToAllParticles
 
typedef std::pair< std::vector< double >, int > SingleDecayProbabilityDistribution
 
typedef std::vector< SingleDecayProbabilityDistributionDecayProbabilityDistributionsToParticle
 A vector of SingleDecayProbabilityDistribution where each element corresponds to a certain resonance species.
 
typedef std::vector< DecayProbabilityDistributionsToParticleDecayProbabilityDistributionsToAllParticles
 
typedef std::vector< std::pair< double, std::vector< int > > > ResonanceFinalStatesDistribution
 

Public Member Functions

 ThermalParticleSystem (const std::string &InputFile="", bool GenAntiP=true, double mcut=-1.)
 Construct a new ThermalParticleSystem object.
 
 ThermalParticleSystem (const std::string &InputFile, const std::string &DecayFile, bool GenAntiP=true, double mcut=-1.)
 Construct a new ThermalParticleSystem object.
 
 ThermalParticleSystem (const std::vector< std::string > &ListFiles, const std::vector< std::string > &DecayFiles=std::vector< std::string >(0), const std::set< std::string > &flags=std::set< std::string >(), double mcut=-1.)
 Construct a new ThermalParticleSystem object.
 
 ~ThermalParticleSystem (void)
 Destroy the ThermalParticleSystem object.
 
ThermalParticle::ParticleDecaysVector GetDecaysFromAntiParticle (const ThermalParticle::ParticleDecaysVector &Decays)
 Generates the decay channels for an antiparticle based on the provided decay channels of a particle.
 
void ProcessDecays ()
 Computes the decay contributions of decaying resonances to all particle yields.
 
void FillDecayProperties ()
 Computes and fills decay channels of all particles with extra information.
 
void FillDecayThresholds ()
 Computes mass thresholds of all decay channels of all particles. Obsolete.
 
void FillResonanceDecays ()
 Computes the decay contributions of decaying resonances to all particle yields.
 
void FillResonanceDecaysByFeeddown ()
 Same as FillResonanceDecays() but separately for weak, electromagnetic, and strong decay feeddowns.
 
const std::vector< DecayContributionsToAllParticles > & DecayContributionsByFeeddown () const
 
const DecayCumulantsContributionsToAllParticlesDecayCumulants () const
 Cumulants of particle number distributions of from decays.
 
const std::vector< ResonanceFinalStatesDistribution > & ResonanceFinalStatesDistributions () const
 Final state particle number distributions for resonance decays.
 
void LoadList (const std::vector< std::string > &ListFiles, const std::vector< std::string > &DecayFiles=std::vector< std::string >(0), const std::set< std::string > &flags=std::set< std::string >(), double mcut=1.e9)
 Loads the particle list from file.
 
void LoadList (const std::string &InputFile, const std::string &DecayFile, bool GenerateAntiParticles=true, double mcut=1.e9)
 Loads the particle list from file.
 
void LoadList (const std::string &InputFile="", bool GenerateAntiParticles=true, double mcut=-1.)
 Loads the particle list from file.
 
void AddParticlesToListFromFile (const std::string &InputFile="", const std::set< std::string > &flags=std::set< std::string >(), double mcut=-1.)
 
void LoadTable (const std::string &InputFile="", bool GenerateAntiParticles=true, double mcut=-1.)
 Same as LoadList()
 
void SetTableFromVector (const std::vector< ThermalParticle > &part_in, bool GenerateAntiParticles=true)
 Sets the particle list from a provided vector of ThermalParticle objects.
 
void WriteTableToFile (const std::string &OutputFile="", bool WriteAntiParticles=false)
 Writes the particle list to file.
 
void LoadDecays (const std::vector< std::string > &DecayFiles, const std::set< std::string > &flags=std::set< std::string >())
 Load the decay channels for all particles from a file.
 
void LoadDecays (const std::string &DecaysFile="", bool GenerateAntiParticles=true)
 Load the decay channels for all particles from a file.
 
void WriteDecaysToFile (const std::string &OutputFile="", bool WriteAntiParticles=false)
 Writes the decay channels to a file.
 
void NormalizeBranchingRatios ()
 Normalize branching ratios for all particles such that they add up to 100%.
 
void RestoreBranchingRatios ()
 Restore the original values of all the branching ratios.
 
void SetCalculationType (IdealGasFunctions::QStatsCalculationType type)
 Sets the CalculationType() method to evaluate quantum statistics.
 
IdealGasFunctions::QStatsCalculationType QStatsCalculationType () const
 
void SetClusterExpansionOrder (int order)
 Set the number of terms in the cluster expansion method.
 
void SetResonanceWidthShape (ThermalParticle::ResonanceWidthShape shape)
 Set (or get) the ThermalParticle::ResonanceWidthShape for all particles.
 
ThermalParticle::ResonanceWidthShape ResonanceWidthShape () const
 
void SetResonanceWidthIntegrationType (ThermalParticle::ResonanceWidthIntegration type)
 Set (or get) the ThermalParticle::ResonanceWidthIntegration scheme for all particles.
 
ThermalParticle::ResonanceWidthIntegration ResonanceWidthIntegrationType () const
 
std::string GetNameFromPDG (long long pdgid)
 Get the name of particle species with the specified PDG ID.
 
bool hasBaryons () const
 
bool hasCharged () const
 
bool hasStrange () const
 
bool hasCharmed () const
 
bool hasMultiBaryons () const
 
int ComponentsNumber () const
 Number of different particle species in the list.
 
const std::vector< ThermalParticle > & Particles () const
 Returns the vector of all particle species.
 
std::vector< ThermalParticle > & Particles ()
 
const ThermalParticleParticle (int id) const
 ThermalParticle object corresponding to particle species with a provided 0-based index.
 
ThermalParticleParticle (int id)
 
const ThermalParticleParticleByPDG (long long pdgid) const
 ThermalParticle object corresponding to particle species with a provided PDG ID.
 
ThermalParticleParticleByPDG (long long pdgid)
 
int PdgToId (long long pdgid) const
 Transforms PDG ID to a 0-based particle id number.
 
long long IdToPdg (int id) const
 Transforms 0-based particle id number to a PDG ID.
 
void AddParticle (const ThermalParticle &part)
 Adds a new particle specie to the list.
 
void RemoveParticleAt (int ind)
 Removes particle specie with specified 0-based particle id number from the list.
 
bool CheckDecayChargesConservation (int ind) const
 
bool CheckDecayChannelsAreSpecified () const
 
bool CheckAbsoluteQuarkNumbers () const
 
std::vector< int > CheckDecayChargesConservationVector (int ind) const
 
bool operator== (const ThermalParticleSystem &rhs) const
 
bool operator!= (const ThermalParticleSystem &rhs) const
 
void FillPdgMap ()
 
void SetSortMode (SortModeType type)
 
SortModeType SortMode () const
 Current mode to sort particle species.
 
void FinalizeList ()
 
std::vector< double > GetConservedChargesVector (ConservedCharge::Name charge)
 Calculates vector of conserved charges for all particle species.
 

Static Public Member Functions

static ParticleDecayType::DecayType DecayTypeByParticleType (const ThermalParticle &part)
 Determines the decay type of a given particle specie.
 

Static Public Attributes

static const std::string flag_no_antiparticles = "no_antiparticles"
 
static const std::string flag_nostrangeness = "no_strangeness"
 
static const std::string flag_nocharm = "no_charm"
 
static const std::string flag_nonuclei = "no_nuclei"
 
static const std::string flag_noexcitednuclei = "no_excitednuclei"
 

Detailed Description

Class containing the particle list.

Class containing the information about the particle list. The list is represented by a vector of ThermalParticle objects and is usually read from a file.

Examples
BagModelFit.cpp, CalculationTmu.cpp, CosmicTrajectory.cpp, NeutronStars-CSHRG.cpp, PCE-Saha-LHC.cpp, SusceptibilitiesBQS.cpp, ThermodynamicsBQS.cpp, cpc1-HRG-TDep.cpp, cpc2-chi2-vs-T.cpp, cpc3-chi2NEQ.cpp, and cpc4-mcHRG.cpp.

Definition at line 29 of file ThermalParticleSystem.h.

Member Typedef Documentation

◆ DecayContributionsToAllParticles

A vector of DecayContributionsToParticle where each element corresponds to a certain particle species resulting from decay.

Definition at line 150 of file ThermalParticleSystem.h.

◆ DecayContributionsToParticle

A vector of SingleDecayContribution where each element corresponds to a certain resonance species.

Definition at line 146 of file ThermalParticleSystem.h.

◆ DecayCumulantsContributionsToAllParticles

A vector of DecayCumulantsContributionsToParticle where each element corresponds to a certain particle species resulting from decay.

Definition at line 162 of file ThermalParticleSystem.h.

◆ DecayCumulantsContributionsToParticle

A vector of SingleDecayCumulantsContribution where each element corresponds to a certain resonance species.

Definition at line 158 of file ThermalParticleSystem.h.

◆ DecayProbabilityDistributionsToAllParticles

A vector of DecayProbabilityDistributionsToParticle where each element corresponds to a certain particle species resulting from decay.

Definition at line 176 of file ThermalParticleSystem.h.

◆ DecayProbabilityDistributionsToParticle

A vector of SingleDecayProbabilityDistribution where each element corresponds to a certain resonance species.

Definition at line 172 of file ThermalParticleSystem.h.

◆ ResonanceFinalStatesDistribution

typedef std::vector< std::pair<double, std::vector<int> > > thermalfist::ThermalParticleSystem::ResonanceFinalStatesDistribution

A vector of final state particle number distributions for the final state (after decays) of each particle species.
One element per each particle species in the list. Each element is a std::pair where the first element the probability of a specific final state and the second element contains the numbers of all particle species in this final state

Definition at line 183 of file ThermalParticleSystem.h.

◆ SingleDecayContribution

Construction to hold mean number of certain species which results from a decay of a certain resonance.

The First element is the mean number of particles and the second element is the 0-based index of a resonance.

Definition at line 143 of file ThermalParticleSystem.h.

◆ SingleDecayCumulantsContribution

typedef std::pair< std::vector<double>, int> thermalfist::ThermalParticleSystem::SingleDecayCumulantsContribution

Holds cumulants of the particle number distribution of certain species which appear in a decay of a certain resonance.

The First element contains the leading four cumulants and the second element is the 0-based index of a resonance.

Definition at line 155 of file ThermalParticleSystem.h.

◆ SingleDecayProbabilityDistribution

typedef std::pair< std::vector<double>, int> thermalfist::ThermalParticleSystem::SingleDecayProbabilityDistribution

Construction to hold the probability distribution of the number of certain species which appear in a decay of a certain resonance.

The first element contains the probability distribution and the second element is the 0-based index of a resonance.

Definition at line 169 of file ThermalParticleSystem.h.

Member Enumeration Documentation

◆ SortModeType

Mode list to sort particles species.

Enumerator
SortByMass 
SortByMassAndPDG 
SortByBaryonAndMassAndPDG 

Definition at line 503 of file ThermalParticleSystem.h.

Constructor & Destructor Documentation

◆ ThermalParticleSystem() [1/3]

thermalfist::ThermalParticleSystem::ThermalParticleSystem ( const std::string & InputFile = "",
bool GenAntiP = true,
double mcut = -1. )
inline

Construct a new ThermalParticleSystem object.

The list is read from the specified file with LoadTable() method.

Parameters
InputFilePath to the file with particle list.
GenAntiPWhether antiparticles are to be generated from particles automatically.
mcutDiscard particles with mass > mcut (in GeV). If mcut is negative, no cut applied

Definition at line 42 of file ThermalParticleSystem.h.

◆ ThermalParticleSystem() [2/3]

thermalfist::ThermalParticleSystem::ThermalParticleSystem ( const std::string & InputFile,
const std::string & DecayFile,
bool GenAntiP = true,
double mcut = -1. )
inline

Construct a new ThermalParticleSystem object.

The list is read from the specified file with LoadTable() method.

Parameters
InputFilePath to the file with particle list.
DecayFilePath to the file with the list of decays.
GenAntiPWhether antiparticles are to be generated from particles automatically.
mcutDiscard particles with mass > mcut (in GeV). If mcut is negative, no cut applied

Definition at line 54 of file ThermalParticleSystem.h.

◆ ThermalParticleSystem() [3/3]

thermalfist::ThermalParticleSystem::ThermalParticleSystem ( const std::vector< std::string > & ListFiles,
const std::vector< std::string > & DecayFiles = std::vector<std::string>(0),
const std::set< std::string > & flags = std::set<std::string>(),
double mcut = -1. )

Construct a new ThermalParticleSystem object.

The particle list is read from files listed in ListFiles vector.

The decays are read from files listed in DecayFiles vector. If DecayFiles is empty, "decays.dat" file in the same directory as the first input list file is used.

flags parameter can be used to specify a number of flags for reading the input.

Parameters
ListFilesList of files that contain the particle list.
DecayFilesList of files containing the decays.
flagsVarious flags can be enabled to apply various filters: "no_antiparticles" – do not create antiparticles "no_strangeness" – ignore particles with strange quark content. "no_charm" – ignore particles with charm quark content. "no_nuclei" – ignore particles with a multiple baryon charge. "no_excitednuclei" – ignore excited nuclei.
mcutIgnore particles with mass > mcut (in GeV). If mcut is negative, no cut applied

Definition at line 66 of file ThermalParticleSystem.cpp.

◆ ~ThermalParticleSystem()

thermalfist::ThermalParticleSystem::~ThermalParticleSystem ( void )

Destroy the ThermalParticleSystem object.

Definition at line 71 of file ThermalParticleSystem.cpp.

Member Function Documentation

◆ AddParticle()

void thermalfist::ThermalParticleSystem::AddParticle ( const ThermalParticle & part)

Adds a new particle specie to the list.

Note that this method does NOT generate an antiparticle.

Parameters
partThermalParticle object corresponding to a new particle specie added.

Definition at line 1395 of file ThermalParticleSystem.cpp.

◆ AddParticlesToListFromFile()

void thermalfist::ThermalParticleSystem::AddParticlesToListFromFile ( const std::string & InputFile = "",
const std::set< std::string > & flags = std::set<std::string>(),
double mcut = -1. )

Definition at line 555 of file ThermalParticleSystem.cpp.

◆ CheckAbsoluteQuarkNumbers()

bool thermalfist::ThermalParticleSystem::CheckAbsoluteQuarkNumbers ( ) const

Checks absolute quark numbers

Definition at line 1438 of file ThermalParticleSystem.cpp.

◆ CheckDecayChannelsAreSpecified()

bool thermalfist::ThermalParticleSystem::CheckDecayChannelsAreSpecified ( ) const

Checks if all particles marked as unstable have decay channels

Definition at line 1418 of file ThermalParticleSystem.cpp.

◆ CheckDecayChargesConservation()

bool thermalfist::ThermalParticleSystem::CheckDecayChargesConservation ( int ind) const

Checks whether cumulative charges (B, Q, S, C) of decay products match those of decaying particle with index ind

Definition at line 1409 of file ThermalParticleSystem.cpp.

◆ CheckDecayChargesConservationVector()

std::vector< int > thermalfist::ThermalParticleSystem::CheckDecayChargesConservationVector ( int ind) const

Checks whether cumulative charges (B, Q, S, C) of decay products match those of decaying particle with index ind. Returns a 4-element vector of integers, an element is zero if the correspomnding conserved charge is not conserved and unity otherwise.

Definition at line 1456 of file ThermalParticleSystem.cpp.

◆ ComponentsNumber()

int thermalfist::ThermalParticleSystem::ComponentsNumber ( ) const
inline

Number of different particle species in the list.

Definition at line 401 of file ThermalParticleSystem.h.

◆ DecayContributionsByFeeddown()

const std::vector< DecayContributionsToAllParticles > & thermalfist::ThermalParticleSystem::DecayContributionsByFeeddown ( ) const
inline

Returns information about decay chains of heavier particles including strong, strong/electromagnetic, or strong/electromagnetic/weak decay feeddown resulting in production of of all the particles.

Each element corresponds to a specific Feeddown::Type.

Definition at line 191 of file ThermalParticleSystem.h.

◆ DecayCumulants()

const DecayCumulantsContributionsToAllParticles & thermalfist::ThermalParticleSystem::DecayCumulants ( ) const
inline

Cumulants of particle number distributions of from decays.

Used to calculate effects of probabilistic decays on the final state fluctuations.

Returns
const DecayCumulantsContributionsToAllParticles&

Definition at line 201 of file ThermalParticleSystem.h.

◆ DecayTypeByParticleType()

ParticleDecayType::DecayType thermalfist::ThermalParticleSystem::DecayTypeByParticleType ( const ThermalParticle & part)
static

Determines the decay type of a given particle specie.

Determines whether a given particle is stable, or strongly, electromagnetically, or weakly decaying particle. Method first determines whether the PDG ID of a given particle is corresponds to one of the known stable, weakly or electromagnetically decaying particle. If not, the particle is considered to be strongly decaying if its stability flag is set to false. If the stability flag is true, then particle is considered to be weakly decaying if it contains strange or charm quarks, or stable otherwise.

Parameters
partThermalParticle object of a given particle specie.
Returns
ParticleDecay::DecayType The decay type of a given particle.

Definition at line 1519 of file ThermalParticleSystem.cpp.

◆ FillDecayProperties()

void thermalfist::ThermalParticleSystem::FillDecayProperties ( )

Computes and fills decay channels of all particles with extra information.

Computes mass thresholds, released angular momentum for all decay channels of all particles. Computes and sets the coefficients for mass integration in the eBW scheme.

Definition at line 91 of file ThermalParticleSystem.cpp.

◆ FillDecayThresholds()

void thermalfist::ThermalParticleSystem::FillDecayThresholds ( )

Computes mass thresholds of all decay channels of all particles. Obsolete.

Definition at line 130 of file ThermalParticleSystem.cpp.

◆ FillPdgMap()

void thermalfist::ThermalParticleSystem::FillPdgMap ( )

Fills the PdgToId() map between PDG ID numbers and the 0-based indices of all particles

Definition at line 1360 of file ThermalParticleSystem.cpp.

◆ FillResonanceDecays()

void thermalfist::ThermalParticleSystem::FillResonanceDecays ( )

Computes the decay contributions of decaying resonances to all particle yields.

Feeddown only according to stability flags is considered here.

Definition at line 147 of file ThermalParticleSystem.cpp.

◆ FillResonanceDecaysByFeeddown()

void thermalfist::ThermalParticleSystem::FillResonanceDecaysByFeeddown ( )

Same as FillResonanceDecays() but separately for weak, electromagnetic, and strong decay feeddowns.

Definition at line 1587 of file ThermalParticleSystem.cpp.

◆ FinalizeList()

void thermalfist::ThermalParticleSystem::FinalizeList ( )

Sorts the particles by their mass, fills the PdgToId() map between PDG ID numbers and the 0-based indices of all particles, and determines the decay types of each species

Definition at line 1380 of file ThermalParticleSystem.cpp.

◆ GetConservedChargesVector()

std::vector< double > thermalfist::ThermalParticleSystem::GetConservedChargesVector ( ConservedCharge::Name charge)

Calculates vector of conserved charges for all particle species.

Returns
std::vector<double> – a vector of conserved charges for all particle species.

Definition at line 1633 of file ThermalParticleSystem.cpp.

◆ GetDecaysFromAntiParticle()

ThermalParticle::ParticleDecaysVector thermalfist::ThermalParticleSystem::GetDecaysFromAntiParticle ( const ThermalParticle::ParticleDecaysVector & Decays)

Generates the decay channels for an antiparticle based on the provided decay channels of a particle.

Parameters
DecaysThe decay channels of a particle.
Returns
std::vector<ParticleDecay> The generated decay channels of an antiparticle.

Definition at line 75 of file ThermalParticleSystem.cpp.

◆ GetNameFromPDG()

std::string thermalfist::ThermalParticleSystem::GetNameFromPDG ( long long pdgid)

Get the name of particle species with the specified PDG ID.

If the requested PDG ID is not in the particle list, returns "???".

Parameters
pdgidThe requested PDG ID.
Returns
std::string Particle name.

Definition at line 1250 of file ThermalParticleSystem.cpp.

◆ hasBaryons()

bool thermalfist::ThermalParticleSystem::hasBaryons ( ) const
inline

Whether the particle list contains particles with a non-zero baryon charge.

Definition at line 382 of file ThermalParticleSystem.h.

◆ hasCharged()

bool thermalfist::ThermalParticleSystem::hasCharged ( ) const
inline

Whether the particle list contains particles with a non-zero electric charge.

Definition at line 386 of file ThermalParticleSystem.h.

◆ hasCharmed()

bool thermalfist::ThermalParticleSystem::hasCharmed ( ) const
inline

Whether the particle list contains particles with a non-zero charm.

Definition at line 394 of file ThermalParticleSystem.h.

◆ hasMultiBaryons()

bool thermalfist::ThermalParticleSystem::hasMultiBaryons ( ) const
inline

Whether the particle list contains multibaryons

Definition at line 398 of file ThermalParticleSystem.h.

◆ hasStrange()

bool thermalfist::ThermalParticleSystem::hasStrange ( ) const
inline

Whether the particle list contains particles with a non-zero strangeness.

Definition at line 390 of file ThermalParticleSystem.h.

◆ IdToPdg()

long long thermalfist::ThermalParticleSystem::IdToPdg ( int id) const
inline

Transforms 0-based particle id number to a PDG ID.

Returns 0 if the provided id number is out of bounds.

Parameters
id0-based particle id number.
Returns
int PDG ID.

Definition at line 454 of file ThermalParticleSystem.h.

◆ LoadDecays() [1/2]

void thermalfist::ThermalParticleSystem::LoadDecays ( const std::string & DecaysFile = "",
bool GenerateAntiParticles = true )

Load the decay channels for all particles from a file.

Parameters
DecaysFilePath to the file with decays.
GenerateAntiParticlesWhether the decays of antiparticles are to be generated from particles automatically using the GetDecaysFromAntiParticle() method.

Definition at line 866 of file ThermalParticleSystem.cpp.

◆ LoadDecays() [2/2]

void thermalfist::ThermalParticleSystem::LoadDecays ( const std::vector< std::string > & DecayFiles,
const std::set< std::string > & flags = std::set<std::string>() )

Load the decay channels for all particles from a file.

Parameters
DecaysFilePath to the file with decays.
GenerateAntiParticlesWhether the decays of antiparticles are to be generated from particles automatically using the GetDecaysFromAntiParticle() method.

Definition at line 821 of file ThermalParticleSystem.cpp.

◆ LoadList() [1/3]

void thermalfist::ThermalParticleSystem::LoadList ( const std::string & InputFile,
const std::string & DecayFile,
bool GenerateAntiParticles = true,
double mcut = 1.e9 )

Loads the particle list from file.

The list is read from the specified InputFile. Decays are read from the specified DecayFile.

Parameters
InputFilePath to the file with particle list.
DecayFilePath to the file with the list of decays.
GenAntiPWhether antiparticles are to be generated from particles automatically.
mcutDiscard particles with mass > mcut (in GeV).

Definition at line 542 of file ThermalParticleSystem.cpp.

◆ LoadList() [2/3]

void thermalfist::ThermalParticleSystem::LoadList ( const std::string & InputFile = "",
bool GenerateAntiParticles = true,
double mcut = -1. )
inline

Loads the particle list from file.

The list is read from the specified file. Decays are read from file "decays.dat" from the same directory as the input list. This can be overriden by ReadDecays() method.

Parameters
InputFilePath to the file with particle list.
GenAntiPWhether antiparticles are to be generated from particles automatically.
mcutDiscard particles with mass > mcut (in GeV).

Definition at line 252 of file ThermalParticleSystem.h.

◆ LoadList() [3/3]

void thermalfist::ThermalParticleSystem::LoadList ( const std::vector< std::string > & ListFiles,
const std::vector< std::string > & DecayFiles = std::vector<std::string>(0),
const std::set< std::string > & flags = std::set<std::string>(),
double mcut = 1.e9 )

Loads the particle list from file.

The list is read from the specified InputFile. Decays are read from the specified DecayFile.

Parameters
InputFilePath to the file with particle list.
DecayFilePath to the file with the list of decays.
GenAntiPWhether antiparticles are to be generated from particles automatically.
mcutDiscard particles with mass > mcut (in GeV).

Definition at line 482 of file ThermalParticleSystem.cpp.

◆ LoadTable()

void thermalfist::ThermalParticleSystem::LoadTable ( const std::string & InputFile = "",
bool GenerateAntiParticles = true,
double mcut = -1. )
inline

Same as LoadList()

Deprecated

Definition at line 262 of file ThermalParticleSystem.h.

◆ NormalizeBranchingRatios()

void thermalfist::ThermalParticleSystem::NormalizeBranchingRatios ( )

Normalize branching ratios for all particles such that they add up to 100%.

Definition at line 1268 of file ThermalParticleSystem.cpp.

◆ operator!=()

bool thermalfist::ThermalParticleSystem::operator!= ( const ThermalParticleSystem & rhs) const
inline

Definition at line 496 of file ThermalParticleSystem.h.

◆ operator==()

bool thermalfist::ThermalParticleSystem::operator== ( const ThermalParticleSystem & rhs) const

Definition at line 1501 of file ThermalParticleSystem.cpp.

◆ Particle() [1/2]

ThermalParticle & thermalfist::ThermalParticleSystem::Particle ( int id)

Definition at line 1322 of file ThermalParticleSystem.cpp.

◆ Particle() [2/2]

const ThermalParticle & thermalfist::ThermalParticleSystem::Particle ( int id) const

ThermalParticle object corresponding to particle species with a provided 0-based index.

Parameters
id0-based index of a particle specie.
Returns
const ThermalParticle& ThermalParticle object reference.

Definition at line 1314 of file ThermalParticleSystem.cpp.

◆ ParticleByPDG() [1/2]

ThermalParticle & thermalfist::ThermalParticleSystem::ParticleByPDG ( long long pdgid)

Definition at line 1339 of file ThermalParticleSystem.cpp.

◆ ParticleByPDG() [2/2]

const ThermalParticle & thermalfist::ThermalParticleSystem::ParticleByPDG ( long long pdgid) const

ThermalParticle object corresponding to particle species with a provided PDG ID.

If the provided PDG ID does not exist in the list, program quits.

Parameters
pdgidPDG ID of a particle specie.
Returns
ThermalParticle& ThermalParticle object reference.
Examples
PCE-Saha-LHC.cpp.

Definition at line 1330 of file ThermalParticleSystem.cpp.

◆ Particles() [1/2]

std::vector< ThermalParticle > & thermalfist::ThermalParticleSystem::Particles ( )
inline

Definition at line 409 of file ThermalParticleSystem.h.

◆ Particles() [2/2]

const std::vector< ThermalParticle > & thermalfist::ThermalParticleSystem::Particles ( ) const
inline

Returns the vector of all particle species.

Returns
const std::vector<ThermalParticle>& The vector of all particle species.

Definition at line 408 of file ThermalParticleSystem.h.

◆ PdgToId()

int thermalfist::ThermalParticleSystem::PdgToId ( long long pdgid) const

Transforms PDG ID to a 0-based particle id number.

Returns -1 if the provided PDG ID does not exist in the list.

Parameters
pdgidPDG ID.
Returns
int 0-based particle id number.
Examples
PCE-Saha-LHC.cpp.

Definition at line 1348 of file ThermalParticleSystem.cpp.

◆ ProcessDecays()

void thermalfist::ThermalParticleSystem::ProcessDecays ( )

Computes the decay contributions of decaying resonances to all particle yields.

Definition at line 85 of file ThermalParticleSystem.cpp.

◆ QStatsCalculationType()

IdealGasFunctions::QStatsCalculationType thermalfist::ThermalParticleSystem::QStatsCalculationType ( ) const
inline

Definition at line 330 of file ThermalParticleSystem.h.

◆ RemoveParticleAt()

void thermalfist::ThermalParticleSystem::RemoveParticleAt ( int ind)

Removes particle specie with specified 0-based particle id number from the list.

Parameters
ind0-based particle id number of particle specie to be removed.

Definition at line 1401 of file ThermalParticleSystem.cpp.

◆ ResonanceFinalStatesDistributions()

const std::vector< ResonanceFinalStatesDistribution > & thermalfist::ThermalParticleSystem::ResonanceFinalStatesDistributions ( ) const
inline

Final state particle number distributions for resonance decays.

Returns
const std::vector<ResonanceFinalStatesDistribution>& – a vector of final state distributions, one element per each resonance.

Definition at line 209 of file ThermalParticleSystem.h.

◆ ResonanceWidthIntegrationType()

ThermalParticle::ResonanceWidthIntegration thermalfist::ThermalParticleSystem::ResonanceWidthIntegrationType ( ) const
inline

Definition at line 365 of file ThermalParticleSystem.h.

◆ ResonanceWidthShape()

ThermalParticle::ResonanceWidthShape thermalfist::ThermalParticleSystem::ResonanceWidthShape ( ) const
inline

Definition at line 354 of file ThermalParticleSystem.h.

◆ RestoreBranchingRatios()

void thermalfist::ThermalParticleSystem::RestoreBranchingRatios ( )

Restore the original values of all the branching ratios.

Definition at line 1274 of file ThermalParticleSystem.cpp.

◆ SetCalculationType()

void thermalfist::ThermalParticleSystem::SetCalculationType ( IdealGasFunctions::QStatsCalculationType type)

Sets the CalculationType() method to evaluate quantum statistics.

Parameters
typeMethod to evaluate quantum statistics.

Definition at line 1279 of file ThermalParticleSystem.cpp.

◆ SetClusterExpansionOrder()

void thermalfist::ThermalParticleSystem::SetClusterExpansionOrder ( int order)

Set the number of terms in the cluster expansion method.

Sets the same value for all particles. To set individually for each particle use ThermalParticle::SetClusterExpansionOrder().

Parameters
orderNumber of terms.

Definition at line 1286 of file ThermalParticleSystem.cpp.

◆ SetResonanceWidthIntegrationType()

void thermalfist::ThermalParticleSystem::SetResonanceWidthIntegrationType ( ThermalParticle::ResonanceWidthIntegration type)

Set (or get) the ThermalParticle::ResonanceWidthIntegration scheme for all particles.

Parameters
typeThermalParticle::ResonanceWidthIntegration

Definition at line 1299 of file ThermalParticleSystem.cpp.

◆ SetResonanceWidthShape()

void thermalfist::ThermalParticleSystem::SetResonanceWidthShape ( ThermalParticle::ResonanceWidthShape shape)

Set (or get) the ThermalParticle::ResonanceWidthShape for all particles.

This global setting can be overriden for individual particles by ThermalParticle::SetResonanceWidthShape().

Parameters
shapeThermalParticle::ResonanceWidthShape

Definition at line 1292 of file ThermalParticleSystem.cpp.

◆ SetSortMode()

void thermalfist::ThermalParticleSystem::SetSortMode ( SortModeType type)
inline

Sets the mode to sort particle species (see SortModeType) Use carefully! Need to recalculate all model calculations after this!

Definition at line 511 of file ThermalParticleSystem.h.

◆ SetTableFromVector()

void thermalfist::ThermalParticleSystem::SetTableFromVector ( const std::vector< ThermalParticle > & part_in,
bool GenerateAntiParticles = true )

Sets the particle list from a provided vector of ThermalParticle objects.

Parameters
part_inInput vector of ThermalParticle objects.
GenerateAntiParticlesWhether antiparticles are to be generated from particles automatically.

Definition at line 740 of file ThermalParticleSystem.cpp.

◆ SortMode()

SortModeType thermalfist::ThermalParticleSystem::SortMode ( ) const
inline

Current mode to sort particle species.

Definition at line 514 of file ThermalParticleSystem.h.

◆ WriteDecaysToFile()

void thermalfist::ThermalParticleSystem::WriteDecaysToFile ( const std::string & OutputFile = "",
bool WriteAntiParticles = false )

Writes the decay channels to a file.

Parameters
OutputFilePath to the output file.
WriteAntiParticlesWhether the decays of antiparticles are to be written to the file as well.

Definition at line 1152 of file ThermalParticleSystem.cpp.

◆ WriteTableToFile()

void thermalfist::ThermalParticleSystem::WriteTableToFile ( const std::string & OutputFile = "",
bool WriteAntiParticles = false )

Writes the particle list to file.

Note: this does NOT write the decays. The decays can be written with the WriteDecaysToFile() function.

Parameters
OutputFilePath to the output file.
WriteAntiParticlesWhether antiparticles are to be written to the file as well.

Definition at line 775 of file ThermalParticleSystem.cpp.

Member Data Documentation

◆ flag_no_antiparticles

const std::string thermalfist::ThermalParticleSystem::flag_no_antiparticles = "no_antiparticles"
static

Definition at line 538 of file ThermalParticleSystem.h.

◆ flag_nocharm

const std::string thermalfist::ThermalParticleSystem::flag_nocharm = "no_charm"
static

Definition at line 540 of file ThermalParticleSystem.h.

◆ flag_noexcitednuclei

const std::string thermalfist::ThermalParticleSystem::flag_noexcitednuclei = "no_excitednuclei"
static

Definition at line 542 of file ThermalParticleSystem.h.

◆ flag_nonuclei

const std::string thermalfist::ThermalParticleSystem::flag_nonuclei = "no_nuclei"
static

Definition at line 541 of file ThermalParticleSystem.h.

◆ flag_nostrangeness

const std::string thermalfist::ThermalParticleSystem::flag_nostrangeness = "no_strangeness"
static

Definition at line 539 of file ThermalParticleSystem.h.


The documentation for this class was generated from the following files: