Class eos_had_rmf_hyp (o2scl)

O2scl_eos : Class List

class o2scl::eos_had_rmf_hyp : public o2scl::eos_had_rmf

Relativistic mean field theory EOS with hyperons.

Based on Glendenning91ro, but generalized for higher-order couplings as in eos_had_rmf .

Todo:

The couplings in the test code match the table but the maximum masses appear much smaller than GM91. I need to check that muons are added correctly, and it might be good to compare with a different reference. This also might be due to a different crust EOS.

Todo:

The interpretation of the calc_e() function is a bit unclear, so I need to more clearly figure out what that function ought to do. I don’t think it’s really used at the moment.

Hyperon objects

fermion def_lambda

The default Lambda hyperon.

fermion def_sigma_p

The default Sigma plus hyperon.

fermion def_sigma_z

The default Sigma zero hyperon.

fermion def_sigma_m

The default Sigma minus hyperon.

fermion def_cascade_z

The default Xi zero hyperon.

fermion def_cascade_m

The default Xi minus hyperon.

Hyperon-meson couplings

double xs
double xw
double xr
bool inc_cascade

If true, include cascade hyperons (default true)

int calc_eq_hyp_p(fermion &ne, fermion &pr, fermion &lam, fermion &sigp, fermion &sigz, fermion &sigm, fermion &casz, fermion &casm, double sig, double ome, double lrho, double &f1, double &f2, double &f3, thermo &lth)

Equation of state and meson field equations as a function of chemical potentials.

void calc_xs(double lam_be)

Compute xs assuming a fixed value of the \( \Lambda \) binding energy in nuclear matter in \( \mathrm{fm}^{-1} \).

void calc_xw(double lam_be)

Compute xs assuming a fixed value of the \( \Lambda \) binding energy in nuclear matter in \( \mathrm{fm}^{-1} \).

int calc_hyp_e(fermion &ne, fermion &pr, fermion &lam, fermion &sigp, fermion &sigz, fermion &sigm, fermion &casz, fermion &casm, thermo &lth)

Equation of state as a function of density.

Initial guesses for the chemical potentials are taken from the user-given values. Initial guesses for the fields can be set by set_fields(), or default values will be used. After the call to calc_e(), the final values of the fields can be accessed through get_fields().

void set_hyp(fermion &lam, fermion &sigp, fermion &sigz, fermion &sigm, fermion &casz, fermion &casm)

Set the hyperon objects.

int beta_eq_T0(ubvector &nB_grid, ubvector &guess, fermion &e, bool include_muons, fermion &mu, fermion_rel &frel, std::shared_ptr<table_units<>> results)

Compute the EOS in beta-equilibrium at zero temperature.

Public Functions

eos_had_rmf_hyp()

Protected Functions

int calc_e_solve_fun(size_t nv, const ubvector &ex, ubvector &ey)

The function for calc_e()

int solve_beta_eq_T0(size_t nv, const ubvector &x, ubvector &y, const double &nB, fermion &e, bool include_muons, fermion &mu, fermion_rel &frel)

Equation for solving for beta-equilibrium at T=0.

Protected Attributes

fermion *lambda

The neutron object.

fermion *sigma_p

The proton object.

fermion *sigma_z

The neutron object.

fermion *sigma_m

The proton object.

fermion *cascade_z

The neutron object.

fermion *cascade_m

The proton object.