A base class for the supernova EOSs [abstract].
More...
#include <eos_sn.h>
This class is experimental.
See also the general description in the Finite-temperature Equation of State Tables section of the User's guide.
- Idea for Future:
Add option to rescale energies and chemical potentials to different masses.
Create a o2scl::table object, possibly using tensor_grid::vector_slice.
Show how matrix_slice and vector_slice can be used with this object.
Add option to load and store a separate lepton/photon EOS
Add pions?
Create a standard output format? Output to stellarcollapse.org HDF5 format?
Definition at line 81 of file eos_sn.h.
|
void | check_composition (double &max1, double &max2) |
| Check the table composition entries.
|
|
void | check_free_energy (double &avg) |
| Test the free energy and store results in tm . More...
|
|
virtual void | beta_eq_sfixed (double nB, double entr, double &Ye, double &T) |
| Compute properties of matter in beta equilibrium at fixed entropy per baryon. More...
|
|
virtual void | beta_eq_Tfixed (double nB, double T, double &Ye) |
| Compute the electron fraction for beta-equilibrium at fixed density and temperature temperature. More...
|
|
bool | is_loaded () |
| Return true if data has been loaded.
|
|
void | free () |
| Free allocated memory.
|
|
bool | data_with_leptons () |
| Return true if data with lepton information has been loaded.
|
|
bool | data_baryons_only () |
| Return true if data with only baryon information has been loaded.
|
|
virtual void | load (std::string fname) |
|
virtual void | output (std::string fname) |
|
|
void | set_interp_type (size_t interp_type) |
| Set the interpolation type of all the o2scl::tensor_grid3 objects to type interp_type . More...
|
|
|
|
void | alloc () |
| Allocate memory.
|
|
|
convert_units & | cu |
| Unit conversion object (set automatically in constructor)
|
|
bool | loaded |
| If true, a EOS table was successfully loaded (default false)
|
|
bool | with_leptons_loaded |
| True if thermodynamics with leptons has been loaded.
|
|
bool | baryons_only_loaded |
| True if baryon-only thermodynamics has been loaded.
|
|
|
size_t | n_nB |
| Size of baryon density grid.
|
|
size_t | n_Ye |
| Size of electron fraction grid.
|
|
size_t | n_T |
| Size of temperature grid.
|
|
std::vector< double > | nB_grid |
| Baryon density grid (in )
|
|
std::vector< double > | Ye_grid |
| Electron fraction grid.
|
|
std::vector< double > | T_grid |
| Temperature grid (in )
|
|
size_t | n_oth |
| Number of additional data sets.
|
|
static const size_t | n_base =16 |
| Number of base data sets.
|
|
◆ beta_eq_sfixed()
virtual void o2scl::eos_sn_base::beta_eq_sfixed |
( |
double |
nB, |
|
|
double |
entr, |
|
|
double & |
Ye, |
|
|
double & |
T |
|
) |
| |
|
virtual |
This function just does a simple hard-coded linear interpolation.
◆ beta_eq_Tfixed()
virtual void o2scl::eos_sn_base::beta_eq_Tfixed |
( |
double |
nB, |
|
|
double |
T, |
|
|
double & |
Ye |
|
) |
| |
|
virtual |
This function just uses linear interpolation to interpolate in baryon density and temperature and the uses a quadratic to determine the minimum of the free energy.
If data_with_leptons() is false
, then compute_eg() is used to compute the leptons.
◆ check_eg()
virtual double o2scl::eos_sn_base::check_eg |
( |
| ) |
|
|
virtual |
This checks that the electron and photon thermodynamics generated by O2scl is consistent with the data in E
, Eint
, F
, Fint
, P
, Pint
, S
, and Sint
.
Reimplemented in o2scl::eos_sn_ls.
◆ check_free_energy()
void o2scl::eos_sn_base::check_free_energy |
( |
double & |
avg | ) |
|
◆ compute_eg()
virtual void o2scl::eos_sn_base::compute_eg |
( |
| ) |
|
|
virtual |
If baryons_only_loaded is true, this function computes the data for E, P, S,
and F
by adding electrons and photons to the baryon contributions stored in Eint, Pint, Sint,
and Fint
. Otherwise, this function computes Eint, Pint, Sint,
and Fint
by subtracting electron and photon contributions from E, P, S,
and F
.
The electron contribution to the internal energy and free energy computed by this function includes the electron rest mass.
◆ set_interp_type()
void o2scl::eos_sn_base::set_interp_type |
( |
size_t |
interp_type | ) |
|
- Note
- This is used by the constructor to set all tensors to linear interpolation.
By default, this energy is relative to
where
is stored in m_neut and
is stored in m_prot .
Definition at line 146 of file eos_sn.h.
◆ Eint
By default, this energy is relative to
where
is stored in m_neut and
is stored in m_prot .
Definition at line 157 of file eos_sn.h.
By default, this energy is relative to
where
is stored in m_neut and
is stored in m_prot .
Definition at line 124 of file eos_sn.h.
◆ Fint
By default, this energy is relative to
where
is stored in m_neut and
is stored in m_prot .
Definition at line 135 of file eos_sn.h.
◆ mun
By default this is relative to the neutron mass in m_neut .
Definition at line 173 of file eos_sn.h.
◆ mup
By default this is relative to the proton mass in m_prot .
Definition at line 179 of file eos_sn.h.
The documentation for this class was generated from the following file:
- /home/awsteiner/wcs/o2scl/src/eos/eos_sn.h