Four implementations of the (Eos) unit are available in the
current release of FLASH4: Gamma, which implements a perfect-gas equation of state;
Gamma/RHD,
which implements a perfect-gas equation taking relativistic effects into account;
Multigamma,
which implements a perfect-gas equation of state
with multiple fluids, each of which can have its own adiabatic index
(); and Helmholtz,
which uses a fast Helmholtz free-energy table interpolation to handle
degenerate/relativistic electrons/positrons and includes
radiation pressure and ions (via the perfect gas approximation).
As described in previous sections, FLASH evolves the Euler equations for compressible, inviscid flow. This system of equations must be closed by an additional equation that provides a relation between the thermodynamic quantities of the gas. This relationship is known as the equation of state for the material, and its structure and properties depend on the composition of the gas.
It is common to call an equation of state (henceforth EOS) routine more
than times during a two-dimensional simulation and more than
times during the course of a three-dimensional simulation of
stellar phenomena. Thus, it is very desirable to have an EOS
that is as efficient as possible, yet accurately represents the
relevant physics. While FLASH is capable of using any
general equation of state, we discuss here the
three equation of state routines that are supplied: an ideal-gas or gamma-law
EOS, an EOS for a fluid composed of multiple gamma-law gases, and a
tabular Helmholtz free energy EOS appropriate for stellar
interiors. The two gamma-law EOSs consist of simple analytic expressions
that make for a very fast EOS routine both in the case of a single gas
or for a mixture of gases. The Helmholtz EOS includes much more
physics and relies on a table look-up scheme for performance.