8#ifndef THERMALMODELCANONICAL_H
9#define THERMALMODELCANONICAL_H
39 B(iB),
Q(iQ),
S(iS),
C(iC) { }
242 void PrepareModelGCE();
244 void CleanModelGCE();
map< string, double > params
ThermalModelBase(ThermalParticleSystem *TPS, const ThermalModelParameters ¶ms=ThermalModelParameters())
Construct a new ThermalModelBase object.
virtual void ConserveCharm(bool conserve=true)
Specifies whether the charm charge is treated canonically.
std::map< QuantumNumbers, int > m_QNMap
Maps QuantumNumbers combinations to a 1-dimensional index.
double m_MultExpBanalyt
Exponential multiplier for analytical baryon fugacity calculations.
int m_IntegrationIterationsMultiplier
A multiplier to increase the number of iterations during the numerical integration used to calculate ...
int m_BMAX
Maximum baryon number.
virtual double ParticleScalarDensity(int)
Returns the scalar density of a particle species.
int IntegrationIterationsMultiplier() const
The multiplier of the number of iterations in the numerical integration.
virtual void SetStatistics(bool stats)
std::vector< double > m_PartialZ
The computed canonical partition function.
int m_QCE
Flag indicating if electric charge is conserved canonically.
virtual void ConserveStrangeness(bool conserve=true)
Specifies whether the strangeness charge is treated canonically.
void ChangeTPS(ThermalParticleSystem *TPS)
Change the particle list.
virtual void CalculateTwoParticleCorrelations()
Computes the fluctuations and correlations of the primordial particle numbers.
int m_CCE
Flag indicating if charm is conserved canonically.
virtual void CalculateFluctuations()
Computes the fluctuation observables.
double m_MultExp
Exponential multiplier for canonical partition function calculations.
virtual double ParticleScaledVariance(int part)
virtual double CalculateEnergyDensityDerivativeT()
std::vector< QuantumNumbers > m_QNvec
A set of QuantumNumbers combinations for which it is necessary to compute the canonical partition fun...
std::vector< double > m_Corr
A vector of chemical factors.
virtual double GetGCEDensity(int i) const
Density of particle species i in the grand-canonical ensemble.
virtual bool IsParticleCanonical(const ThermalParticle &part)
Determines whether the specified ThermalParticle is treat canonically or grand-canonically in the pre...
virtual double CalculateEntropyDensity()
virtual void CalculatePartitionFunctions(double Vc=-1.)
Calculates all necessary canonical partition functions.
virtual ~ThermalModelCanonical(void)
Destroy the ThermalModelCanonical object.
void SetIntegrationIterationsMultiplier(int multiplier)
Assigns the multiplier of the number of iterations in the numerical integration.
virtual void CalculateQuantumNumbersRange(bool computeFluctuations=false)
Calculates the range of quantum numbers values for which it is necessary to compute the canonical par...
virtual void FixParametersNoReset()
Method which actually implements ConstrainChemicalPotentialsNoReset() (for backward compatibility).
virtual double CalculatePressure()
int m_QMAX
Maximum electric charge.
int m_SMAX
Maximum strangeness.
int m_BCE
Flag indicating if baryon charge is conserved canonically.
ThermalModelIdeal * m_modelgce
Pointer to a ThermalModelIdeal object used for GCE calculations.
virtual void ValidateCalculation()
Checks whether issues have occured during the calculation of particle densities in the CalculateDensi...
virtual bool IsConservedChargeCanonical(ConservedCharge::Name charge) const
bool m_Banalyt
Flag indicating whether the analytical calculation of baryon fugacity is used.
int m_SCE
Flag indicating if strangeness is conserved canonically.
virtual double CalculateEnergyDensity()
virtual void FixParameters()
Method which actually implements ConstrainChemicalPotentials() (for backward compatibility).
virtual void ConserveElectricCharge(bool conserve=true)
Specifies whether the electric charge is treated canonically.
virtual void CalculatePrimordialDensities()
Calculates the primordial densities of all species.
ThermalModelCanonical(ThermalParticleSystem *TPS, const ThermalModelParameters ¶ms=ThermalModelParameters())
Construct a new ThermalModelCanonical object.
virtual void ConserveBaryonCharge(bool conserve=true)
Specifies whether the baryon number is treated canonically.
Class implementing the Ideal HRG model.
Class containing all information about a particle specie.
Class containing the particle list.
The main namespace where all classes and functions of the Thermal-FIST library reside.
Name
Set of all conserved charges considered.
QuantumNumbers(int iB=0, int iQ=0, int iS=0, int iC=0)
Construct a new QuantumNumbers object.
const bool operator<(const QuantumNumbers &r) const
Structure containing all thermal parameters of the model.