27 #ifndef __EOS_MULTI_POLY_H_ 28 #define __EOS_MULTI_POLY_H_ 164 double logP1_i,
double* logRho_i,
double* decInc_i) ;
221 assert(n>=0 && n<
npeos) ;
233 assert(n>=0 && n<
npeos-1) ;
244 assert(n>=0 && n<
npeos) ;
250 assert(n>=0 && n<
npeos-1) ;
256 assert(n>=0 && n<
npeos-1) ;
268 virtual void sauve(FILE *)
const ;
271 virtual ostream&
operator>>(ostream &)
const ;
virtual ~Eos_multi_poly()
Destructor.
virtual double der_press_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
virtual bool operator==(const Eos &) const
Read/write kappa.
double * kappa
Array (size: npeos) of pressure coefficient [unit: ], where and .
Equation of state base class.
virtual double ener_ent_p(double ent, const Param *par=0x0) const
Computes the total energy density from the log-enthalpy.
const int & get_npeos() const
Returns the number of polytropes npeos.
virtual double der_press_nbar_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
void operator=(const Eos_multi_poly &)
Assignment to another Eos_multi_poly.
Eos_multi_poly(int npoly, double *gamma_i, double kappa0_i, double logP1_i, double *logRho_i, double *decInc_i)
Standard constructor (sets m0 to 1).
const double & get_logRho(int n) const
Returns the exponent of fiducial densities.
double kappa0
Pressure coefficient for the crust [unit: ].
const double & get_kappa0() const
Returns the pressure coefficient for the crust.
double * gamma
Array (size: npeos) of adiabatic index .
virtual double der_ener_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.
double * entCrit
Array (size npeos - 1) of the critical enthalpy at which the polytropic EOS changes its index and con...
static Eos * eos_from_file(FILE *)
Construction of an EOS from a binary file.
virtual double nbar_ent_p(double ent, const Param *par=0x0) const
Computes the baryon density from the log-enthalpy.
virtual double csound_square_ent_p(double, const Param *) const
Computes the sound speed squared from the enthapy with extra parameters (virtual function implemente...
double logP1
Exponent of the pressure at the fiducial density .
double * nbCrit
Array (size npeos - 1) of the number density at which the polytropic EOS changes its index and consta...
const double & get_logP1() const
Returns the exponent of the pressure at the fiducial density.
const double & get_kappa(int n) const
Returns the pressure coefficient [unit: ], where and .
const double & get_nbCrit(int n) const
Returns the critical number density.
double * mu0
Array (size: npeos) of the relativistic chemical potential at zero pressure [unit: ...
Base class for a multiple polytropic equation of state.
virtual ostream & operator>>(ostream &) const
Operator >>
double * decInc
Array (size npeos - 1) of the percentage which detemines the terminating enthalpy for lower density a...
virtual bool operator!=(const Eos &) const
Comparison operator (difference)
int npeos
Number of polytropic equations of state.
void set_auxiliary()
Computes the auxiliary quantities.
void c_est_pas_fait(const char *)
Helpful function to say something is not implemented yet.
double m0
Individual particule mass [unit: ].
virtual void sauve(FILE *) const
Save in a file.
virtual double press_ent_p(double ent, const Param *par=0x0) const
Computes the pressure from the log-enthalpy.
double * logRho
Array (size: npeos - 1) of the exponent of fiducial densities.
const double & get_gamma(int n) const
Returns the adiabatic index .
virtual int identify() const
Returns a number to identify the sub-classe of Eos the object belongs to.
const double & get_entCrit(int n) const
Returns the critical enthalpy.
virtual double der_nbar_ent_p(double ent, const Param *par=0x0) const
Computes the logarithmic derivative from the log-enthalpy.