27 m_TAG =
"ThermalModelEVCanonicalStrangeness";
96 printf(
"EV-SCE calculation: The following two parameters must be much smaller than unity. Otherwise we are in trouble...\n");
149 if (
id >= 0. &&
id < static_cast<int>(
m_v.size()))
163 for (
size_t i = 0; i < TPSnew->
Particles().size(); ++i) {
209 printf(
"**WARNING** %s::FillVirial(const std::vector<double> & ri): size of ri does not match number of hadrons in the list",
m_TAG.c_str());
220 printf(
"**WARNING** %s::FillVirialEV(const std::vector<double> & vi): size of vi does not match number of hadrons in the list",
m_TAG.c_str());
230 ifstream fin(filename.c_str());
233 fin.getline(cc, 2000);
234 string tmp = string(cc);
236 if (elems.size() < 1)
238 istringstream iss(elems[0]);
241 if (iss >> pdgid >> b) {
252 ofstream fout(filename.c_str());
255 fout << std::setw(15) <<
m_v[i];
263 if (i < 0 || i >= static_cast<int>(
m_v.size()))
279 if (i >= 0 && i < static_cast<int>(
m_v.size()))
virtual double CalculatePressure()
Implementation of the equation of state functions.
virtual bool IsConservedChargeCanonical(ConservedCharge::Name charge) const
Whether the given conserved charge is treated canonically.
std::map< int, int > m_StrMap
std::vector< std::string > split(const std::string &s, char delim)
std::vector< double > m_Chem
const std::vector< double > & Densities() const
double CommonSuppressionFactor()
The density suppression factor , common for all species.
const ThermalParticle & Particle(int id) const
ThermalParticle object corresponding to particle species with a provided 0-based index.
void FillVirialEV(const std::vector< double > &vi=std::vector< double >(0))
Same as FillVirial() but uses the diagonal excluded-volume coefficients as input instead of radii...
virtual void CalculatePrimordialDensities()
Calculates the primordial densities of all species.
bool m_FluctuationsCalculated
double ExcludedVolume(int i) const
virtual double CalculateEnergyDensity()
virtual double MuShift(int id) const
The shift in the chemical potential of particle species i due to the excluded volume interactions...
void SetUseWidth(bool useWidth)
Sets whether finite resonance widths are used. Deprecated.
int PdgToId(long long pdgid)
Transforms PDG ID to a 0-based particle id number.
Class implementing the ideal HRG model with exact conservation of strangeness (strangeness-canonical ...
long long PdgId() const
Particle's Particle Data Group (PDG) ID number.
Class implementing the diagonal excluded-volume model.
Class containing the particle list.
virtual void SetParameters(const ThermalModelParameters ¶ms)
The thermal parameters.
ThermalModelParameters m_Parameters
Structure containing all thermal parameters of the model.
int ComponentsNumber() const
Number of different particle species in the list.
virtual ~ThermalModelEVCanonicalStrangeness(void)
Destroy the ThermalModelEVCanonicalStrangeness object.
virtual void ReadInteractionParameters(const std::string &filename)
Read the set of eigenvolume parameters for all particles from an external file.
std::vector< double > m_v
Contains some extra mathematical functions used in the code.
virtual void WriteInteractionParameters(const std::string &filename)
Write the set of eigenvolume parameters for all particles to an external file.
ThermalParticleSystem * m_TPS
void FillVirialEV(const std::vector< double > &vi=std::vector< double >(0))
Same as FillVirial() but uses the diagonal excluded-volume coefficients as input instead of radii...
std::vector< double > m_pressuresGCE
virtual double CalculateEntropyDensity()
std::vector< double > m_energydensitiesGCE
Class containing all information about a particle specie.
const std::vector< ThermalParticle > & Particles() const
Returns the vector of all particle species.
void SetRadius(double rad)
Set the same excluded volume radius parameter for all species.
virtual double CalculateEigenvolumeFraction()
ThermalModelInteraction m_InteractionModel
virtual void ValidateCalculation()
Checks whether issues have occured during the calculation of particle densities in the CalculateDensi...
virtual void CalculateSums(double Vc)
Calculates the strangeness-canonical partition functions.
Contains some functions do deal with excluded volumes.
Name
Set of all conserved charges considered.
virtual double CalculatePressure()
Implementation of the equation of state functions.
std::vector< double > m_Zsum
virtual void CalculateDensities()
Calculates the primordial and total (after decays) densities of all species.
ThermalModelEVDiagonal * m_modelEV
Diagonal excluded volume model.
std::vector< double > m_densities
void FillVirial(const std::vector< double > &ri=std::vector< double >(0))
Fills the vector of particle eigenvolume parameters.
virtual void CalculateEnergyDensitiesGCE()
Calculates the grand-canonical energy densities.
void SetDegeneracy(double deg)
Set particle's internal degeneracy factor.
Strangeness-canonical ensemble.
ThermalModelEnsemble m_Ensemble
int Strangeness() const
Particle's strangeness.
void ClearModelEV()
Clears m_modelEV.
std::vector< double > m_densitiesGCE
double vr(double r)
Computes the excluded volume parameter from a given radius parameter value.
The main namespace where all classes and functions of the Thermal-FIST library reside.
virtual void SetChemicalPotentials(const std::vector< double > &chem=std::vector< double >(0))
Sets the chemical potentials of all particles.
ThermalParticleSystem * TPS()
virtual void CalculatePressuresGCE()
Calculates the grand-canonical pressures.
virtual void CalculateDensitiesGCE()
Calculates the particle densities in a grand-canonical ensemble.
void SetVolume(double Volume)
Sets the system volume.