

Home Astronomy research Software instruments Stellar equation of states EOS with ionization EOS for supernovae Chemical potentials Stellar atmospheres Voigt Function Jeans escape Polytropic stars Cold white dwarfs Hotter white dwarfs Cold neutron stars Stellar opacities Neutrino energy loss rates Ephemeris routines FermiDirac functions Galactic chemical evolution Coating an ellipsoid Universal twobody problem Nuclear reaction networks Nuclear statistical equilibrium Laminar deflagrations CJ detonations ZND detonations Fitting to conic sections Unusual linear algebra Derivatives on uneven grids Pentadiagonal solver Quadratics, Cubics, Quartics Supernova light curves Exact Riemann solutions 1D PPM hydrodynamics Verification problems Plane  cube Intersection Phyllotaxis The pendulum Circular and elliptical 3 body MESA MESAWeb FLASH Zingale's software Brown's dStar GR1D code Iliadis' STARLIB database Herwig's NuGRID Meyer's NetNuc Presentations Illustrations Videos Bicycle adventures AAS Journals 2019 JINA Rprocess Workshop 2019 MESA Marketplace 2019 MESA Summer School 2019 AST111 Earned Admission Teaching materials Education and Public Outreach Contact: F.X.Timmes my one page vitae, full vitae, research statement, and teaching statement. 
Before using the six software instruments below, you should glance at the journal papers that describe them. The first law of thermodynamics $$ {\rm dE = T \ dS + {P\over \rho^2} \ d\rho} \label{eq1} \tag{1} $$ is an exact differential, which requires that the thermodynamic relations $$ \eqalignno { {\rm P} \ & = \ {\rm \rho^2 \ \dfrac{\partial E}{\partial \rho} \Biggm_T \ + \ T \ \dfrac{\partial P}{\partial T} \Biggm_{\rho} } & (2) \cr {\rm \dfrac{\partial E}{\partial T} \Biggm_{\rho}} \ & = \ {\rm T \ \dfrac{\partial S}{\partial T} \Biggm_{\rho} } & (3) \cr {\rm  \dfrac{\partial S}{\partial \rho} \Biggm_T } \ & = \ {\rm {1 \over \rho^2} \ \dfrac{\partial P}{\partial T} \Biggm_{\rho} } & (4) \cr } $$ be satisfied. An equation of state is thermodynamically consistent if all three of these identities are true. Thermodynamic inconsistency may manifest itself in the unphysical buildup (or decay) of the entropy (or temperature) during numerical simulations of what should be an adiabatic flow. When the temperature and density are the natural thermodynamic variables to use, the appropriate thermodynamic potential is the Helmholtz free energy $$ {\rm F = E  T \ S} \hskip 0.5in {\rm dF = S \ dT + {P \over \rho^2} \ d\rho} \label{eq5} $$ With the pressure defined as $$ {\rm P \ = \ \rho^2 \ \dfrac{\partial F}{\partial \rho} \Biggm_T } \label{eq6} \tag{6} $$ the first of the Maxwell relations (Eq. 2) is automatically satisfied, as substitution of Eq. (5) into Eq. (6) demonstrates. With the entropy defined as $$ {\rm S \ = \ \dfrac{\partial F}{\partial T} \Biggm_{\rho} } \label{eq7} \tag{7} $$ the second of the Maxwell relations (Eq. 3) is automatically satisfied, as substitution of Eq. (5) into Eq. (7) demonstrates. The requirement that the mixed partial derivatives commute $$ {\rm \dfrac{\partial^2 F}{\partial T \ \partial \rho} \ = \ \dfrac{\partial F}{\partial \rho \ \partial T} } \label{eq8} \tag{8} $$ ensures that the third of the thermodynamic identity (Eq. 4) is satisfied, as substitution of Eq. (5) into Eq. (8) shows. Consider any interpolating function for the Helmholtz free energy $F(\rho,{\rm T})$ which satisfies Eq. (8). Thermodynamic consistency is guaranteed as long as Eq. (6) is used first to evaluate the pressure, Eq. (7) is used second to evaluate the entropy, and finally Eq. (5) is used to evaluate the internal energy. In fact, this procedure is almost too robust! The interpolated values may be a horribly inaccurate but they will be thermodynamically consistent. Here then are bzip2 tarballs of six stellar interior equations of state:
Also see Josiah Schwab's python bindings for the Helmholtz EOS, pythonhelmholtz. The Helmholtz EOS implements the formalism above on a grid, executes the fastest (memory is faster than cpu), displays perfect thermodynamic consistency, and has a maximum error on the default grid of 10$^{6}$. Helmholtz is the stellar EOS of choice in the FLASH software instrument and the backbone of the EOS module in the MESA software instrument. The Helmholtz free energy data file provided spans 10$^{12}$ ≤ density (g cm$^{3}$) ≤ 10$^{15}$ and 10$^{3}$ ≤ temperature (K) ≤ 10$^{13}$ at 20 points per decade. The Nadyozhin EOS is the fastest of the analytic routines, has very good thermodynamic consistency, a maximum error of 10$^{5}$, and is avaliable in FLASH. The Timmes EOS is as slow as molasses during a North Dakota winter, but it computes the noninteracting electronpositron equation of state with no approximations, is exact to machine precision in IEEE double precision arithmetic, has excellent thermodynamic consistency, and serves as the reference point for comparisons to the other EOS routines. In fact, the Helmholtz free energy table used by the Helmholtz EOS is calculated from the Timmes EOS.



Please cite the relevant references if you publish a piece of work that use these codes, pieces of these codes, or modified versions of them. Offer coauthorship as appropriate. 
