Go to the documentation of this file. 1 #ifndef THERMALMODELFIT_H
2 #define THERMALMODELFIT_H
106 if (
T.
name == name)
return T;
111 if (
V.
name == name)
return V;
112 if (
R.
name == name)
return R;
116 if (
T.
name == name)
T = param;
121 if (
V.
name == name)
V = param;
122 if (
R.
name == name)
R = param;
181 ,
value(value1 / value2)
182 ,
error(
sqrt(error1 * error1 / value2 / value2
183 + value1 * value1 / value2 / value2 / value2 / value2 * error2
248 void SetRatios(
const std::vector<ExperimentRatio>& Ratios_) {
251 void AddRatios(
const std::vector<ExperimentRatio>& Ratios_) {
252 Ratios.insert(
Ratios.end(), Ratios_.begin(), Ratios_.end());
259 const std::vector<ExperimentMultiplicity>& Multiplicities_) {
263 const std::vector<ExperimentMultiplicity>& Multiplicities_) {
265 Multiplicities.end(), Multiplicities_.begin(), Multiplicities_.end());
272 double chi2Ndf(
double T,
double muB);
virtual double CalculateShearViscosity()=0
ThermalModelFitParameters PerformFit()
void PrintMultiplicities()
void addSystematicError(double percent)
ThermalModelParameters GetThermalModelParameters()
virtual double CalculateHadronDensity()=0
std::vector< ExperimentRatio > Ratios
void SetParameterFitFlag(const std::string &name, bool toFit)
void SetParameter(const std::string &name, const FitParameter ¶m)
ExperimentMultiplicity(int PDGID=-211, double value=300., double error=20.)
ThermalModelFit(const ThermalModelFit &)
friend F32vec4 sqrt(const F32vec4 &a)
void SetQBConstraint(double QB)
double chi2Ndf(double T, double muB)
ThermalModelFitParameters Parameters
ThermalModelFit(ThermalModelBase *model_, double T=0.12, double muB=0.5, double muS=0., double muQ=0., double gammaS=1., double V=4000., double R=1.)
ExperimentRatio(int PDGID1_, int PDGID2_, double value1, double error1, double value2, double error2)
FitParameter GetParamater(const std::string &name) const
void SetFitFlag(const std::string &name, bool flag)
ExperimentMultiplicity mult
virtual void SetParameters(double T, double muB, double muS, double muQ, double gammaS, double V, double R)
virtual double CalculateEntropyDensity()=0
ThermalModelFitParametersExtended ExtendedParameters
virtual double CalculateChargeDensity()=0
void addSystematicError(double percent)
void SetRatios(const std::vector< ExperimentRatio > &Ratios_)
std::vector< ExperimentMultiplicity > Multiplicities
void AddMultiplicity(const ExperimentMultiplicity &Multiplicity_)
void AddMultiplicities(const std::vector< ExperimentMultiplicity > &Multiplicities_)
FittedQuantity(const ExperimentRatio &op)
void AddRatios(const std::vector< ExperimentRatio > &Ratios_)
ExperimentRatio(int PDGID1_=211, int PDGID2_=-211, double value_=1., double error_=0.1)
ThermalModelFitParametersExtended()
ThermalModelFitParameters(double T_=0.12, double muB_=0.5, double muS_=0.1, double muQ_=-0.01, double gammaS_=1., double V_=4000., double R_=1.)
virtual double CalculateBaryonDensity()=0
virtual double CalculatePressure()=0
void AddRatio(const ExperimentRatio &Ratio_)
std::vector< FittedQuantity > loadExpDataFromFile(const std::string &filename)
void SetParameter(const std::string &name, double val, double err, double xmin, double xmax)
FitParameter(std::string name_="", bool toFit_=true, double val=1., double err=0., double vmin=-2., double vmax=2.)
virtual double CalculateEnergyDensity()=0
ThermalModelFit & operator=(const ThermalModelFit &)
FittedQuantity(const ExperimentMultiplicity &op)
ThermalModelParameters Parameters
ThermalModelFitParametersExtended(ThermalModelBase *model)
void ClearMultiplicities()
void SetMultiplicities(const std::vector< ExperimentMultiplicity > &Multiplicities_)