Class eos_had_temp_base (o2scl)¶
-
class eos_had_temp_base : public o2scl::eos_had_base¶
A finite temperature hadronic EOS [abstract base].
Subclassed by o2scl::eos_had_temp_eden_base, o2scl::eos_had_temp_pres_base
Computing finite-temperature integrals
-
fermion_rel def_fet¶
Default fermion thermodynamics object.
Basic usage
-
virtual int calc_e(fermion &n, fermion &p, thermo &th) = 0¶
Equation of state as a function of density.
-
virtual int calc_temp_e(fermion &n, fermion &p, double T, thermo &th) = 0¶
Equation of state as a function of densities at finite temperature.
-
virtual int calc_p(fermion &n, fermion &p, thermo &th) = 0¶
Equation of state as a function of the chemical potentials.
-
virtual int calc_temp_p(fermion &n, fermion &p, double T, thermo &th) = 0¶
Equation of state as a function of the chemical potentials at finite temperature.
Liquid-gas transition functions
-
virtual int calc_liqgas_dens_temp_e(fermion &n1, fermion &p1, fermion &n2, fermion &p2, double T, thermo &th1, thermo &th2)¶
Compute liquid-gas phase transition densities using eos_had_temp_base::calc_temp_e() .
At fixed baryon number density for
n1
, this determines the baryon number densities forp1
,n2
, andp2
which give chemical and mechanical equilibrium at a fixed temperatureT
. The thermodynamic quantities assuming bulk matter for each set is stored inth1
andth2
.
-
virtual int calc_liqgas_temp_e(fermion &n1, fermion &p1, fermion &n2, fermion &p2, double nB, double Ye, double T, thermo &th1, thermo &th2, double &chi)¶
Compute the liquid-gas phase transition using eos_had_temp_base::calc_temp_e() .
At fixed baryon number density,
nB
, fixed electron fraction,Ye
, and fixed temperature,T
, this function determines the baryon number densities forn1
,p1
,n2
, andp2
which give chemical and mechanical equilibrium. The thermodynamic quantities assuming bulk matter for each set is stored inth1
andth2
, and the volume fraction of phase 1 is stored inchi
.
-
virtual int calc_liqgas_beta_temp_e(fermion &n1, fermion &p1, fermion &n2, fermion &p2, double nB, double T, thermo &th1, thermo &th2, double &Ye, double &chi)¶
Compute the liquid-gas phase transition in beta-equilibrium using eos_had_temp_base::calc_temp_e() .
At fixed baryon number density,
nB
, and fixed temperature,T
, this function determines the baryon number densities forn1
,p1
,n2
, andp2
which give chemical and mechanical equilibrium assuming beta-equilibrium with electrons. The thermodynamic quantities assuming bulk matter for each set is stored inth1
andth2
, the electron fraction is stored inYe
, and the volume fraction of phase 1 is stored inchi
.
-
virtual double fesym_T(double nb, double T, double delta = 0.0)¶
Compute the symmetry energy at finite temperature.
-
virtual double fsyment_T(double nb, double T, double delta = 0.0)¶
Compute the symmetry entropy at finite temperature.
Helper functions
-
virtual double calc_temp_mun_e(double nn, double np, double T)¶
Neutron chemical potential as a function of the densities.
-
virtual double calc_temp_mup_e(double nn, double np, double T)¶
Proton chemical potential as a function of the densities.
-
virtual double calc_temp_nn_p(double mun, double mup, double T)¶
Neutron density as a function of the chemical potentials.
-
virtual double calc_temp_np_p(double mun, double mup, double T)¶
Proton density as a function of the chemical potentials.
-
double calc_fr(double nn, double np, double T)¶
Compute the free energy as a function of the temperature and the densities.
Susceptibilities
-
virtual void f_number_suscept_T(double mun, double mup, double T, double &dPdnn, double &dPdnp, double &dPdpp)¶
Compute the number susceptibilities as a function of the chemical potentials, \( \partial^2 P / \partial \mu_i \mu_j \) at a fixed temperature.
-
virtual void f_inv_number_suscept_T(double mun, double mup, double T, double &dednn, double &dednp, double &dedpp)¶
Compute the ‘inverse’ number susceptibilities as a function of the densities, \( \partial^2 \varepsilon / \partial n_i n_j \) at a fixed temperature.
Consistency check
-
void check_en(fermion &n, fermion &p, double T, thermo &th, double &en_deriv, double &en_err)¶
Check the entropy by computing the derivative numerically.
-
void check_mu_T(fermion &n, fermion &p, double T, thermo &th, double &mun_deriv, double &mup_deriv, double &mun_err, double &mup_err)¶
Check the chemical potentials at finite temperature by computing the derivative numerically.
Protected Functions
-
int nuc_matter_temp_e(size_t nv, const ubvector &x, ubvector &y, double nn0, double np0, double T)¶
Solve for nuclear matter at finite temperature given density.
-
int nuc_matter_temp_p(size_t nv, const ubvector &x, ubvector &y, double mun0, double mup0, double T)¶
Solve for nuclear matter at finite temperature given mu.
-
int liqgas_dens_solve(size_t nv, const ubvector &x, ubvector &y, fermion &n1, fermion &p1, fermion &n2, fermion &p2, double T, thermo &th1, thermo &th2)¶
Solve for the liquid gas phase transition as a function of the densities.
-
int liqgas_solve(size_t nv, const ubvector &x, ubvector &y, fermion &n1, fermion &p1, fermion &n2, fermion &p2, double nB0, double Ye0, double T, thermo &th1, thermo &th2)¶
Solve for the liquid-gas phase transition at fixed baryon density and electron fraction.
-
int liqgas_beta_solve(size_t nv, const ubvector &x, ubvector &y, fermion &n1, fermion &p1, fermion &n2, fermion &p2, double nB0, double T, thermo &th1, thermo &th2, fermion &e)¶
Solve for the liquid-gas phase transition in beta-equilibrium.
-
double calc_entropy_delta(double delta, double nb, double T)¶
Compute the entropy.
-
double calc_dmu_delta_T(double delta, double nb, double T)¶
Compute the difference between the neutron and proton chemical potentials.
-
fermion_rel def_fet¶