This module is currently under development
IllinoisGRMHD
solves the equations of General Relativistic MagnetoHydroDynamics (GRMHD) using a high-resolution shock capturing scheme. It is a rewrite of the Illinois Numerical Relativity (ILNR) group's GRMHD code, and generates results that agree to roundoff error with that original code. Its feature set coincides with the features of the ILNR group's recent code (ca. 2009-2014), which was used in their modeling of the following systems:
IllinoisGRMHD
is particularly good at modeling GRMHD flows into black holes without the need for excision. Its HARM-based conservative-to-primitive solver has also been modified to check the physicality of conservative variables prior to primitive inversion, and move them into the physical range if they become unphysical.
Currently IllinoisGRMHD consists of
IllinoisGRMHD
evolves the vector potential Aμ (on staggered grids) instead of the magnetic fields (Bi) directly, to guarantee that the magnetic fields will remain divergenceless even at AMR boundaries. On uniform resolution grids, this vector potential formulation produces results equivalent to those generated using the standard, staggered flux-CT scheme. This scheme is based on that of Del Zanna et al. (2003).
The basic equations solved by IllinoisGRMHD
are
where gμν is the ADM 4-metric, Rμν and R are the Ricci tensor and scalar, respectively, constructed from gμν, ∇μ is the covariant derivative compatible with gμν, g≡det(gμν), Fμν is the Faraday tensor and F∗μν=12ϵμνρσFμν its dual (ϵμνρσ is the Levi-Civita symbol).
The final equation that must be solved is the equation of state (EOS) for the matter. Currently IllinoisGRMHD
implements a hybrid EOS of the form
where P is the pressure, ϵ the specific internal energy (the subscript cold indicate the cold components of these quantities), and Γth is a constant parameter which determines the conversion efficiency of kinetic to thermal energy at shocks.
In this step we will write down the equations used by IllinoisGRMHD
in the form they are implemented. To give an example, the GRMHD equations are written in the conservative form
where C={ρ⋆,˜τ,˜Si,˜Bi} is the vector of conservative variables, F is the flux vector, and S the vector of source terms (explict expressions for the components of C, F, and S can be found below).
IllinoisGRMHD
solves Einstein's field equations (with GN=1=c) in the presence of matter sources,
where Gμν≡Rμν+12gμνR is the Einstein tensor and the total energy-momentum tensor, Tμν, is the sum of the matter and electromagnetic energy-momentum tensors:
Tμν=Tμνmatter+TμνEM .Einstein's field equations are solved using the BSSN formalism (see this tutorial module for an overview).
The conservation of baryon number equation is written as (cf. eqs. (6), (7), and (18) in Etienne et al.)
∂tρ⋆+∂j(ρ⋆vj)=0 ,where ρ⋆≡α√γρ0u0 and vi≡ui/u0.
In the ideal MHD limit, we can write down the total energy momentum tensor as (cf. eq. (8) in Etienne et al. and the discussion before it)
Tμν=(ρ0h+b2)uμuν+(P+b22)gμν−bμbνThe spatial components of the energy-momentum conservation equation give (cf. eq. (18) of Etienne et al. and eqs. (35) and (36) of Duez et al.)
∂t˜Si+∂j(α√γTj i)=12√γTαβ∂igαβ ,where
˜Si=√γSi=α√γT0 i=(ρ⋆h+αu0√γb2)ui−α√γb0bi .The time component of the energy-momentum conservation equation gives (cf. eq. (18) of Etienne et al.)
∂t˜τ+∂i(α2√γT0i−ρ⋆vi)=s ,where
˜τ=√γnμnν−ρ⋆=α2√γT00−ρ⋆ ,s=−α√γTμν∇νnμ=α√γ[(T00βiβj+2T0iβj+Tij)Kij−(T00βi+T0i)∂iα] ,with nμ=(α,0,0,0) being the normal vector and Kij the extrinsic curvature.
From the spatial components of the dual of Maxwell's equations,
∇νF∗μν=1√−g∂ν(√−gF∗μν)=0 ,we get the magnetic induction equation, which in conservative form may be written as (cf. eq. (12) Etienne et al.)
∂t˜Bi+∂j(vj˜Bi−vi˜Bj)=0 ,where ˜Bi=√γBi. We must also guarantee that no magnetic mopoles form, via the constraint
∂i˜Bi=0 ,which is the time component of the dual of Maxwell's equations. Satisfying this constraint equation while evolving the magnetic field forward in time via the evolution equation above turns out to be a nontrivial endeavor, particularly on AMR grids. Instead, we choose to evolve the magnetic 4-vector potential Aμ instead of the magnetic fields directly, so that
Aμ=Φnμ+Aμ ,˜Bi=˜ϵijk∂jAk ,where Aμ is purely spatial (Aμnμ=0) and Φ is the EM scalar potential.
Special finite difference operators for the vector potential are defined in IllinoisGRMHD so that the divergence of a curl is zero to roundoff error, which implies that the divergence of ˜Bi (as defined above) is zero and the condition ∂i˜Bi=0 is satisfied automatically, even on AMR grids.
In terms of Ai, the induction equation becomes
∂tAi=˜ϵijkvj˜Bk−∂i(αΦ−βjAj) .The final equation comes from choosing the covariant version of the "generalized Lorenz gauge condition" that was introduced by the Illinois Relativity group,
∇μAμ=ξnμAμ ,where ξ is a parameter with dimensions 1/Length, chosen so that the CFL condition remains satisfied. This gauge choice yields the additional evolution equation
∂t[√γΦ]+∂j(α√γAj−βj[√γΦ])=−ξα√γΦ .Note that in IllinoisGRMHD
the evolved variable is √γΦ, not Φ.
IllinoisGRMHD
currently implements a hybrid EOS of the form
The function ϵcold is related to Pcold by the fist law of thermodynamics,
ϵcold(ρ0)=∫Pcold(ρ0)ρ20dρ0 .Currently, all functions within IllinoisGRMHD
support piecewise-defined Pcold(ρ0) (the so-called "piecewise polytrope" EOS) with up to nine different polytropic indices.
In typical runs of the code, particularly on the ones presented in the release paper, the Γ-law EOS, P=(Γ−1)ρ0ϵ, is adopted. This corresponds to setting Pcold=(Γ−1)ρ0ϵcold in the boxed equation above, which is equivalent to Pcold=κρΓ0 (with constant κ), and Γth=Γ. In the absence of shocks, ϵ=ϵcold so that P=Pcold.
IllinoisGRMHD
has also performed successful binary neutron star mergers using the widely adopted piecewise polytropic EOSs of Read et al.. In the EOS low level functions tutorial, you will find special Python
functions designed to help the user who wishes to use Read et al. EOSs or any other piecewise polytropic EOS.
#!jupyter nbconvert --to latex --template ../../latex_nrpy_style.tplx Tutorial-IllinoisGRMHD__Overview.ipynb
#!pdflatex -interaction=batchmode Tutorial-IllinoisGRMHD__Overview.tex
#!pdflatex -interaction=batchmode Tutorial-IllinoisGRMHD__Overview.tex
#!pdflatex -interaction=batchmode Tutorial-IllinoisGRMHD__Overview.tex
!rm -f Tut*.out Tut*.aux Tut*.log