Skip to content

Commit

Permalink
more docs
Browse files Browse the repository at this point in the history
  • Loading branch information
zingale committed Nov 21, 2024
1 parent eb5bafe commit 071d488
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 17 deletions.
24 changes: 13 additions & 11 deletions sphinx_docs/source/eos.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ an EOS module in case you want to build your own.
Available Equations of State
============================

.. index:: eos_t

The following equations of state are available in Microphysics.
Except where noted, each of these EOSs will provide the full
thermodynamic data (including all derivatives) in the ``eos_t``
Expand All @@ -22,20 +24,20 @@ equation of state:

.. math:: p = (\gamma - 1) \rho e.

:math:`\gamma` is specified by the runtime parameter ``eos_gamma``. For
:math:`\gamma` is specified by the runtime parameter ``eos.eos_gamma``. For
an ideal gas, this represents the ratio of specific heats. The gas is
assumed to be ideal, with the pressure given by

.. math:: p = \frac{\rho k T}{\mu m_u}

where :math:`k` is Boltzmann’s constant and :math:`\mu` is the mean molecular
weight, calculated from the composition, :math:`X_k`. This EOS assumes
the gas is either completely neutral (``assume_neutral = T``),
the gas is either completely neutral (``eos.assume_neutral = 1``),
giving:

.. math:: \mu^{-1} = \sum_k \frac{X_k}{A_k}

or completely ionized (``assume_neutral = F``), giving:
or completely ionized (``eos.assume_neutral = 0``), giving:

.. math:: \mu^{-1} = \sum_k \left ( 1 + Z_k \right ) \frac{X_k}{A_k}

Expand All @@ -58,21 +60,21 @@ only independent variable; there is no temperature dependence. The
user either selects from a set of predefined options reflecting
physical polytropes (e.g. a non-relativistic, fully degenerate
electron gas) or inputs their own values for :math:`K` and :math:`\gamma`
via ``polytrope_K`` and ``polytrope_gamma``.
via ``eos.polytrope_K`` and ``eos.polytrope_gamma``.

The runtime parameter ``polytrope_type`` selects the pre-defined
The runtime parameter ``eos.polytrope_type`` selects the pre-defined
polytropic relations. The options are:

- ``polytrope_type = 1``: sets :math:`\gamma = 5/3` and
- ``eos.polytrope_type = 1``: sets :math:`\gamma = 5/3` and

.. math:: K = \left ( \frac{3}{\pi} \right)^{2/3} \frac{h^2}{20 m_e m_p^{5/3}} \frac{1}{\mu_e^{5/3}}

where :math:`mu_e` is the mean molecular weight per electron, specified via ``polytrope_mu_e``
where :math:`mu_e` is the mean molecular weight per electron, specified via ``eos.polytrope_mu_e``

This is the form appropriate for a non-relativistic
fully-degenerate electron gas.

- ``polytrope_type = 2``: sets :math:`\gamma = 4/3` and
- ``eos.polytrope_type = 2``: sets :math:`\gamma = 4/3` and

.. math:: K = \left ( \frac{3}{\pi} \right)^{1/3} \frac{hc}{8 m_p^{4/3}} \frac{1}{\mu_e^{4/3}}

Expand Down Expand Up @@ -156,12 +158,12 @@ and :math:`p = \rho e (\gamma_\mathrm{effective} - 1)`.
This equation of state takes several runtime parameters that can set
the :math:`\gamma_i` for a specific species. The parameters are:

- ``eos_gamma_default``: the default :math:`\gamma` to apply for all
- ``eos.eos_gamma_default``: the default :math:`\gamma` to apply for all
species

- ``species_X_name`` and ``species_X_gamma``: set the
- ``eos.species_X_name`` and ``eos.species_X_gamma``: set the
:math:`\gamma_i` for the species whose name is given as
``species_X_name`` to the value provided by ``species_X_gamma``.
``eos.species_X_name`` to the value provided by ``eos.species_X_gamma``.
Here, ``X`` can be one of the letters: ``a``, ``b``, or
``c``, allowing us to specify custom :math:`\gamma_i` for up to three
different species.
Expand Down
14 changes: 8 additions & 6 deletions sphinx_docs/source/integrators.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,11 +17,13 @@ The equations we integrate to do a nuclear burn are:
\frac{de}{dt} = f(\rho,X_k,T)
:label: eq:enuc_integrate
Here, :math:`X_k` is the mass fraction of species :math:`k`, :math:`e` is the specific
nuclear energy created through reactions. Also needed are density :math:`\rho`,
temperature :math:`T`, and the specific heat. The function :math:`f` provides the energy release from reactions and can often be expressed in terms of the
instantaneous reaction terms, :math:`\dot{X}_k`. As noted in the previous
section, this is implemented in a network-specific manner.
Here, :math:`X_k` is the mass fraction of species :math:`k`, :math:`e`
is the specific nuclear energy created through reactions. Also needed
are density :math:`\rho`, temperature :math:`T`, and the specific
heat. The function :math:`f` provides the energy release from
reactions and can often be expressed in terms of the instantaneous
reaction terms, :math:`\dot{X}_k`. As noted in the previous section,
this is implemented in a network-specific manner.

In this system, :math:`e` is equal to the total specific internal
energy. This allows us to easily call the EOS during the burn to obtain the temperature.
Expand Down Expand Up @@ -223,7 +225,7 @@ flow is (for VODE):
and zero out the temperature and energy derivatives if we are not integrating
those quantities.

#. apply any boosting if ``react_boost`` > 0
#. apply any boosting if ``integrator.react_boost`` > 0


Jacobian implementation
Expand Down
1 change: 1 addition & 0 deletions sphinx_docs/source/sdc.rst
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ hydrodynamical sources),
and :math:`\Rb(\Uc)`
is the reaction source term.

.. index:: USE_TRUE_SDC, USE_SIMPLIFIED_SDC

.. note::

Expand Down

0 comments on commit 071d488

Please sign in to comment.