91 #include "utilitaires.h" 102 double eps_fit_i,
double rho0_b60_i) :
103 Eos(
"Strange matter EOS from Zdunik (2000)"),
108 rho0_b60(rho0_b60_i) {
119 n0_b60(eos_i.n0_b60),
122 eps_fit(eos_i.eps_fit),
123 rho0_b60(eos_i.rho0_b60) {
152 fich >>
n0_b60 ; fich.getline(blabla, 80) ;
153 fich >>
b60 ; fich.getline(blabla, 80) ;
154 fich >>
ent0 ; fich.getline(blabla, 80) ;
155 fich >>
eps_fit ; fich.getline(blabla, 80) ;
156 fich >>
rho0_b60 ; fich.getline(blabla, 80) ;
219 cout <<
"The second EOS is not of type Eos_strange !" << endl ;
228 <<
"The two Eos_strange have different n0_b60 : " <<
n0_b60 <<
" <-> " 235 <<
"The two Eos_strange have different b60 : " <<
b60 <<
" <-> " 242 <<
"The two Eos_strange have different ent0 : " <<
ent0 <<
" <-> " 243 << eos.
ent0 << endl ;
249 <<
"The two Eos_strange have different eps_fit : " <<
eps_fit 250 <<
" <-> " << eos.
eps_fit << endl ;
256 <<
"The two Eos_strange have different rho0_b60 : " <<
rho0_b60 257 <<
" <-> " << eos.
rho0_b60 << endl ;
293 "EOS of class Eos_strange (Strange matter EOS from Zdunik (2000)) : " 295 ost <<
" Baryon density at zero pressure : " <<
n0_b60 296 <<
" * B_{60}^{3/4}" << endl ;
297 ost <<
" Bag constant B : " <<
b60 <<
" * 60 MeV/fm^3"<< endl ;
299 " Log-enthalpy threshold for setting the energy density to non-zero: " 300 << endl <<
" " <<
ent0 << endl ;
301 ost <<
" Fitting parameter eps_fit : " <<
eps_fit << endl ;
302 ost <<
" Energy density at zero pressure : " <<
rho0_b60 303 <<
" * B_{60} MeV/fm^3" << endl ;
321 return n0 *
exp(
double(3) * ent / (
double(1) +
eps_fit)) ;
339 return rho0 + double(3) * pp / (double(1) +
eps_fit) ;
371 return double(3) * ent / ( double(1) +
eps_fit ) ;
386 double xx =
fach * ent ;
388 return xx / ( double(1) +
389 ( double(1) +
eps_fit ) /
double(3) *
exp(-xx) ) ;
404 double xx =
fach * ent ;
406 return xx / ( double(1) -
exp(-xx) ) ;
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the log-enthalpy.
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy.
Cmp exp(const Cmp &)
Exponential.
void operator=(const Eos_strange &)
Assignment to another Eos_strange.
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
Standard units of space, time and mass.
Equation of state base class.
virtual int identify() const =0
Returns a number to identify the sub-classe of Eos the object belongs to.
virtual void sauve(FILE *) const
Save in a file.
virtual bool operator==(const Eos &) const
Comparison operator (egality)
double rho0_b60
Energy density at zero pressure divided by .
double n0_b60
Baryon density at zero pressure divided by .
virtual void sauve(FILE *) const
Save in a file.
double ent0
Log-enthalpy threshold for setting the energy density to a non zero value (should be negative)...
Strange matter EOS (MIT Bag model).
Eos_strange(double n0_b60_i, double b60_i, double ent0_i, double eps_fit_i, double rho0_b60_i)
Standard constructor.
double rho0
Energy density at zero pressure.
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
int fwrite_be(const int *aa, int size, int nb, FILE *fich)
Writes integer(s) into a binary file according to the big endian convention.
Cmp pow(const Cmp &, int)
Power .
virtual bool operator!=(const Eos &) const
Comparison operator (difference)
double n0
Baryon density at zero pressure.
int fread_be(int *aa, int size, int nb, FILE *fich)
Reads integer(s) from a binary file according to the big endian convention.
virtual ostream & operator>>(ostream &) const
Operator >>
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the log-enthalpy.
double eps_fit
Fitting parameter related to the square of sound velocity by .
void set_name(const char *name_i)
Sets the EOS name.
void set_auxiliary()
Computes the auxiliary quantities n0 , rh0 , b34 and fach from the values of the other parameters...
double b60
Bag constant [unit: ].
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
virtual ~Eos_strange()
Destructor.