15 const double BoostInvariantFreezeoutParametrization::dzeta = 0.001;
24 if (!m_ProbabilityMaximumComputed) {
26 m_ProbabilityMaximumComputed =
true;
28 return m_ProbabilityMaximum;
34 m_ProbabilityMaximum = TernarySearchForIntegrandMaximum(0., 1.);
37 double tmax = 0., tzetamax = 0.;
39 for (
double tzeta = 0.; tzeta <= 1. + 1.e9; tzeta += dzeta) {
47 if (tmax > m_ProbabilityMaximum) {
48 m_ProbabilityMaximum = TernarySearchForIntegrandMaximum(tzetamax - dzeta, tzetamax + dzeta);
51 return m_ProbabilityMaximum;
54 double BoostInvariantFreezeoutParametrization::TernarySearchForIntegrandMaximum(
double zetaMin,
double zetaMax)
const 57 double l = zetaMin, r = zetaMax;
64 double m1 = l + (r - l) / 3.;
65 double m2 = r - (r - l) / 3.;
68 while (fabs(m2 - m1) > eps && iter < MAXITERS) {
75 m1 = l + (r - l) / 3.;
76 m2 = r - (r - l) / 3.;
89 if (tau <= 0. || Rmax <= 0. || m_n < 0. || (m_BetaS < 0. || m_BetaS > 1.)) {
90 std::cerr <<
"**ERROR** CylindricalBlastWaveParametrization::CylindricalBlastWaveParametrization: invalid parameter values!" << std::endl;
97 return m_R * zeta * m_tau *
coshetaperp(zeta) * m_R;
102 m_RoverTauH(RoverTauH),
105 if (tauH <= 0. || RoverTauH <= 0.) {
106 std::cerr <<
"**ERROR** CracowFreezeoutParametrization::CracowFreezeoutParametrization: invalid parameter values!" << std::endl;
113 return Rmax() * zeta * m_tauH * Rmax();
virtual double taufunc(double zeta) const
Proper time vs .
virtual double coshetaperp(double zeta) const
CylindricalBlastWaveParametrization(double betaSurface=0.5, double nPower=1., double tau=10., double Rmax=6.)
virtual double ZetaProbability(double zeta) const
Proportional to probability of having given value.
virtual double ZetaProbability(double zeta) const
Proportional to probability of having given value.
virtual double dtaudZeta(double zeta) const
d/d
virtual double ProbabilityMaximum()
virtual double ComputeProbabilitydMaximum()
Computes and sets the maximum of the probability density.
CracowFreezeoutParametrization(double RoverTauH=1., double tauH=10.)
virtual double ZetaProbability(double zeta) const
Proportional to probability of having given value.
virtual double Rfunc(double zeta) const
Transverse radius vs .
virtual double dRdZeta(double zeta) const
dR/d
Base class implementing a longitudinally boost-invariant azimuthally symmetric freeze-out parametriza...
virtual double sinhetaperp(double zeta) const
virtual double coshetaperp(double zeta) const
The main namespace where all classes and functions of the Thermal-FIST library reside.