8#ifndef FREEZEOUTMODELS_H
9#define FREEZEOUTMODELS_H
37 virtual double Rfunc(
double zeta)
const {
return zeta; }
42 virtual double dRdZeta(
double zeta)
const {
return (
Rfunc(zeta + dzeta) -
Rfunc(zeta)) / dzeta; }
47 virtual double taufunc(
double zeta)
const {
return 1.; }
57 virtual double etaperp(
double zeta)
const {
return 0.; }
105 virtual double TernarySearchForIntegrandMaximum(
double zetaMin = 0.,
double zetaMax = 1.)
const;
107 static const double dzeta;
109 bool m_ProbabilityMaximumComputed;
110 double m_ProbabilityMaximum;
137 virtual double Rfunc(
double zeta)
const {
return zeta * m_R; }
139 virtual double dRdZeta(
double zeta)
const {
return m_R; }
141 virtual double taufunc(
double zeta)
const {
return m_tau; }
143 virtual double dtaudZeta(
double zeta)
const {
return 0.; }
145 virtual double etaperp(
double zeta)
const {
return atanh(m_BetaS * pow(zeta, m_n)); }
148 virtual double sinhetaperp(
double zeta)
const {
return m_BetaS * pow(zeta, m_n) / sqrt(1. - m_BetaS * m_BetaS * pow(zeta, 2. * m_n)); }
149 virtual double coshetaperp(
double zeta)
const {
return 1. / sqrt(1. - m_BetaS * m_BetaS * pow(zeta, 2. * m_n)); }
150 virtual double tanhetaperp(
double zeta)
const {
return m_BetaS * pow(zeta, m_n); }
186 virtual double Rfunc(
double zeta)
const {
return zeta * Rmax(); }
188 virtual double dRdZeta(
double zeta)
const {
return Rmax(); }
194 virtual double etaperp(
double zeta)
const {
return asinh(zeta * m_RoverTauH); }
197 virtual double sinhetaperp(
double zeta)
const {
return zeta * m_RoverTauH; }
198 virtual double coshetaperp(
double zeta)
const {
return sqrt(1. + zeta * zeta * m_RoverTauH * m_RoverTauH); }
214 double Rmax()
const {
return m_RoverTauH * m_tauH; }
216 double m_RoverTauH, m_tauH;
virtual ~BoostInvariantFreezeoutParametrization()
virtual double sinhetaperp(double zeta) const
virtual double coshetaperp(double zeta) const
virtual double tanhetaperp(double zeta) const
virtual bool InverseZetaDistributionIsExplicit() const
Samples zeta for use in Monte Carlo event generator.
virtual double taufunc(double zeta) const
Proper time \tau vs \zeta.
virtual double dRdZeta(double zeta) const
dR/d\zeta
virtual double InverseZetaDistribution(double xi) const
Inverse function of \zeta variable distribution used in random number generation.
virtual double etaperp(double zeta) const
Transverse flow rapidity as a function of \zeta.
virtual double ProbabilityMaximum()
BoostInvariantFreezeoutParametrization()
virtual double ComputeProbabilitydMaximum()
Computes and sets the maximum of the \zeta probability density.
virtual double ZetaProbability(double zeta) const
Proportional to probability of having given \zeta value.
virtual double dtaudZeta(double zeta) const
d\tau/d\zeta
virtual double Rfunc(double zeta) const
Transverse radius vs \zeta.
virtual double Rfunc(double zeta) const
Transverse radius vs \zeta.
virtual double ZetaProbability(double zeta) const
Proportional to probability of having given \zeta value.
virtual ~CracowFreezeoutParametrization()
virtual bool InverseZetaDistributionIsExplicit() const
Samples zeta for use in Monte Carlo event generator.
virtual double ComputeProbabilitydMaximum()
Computes and sets the maximum of the \zeta probability density.
virtual double InverseZetaDistribution(double xi) const
Inverse function of \zeta variable distribution used in random number generation.
virtual double coshetaperp(double zeta) const
virtual double taufunc(double zeta) const
Proper time \tau vs \zeta.
virtual double sinhetaperp(double zeta) const
virtual double dtaudZeta(double zeta) const
d\tau/d\zeta
CracowFreezeoutParametrization(double RoverTauH=1., double tauH=10.)
virtual double etaperp(double zeta) const
Transverse flow rapidity as a function of \zeta.
virtual double dRdZeta(double zeta) const
dR/d\zeta
virtual double taufunc(double zeta) const
Proper time \tau vs \zeta.
virtual double tanhetaperp(double zeta) const
virtual ~CylindricalBlastWaveParametrization()
CylindricalBlastWaveParametrization(double betaSurface=0.5, double nPower=1., double tau=10., double Rmax=6.)
virtual double etaperp(double zeta) const
Transverse flow rapidity as a function of \zeta.
virtual double ComputeProbabilitydMaximum()
Computes and sets the maximum of the \zeta probability density.
virtual double Rfunc(double zeta) const
Transverse radius vs \zeta.
virtual double dtaudZeta(double zeta) const
d\tau/d\zeta
virtual double dRdZeta(double zeta) const
dR/d\zeta
virtual double sinhetaperp(double zeta) const
virtual double ZetaProbability(double zeta) const
Proportional to probability of having given \zeta value.
virtual double coshetaperp(double zeta) const
The main namespace where all classes and functions of the Thermal-FIST library reside.