Update: Add Piecewise Polytrope EoS Support to IllinoisGRMHD, Improved TOV Solver?

Create issue
Issue #2300 new
Zach Etienne created an issue

Piecewise-Polytrope Equation of State Support in IllinoisGRMHD

Leonardo (Leo) Werneck (a student currently working in my research group) recently documented much of IllinoisGRMHD in Jupyter notebooks and worked with me to add piecewise-polytrope equation of state support to IllinoisGRMHD. The code is open-source and available here:

https://github.com/zachetienne/nrpytutorial/tree/master/IllinoisGRMHD/doc

In addition, the Jupyter notebooks may be browsed via nbviewer:

https://nbviewer.jupyter.org/github/zachetienne/nrpytutorial/tree/master/IllinoisGRMHD/doc/

The updated code agrees to roundoff error with the original IllinoisGRMHD when a single polytrope is chosen, and the central density vs time when evolving piecewise-polytrope TOV stars (we tried the APR4 piecewise-polytrope as described in Read et al.) converges to zero density drift a bit above 2nd order with increased resolution, just like in the single-polytrope case. Further, we have successfully evolved SLy piecewise polytrope BNS initial data through a couple orbits (so far).

One can generate the new piecewise-polytrope enabled IllinoisGRMHD thorn family by cloning the above github repo and running the generate_illinoisgrmhd_from_ipynb_files.sh script in that directory. The IllinoisGRMHD/test directory contains some example parameter files.

Piecewise-Polytrope TOV Solver?

To perform the above piecewise-polytrope TOV tests, we needed a simple TOV solver with this capability (TOVSolver only supports single polytropes). To address this problem, Leo extended a standalone, numpy/Python-based piecewise-polytrope TOV solver that Phil Chang and I wrote, which can now build piecewise-polytropes (PP) from a large dictionary of PP EoSs. Most notably, the TOV system of ODEs remain in geometrized units, which makes them easier to read, and he wrote an EoS converter to rescale the CGS units to geometrized units where density = 1e15g/cm^3 = 1.0. The TOV solution file can be read into the Toolkit via the new NRPyPlusTOVID thorn that we wrote.

We would be happy to contribute this solver & thorn to the Toolkit as well – more recently Leo wrote & validated a C version of the TOV solver so we wouldn’t even need the TOV solution data file from the Python solver.

Comments (0)

  1. Log in to comment