xx The GRHydro code: three-dimensional relativistic hydrodynamics

The GRHydro code: three-dimensional relativistic hydrodynamics

Original authors: Luca Baiotti, Ian Hawke, Pedro Montero

Contributors: Sebastiano Bernuzzi, Giovanni Corvino, Toni Font, Joachim Frieben,

Roberto De Pietri, Thorsten Kellermann, Frank Lxffler, Christian D. Ott, Luciano Rezzolla, Nikolaos Stergioulas, Aaryn Tonita, and many others,

especially those who were in the European Network “Sources of Gravitational Waves”

Date: 2009-12-07 19:20:47 -0600 (Mon, 07 Dec 2009)

Abstract

GRHydro is a fully general-relativistic three-dimensional hydrodynamics code. It evolves the hydrodynamics using High Resolution Shock Capturing methods and can work with realistic equations of state. The evolution of the spacetime can be done by any other “appropriate” thorn, such as the CCATIE code, maintained and developed at the Albert-Einstein-Institut (Potsdam).

1 Introduction

The GRHydro1 1GRHydro started as a branch of Whisky. The name Whisky is due to Tom Goodale, who pointed out that the in the original Gaelic uisge beatha (from which Whisky is derived) meant water of life. This name was chosen at a free and fair democratic ballot at the EU Network meeting in Southampton that gave the right answer thanks to a little bit of help from the authors of the code after some slight irregularities on the part of certain specialists in strange stars. code is based upon the public version of the Whisky code which is a product of the EU Network on Sources of Gravitational

Radiation2 ^{2http://www.eu-network.org} , and was initially written by Luca Baiotti, Ian Hawke and Pedro Montero, based on the publicly available GR3D code and with many other important contributors. With the help of large parts of the community, the GRHydro code got improved, extended and included into the Einstein Toolkit.

2 Using This Thorn

What follows is a brief introduction to using GRHydro. It assumes that you know the required physics and numerical methods, and

http://www.einsteintoolkit.org

also the basics of Cactus3 ^{3http://www.cactuscode.org} . If you don’t, then skip this section and come back to it after reading the rest of this ThornGuide of Cactus. For more details such as thornlists and parameter files, take a look at the Einstein Toolkit web page which is currently stored at GRHydro uses the hydro variables defined in HydroBase and provides own “conserved” hydro variables and methods to evolve them. It does not provide any information about initial data or equations of state. For these, other thorns are required. A minimal list of thorns for performing a shock-tube test is given in the shock-tube test parameter file, found at

GRHydro/test/GRHydro_test_shock.par

and will include the essential thorns

GRHydroxEOS_OmnixADMBasexADMCouplingxMoL

Initial data for shocks can be set using

GRHydro_Init_Data

Initial data for spherically symmetric static stars (with perturbations or multiple “glued” stars) can be set by

TOVSolver

The actual evolution in time is controlled by the Method of Lines thorn MoL. For full details see the relevant ThornGuide. For the purposes of GRHydro at least two parameters are relevant; odexmethod and molxtimesteps. If second-order accuracy is all that is required then odexmethod can be set to either "rk2" (second-order TVD Runge-Kutta evolution) or "icn" (Iterative Crank Nicholson, number of iterations controlled by molxtimesteps, defaults to three), and molxtimesteps can be ignored. A more generic (and hence less efficient) method can be chosen by setting odexmethod to "genrk" which is a Shu-Osher type TVD Runge-Kutta evolution. Then the parameter molxtimesteps controls the number of intermediate steps and hence the order of accuracy. First to seventh order are currently supported.

GRHydro currently uses a Reconstruction-Evolution type method. The type of reconstruction is controlled by the parameter reconxmethod. The currently supported values are "tvd" for slope limited TVD reconstruction, "ppm" for the Colella-Woodward PPM method, and "eno" for the Essentially Non-Oscillatory method of Harten et al. Each of these has further controlling parameters. For example there are a number of slope limiters controlled by the keyword tvdxlimiter, the PPM method supports shock detection by the Boolean ppmxdetect, and the ENO method can have various orders of accuracy controlled by enoxorder. Note that the higher-order methods such as PPM and ENO require the stencil size to be increased using GRHydroxstencil

and driver::ghostxsize.

For the evolution various approximate Riemann solvers are available, controlled by riemannxsolver. Currently implemented are "HLLE", "Roe" and "Marquina". For the Roe and Marquina methods there are added options to choose which method is used for calculating the left eigenvectors. This now defaults to the efficient methods of the Valencia group, but the explicit matrix inversion is still there for reference.

For the equations of state, two “types” are recognized, controlled by the parameter GRHydroxeosxtype. These are "Polytype" where the pressure is a function of the rest-mass density, , and the more generic "General" type where the pressure is a function of the rest-mass density and the specific internal energy, . For the Polytype equations of state one fewer equation is evolved and the specific internal energy is set directly from the rest-mass density. The actual equation of state used is controlled by the parameter GRHydroxeosxtable. Polytype equations of state include "2DxPolytrope" and general equations of state include

"IdealxFluid".

2.1 Obtaining This Thorn

The public version of GRHydro can be found on the website http://www.einsteintoolkit.org.

2.2 Basic Usage

The simplest way to start using GRHydro would be to download some example parameter files from the web page to try it. There are a number of essential parameters which might reward some experimentation. These include:

Reconstruction methods:

reconxmethod: The type of reconstruction method to use. tvd is the standard. ppm is more accurate but it requires more resources. eno gives in theory arbitrary order of accuracy but it is practically unworthy to go beyond fifth order.

tvdxlimiter: When using tvd reconstruction the choice of limiter can have a large effect. vanleerMC2 is probably the best to use, but the extremes of minmod and Superbee are also interesting.

ppmxdetect: When using ppm reconstruction with shocks, the shock detection algorithm can notably sharpen the profile.

Riemann solvers: Marquina is the standard solver used. HLLE is significantly faster, but sometimes provides cruder approximation.

Equations of state: These are controlled by the GRHydroxeosxtype and GRHydroxeosxtable parameters. Changing these parameters will depend on which equation of state thorns you have compiled in.

Initial data parameters: GRHydroxrhoxcentral is inherited by many initial data thorns to set the central density of compact fluid objects such as single stars. However, this parameter is depreciated.

Atmosphere parameters: Many of these are listed in sectionx8.4.

2.3 Special Behaviour

Although in theory GRHydro can deal with conformal metrics as well as physical metrics, this part of the code is completely untested as we don’t have conformal initial data (although this would not be hard - we just haven’t had the incentive).

2.4 Interaction With Other Thorns

GRHydro provides the appropriate contribution to the stress energy through the TmunuBase interface. Those spacetime evolvers that use this interface can use GRHydro without change.

GRHydro uses the MoL thorn to perform the actual time evolution. This means that if all other evolution thorns are also using MoL then the complete evolution will have the accuracy of the MoL evolution method without change. This (currently) allows for up to fourth-order accuracy in time without any changes to

GRHydro.

For the general equations of state GRHydro uses the EOSxOmni interface. This returns the necessary hydrodynamical quantities, such as the pressure and derivatives with general function calls. The parameter GRHydroxeosxtable controls which equation of state is used during evolution.

For the metric quantities GRHydro uses the standard CactusEinstein arrangement, especially ADMBase. This allows the standard thorns to be used for the calculation of constraint violations, emission of gravitational waves, location of the apparent horizon, and more.

2.5 Support and Feedback

GRHydro is part of the Einstein Toolkit, with its web page located at It contains information on obtaining the code, together with thornlists and sample parameter files. For questions, send an email to the Einstein Toolkit mailing list users@einsteintoolkit.org.

3 Physical System

The equations of general relativistic hydrodynamics can be written in the flux conservative form

where is a set of conserved variables, the fluxes and the source terms. The 8 conserved variables are labeled , , , and , where is the generalized particle number density, are the generalized momenta in each direction, is an internal energy term, and is the densitized magnetic field. These conserved variables are composed from a set of primitive variables, which are , the rest-mass density, , the pressure, , the fluid 3-velocities, , the specific internal energy, the magnetic field in the lab frame, and , the Lorentz factor, via the following relations x

where is the determinant of the spatial 3-metric and , . is the magnetic field in the fluid’s rest frame where is the dual of the Faraday tensor. It is related to via

Only five of the primitive fluid variables are independent. The Lorentz factor is defined in terms of the velocities and the metric as . Also one of the pressure, rest-mass density or specific internal energy terms is given in terms of the other two by an equation of state.

The fluxes are usually defined in terms of both the conserved variables and the primitive variables:

The source terms are

Note that the source terms do not contain differential operators acting on the stress-energy tensor and that this is important for the numerical preservation of the hyperbolicity character of the system. Also note that in a curved spacetime the equations are not in a strictly-homogeneous conservative form, which is recovered only in flat spacetime. This conservative form of the relativistic Euler equations was first derived by the group at the Universidad de Valencia [3] and therefore was named the Valencia formulation.

The stress energy tensor is in turn given by For more detail see the review of Fontx[9] and the GRHydro paperx[21].

4 Numerical Implementation

TODO: describe MHD scheme in particular constrained transport and con2prim method used.

5 High Resolution Shock Capturing methods

The numerical evolution of a hydrodynamical problem is complicated by the occurrence of shocks, i.e. genuine nonlinear discontinuities that will generically form. It is also complicated by the conservation constraint. In a High Resolution Shock Capturing (HRSC) method the requirement of conservation is used to ensure the correct evolution of a shock. A HRSC method also avoids spurious oscillations at shocks which are known as Gibbs’ phenomena, while retaining a high order of accuracy over the majority of the domain.

For a full introduction to HRSC methods seex[14], [20], [15], [16] and [9].

In the GRHydro code it was decided to use the method of lines as a base for the HRSC scheme. The method of lines is a way of turning a partial differential equation such asx(??) into an ordinary differential equation. For the GRHydro code the following steps are required.

Partition the domain of interest into cells. For simplicity we shall assume a regular Cartesian partitioning. This is not necessary for the method of lines, but it is for GRHydro.

Over a given cell with Cartesian coordinates , integrate equationx(??) in space to find the ordinary differential equation

where the boundaries of the Cartesian cells are given by and so on.

If we define as the integral average of over the cell, after dividing (??) by the volume of the cell, we get an ordinary differential equation for , in terms of the flux functions and the source terms as functions of the spatial differential of . We note that, unlike the spatial differential of , the spatial differential of is well defined in a cell containing a discontinuity.

This ordinary differential equation can be solved by the Cactus thorn MoL. All that GRHydro has to do is to return the values of the discrete spatial differential operator

given the data , and to supply the boundary conditions that will be required to calculate this right hand side at the next time level. We note that in the current implementation of MoL the solution to the ordinary differential equationx(??) will be -order accurate provided that the time integrator used by MoL is -order accurate in time, and that the discrete operator is -order accurate in space and first-order (or better) accurate in time. For more details on the method of lines, and the options given with the time integration for MoL, see the relevant chapter in the ThornGuide.

In this implementation of GRHydro the right hand side operator will be simplified considerably by approximating the integrals by the midpoint rule to get where the dependence of the flux on and spatial position is implicit in the notation. Given this simplification, the calculation of the right hand side operator splits simply into the following two parts:

Calculate the source terms :

Given that is a second-order accurate approximation to at the midpoint of the cell, which is precisely , for second-order accuracy it is sufficient to use .

In each coordinate direction , calculate the intercell flux :

From the initial data given at time we can reconstruct the data at the cell boundary, to any required accuracy in space (except in the vicinity of a shock, where only first-order accuracy is guaranteed). However this will only be zeroth-order accurate in time. To ensure first-order accuracy in time, we have to find while retaining the high spatial order of accuracy. This requires two steps:

Reconstruct the data over the cells adjacent to the required cell boundary. This reconstruction should use the high spatial order of accuracy. This gives two values of , which we call and , where is obtained from cell (left cell) and from cell (right cell).

The values are used as initial data for the Riemann problem. This is the initial value problem given by the partial differential equationx(??) with semi-infinite piecewise constant initial data . As the true function is probably not piecewise constant we will not get the exact solution of the general problem even if we solve the local Riemann problem exactly. However, it will be first-order accurate in time and retain the high order of accuracy in space which, as explained in the documentation to the MoL thorn, is sufficient to ensure that the method as a whole has a high order of accuracy.

So, the difficult part of GRHydro is expressed in two routines. One that reconstructs the function at the boundaries of a computational cell given the cell average data , and another that calculates the intercell flux at this cell boundary.

6 Reconstruction

In the reduction of all of GRHydro to two routines in the last section one point was glossed over. That is, in order for the numerical method to be consistent and convergent it must retain conservation and not introduce spurious oscillations. Up to this point all the steps have either been exact or have neither changed the conservation properties or the profile of the function. Also, the calculation of the intercell flux from the Riemann problem can be made to be “exactly correct”. That is, even though as explained above it may not be the true flux for the real function , it will be the exact physical solution for the values given by the reconstruction routine, so the intercell flux cannot violate conservation or introduce oscillations. Unphysical effects such as these can only be introduced by an incorrect reconstruction.

For a full explanation of reconstruction methods see Laneyx[14], Torox[20], Levequex[15]. For the moment we will concentrate on the simplest methods that are better than first-order accurate in space, the TVD slope-limited methods. More complex methods such as ENO will be introduced later.

In the late 1950’s Godunov proved a theorem that, in this context, says

Any linear reconstruction method of higher-than-first-order accuracy may introduce spurious oscillations.

For this theorem linear meant that the reconstruction method was independent of the data it was reconstructing. Simple centred differencing is a linear second-order method and is oscillatory near a shock. Instead we must find a reconstruction method that depends on the data being reconstructed.

Switching our attention to conservation, we note that there is precisely one conservative first-order reconstruction method, and that any second-order conservative method can be written in terms of a slope or rather difference as 6.1 TVD Reconstruction

As we want a method that is accurate (i.e., at least to second order) while being stable (i.e., only first order or nonlinear at shocks) then the obvious thing to do is to use some second-order method in the form of equationx(??) in smooth regions but which changes to the form of equationx(??) smoothly near shocks.

In the articles describing the GRAstroxHydro code4 ^{4http://wugrav.wustl.edu/ASC/internal/asccodes.html} , this was described as an average of the two reconstructions, where varies smoothly in some sense, and is zero near a shock and 1 in smooth regions. In Toro’s notationx[20] (which we usually adopt here) the slope limiter function (having the same attributes as above) directly multiplies the slope, giving Equations (??) and (??) are equivalent.

For details on how to construct a limiter, on their stability regions and on the explicit expressions for the limiters used here, seex[20]. The GRHydro code implements the minmod limiter (the most diffusive and the default), the Van Leer Monotonized Centred (MC) (VanLeerMC) limiter in a number of forms (which should give equivalent results), and the Superbee limiter. The limiter specified by the parameter value VanLeerMC2 is the recommended one.

As an example, we show how TVD with the minmod limiter is implemented in the code. First, we define the minmod function: For reconstructing we choose two differences and write

6.2 PPM reconstruction

The piecewise parabolic method (PPM) of Colella and Woodwardx[4] is a rather more complex method that requires a number of steps. The implementation in the GRHydro code is specialized to use evenly spaced grids. Also, some of the more complex features are not implemented; in particular, the dissipation algorithm is only the simplest given in the original article. Here we just give the implementation details. For more details on the method we refer to the original article.

Again we assume we are reconstructing a scalar function as a function of in one dimension on an evenly spaced grid, with spacing . The first step is to interpolate a quadratic polynomial to the cell boundary,

where and At this point we set both left and right states at the interface to be equal to this, This reconstruction will be oscillatory near shocks. To preserve monotonicity, the following replacements are made:

However, before applying the monotonicity preservation two other steps may be applied. Firstly we may steepen discontinuities. This is to ensure sharp profiles and is only applied to contact discontinuities. This may be switched on or off using the parameter ppmxdetect. This part of the method replaces the cell boundary reconstructions of the density with

where is only applied if the discontinuity is mostly a contact (seex[4] for the details) and is defined as

where are positive constants and with another positive constant and

Another step that is performed before monotonicity enforcement is to flatten the zone structure near shocks. This adds simple dissipation and is always in the code. In short, the reconstructions are again altered to

where and are constants.

The above flattening procedure is not the one in the original article of Colella and Woodward, but it has been adapted from it in order to have a stencil of three points. The original flattening procedure is also implemented in GRHydro. Instead of ??, it consists in the formula where

and is given by ??. This can be activated by setting the parameter ppmxflatten to stencilx4. Formula ??, despite requiring more computational resources (especially when mesh refinement is used), usually gives very similar results to ??, so we routinely use ??.

6.3 ENO Reconstruction

An alternative way of getting higher-than-second-order accuracy is the implementation of the Essentially Non-Oscillatory methods of Harten et.alx[11]. The essential idea is to alter the stencil to use those points giving the smoothest reconstruction. The only restriction is that the stencil must include the cell to be reconstructed (for stability). Here we describe the simplest ENO type reconstruction: piecewise polynomial reconstruction using the (un)divided differences to measure the smoothness.

Let be the order of the reconstruction. Suppose we are reconstructing the scalar function in cell . We start with the cell . We then add to the stencil cell , where , where we choose to minimize the Newton divided differences

We then recursively add more cells, minimizing the higher-order Newton divided differences defined by The reconstruction at the cell boundary is given by a standard -order polynomial interpolation on the chosen stencil.

[19] has outlined an elegant way of calculating the cell boundary values solely in terms of the stencil and the known data. If the stencil is given by for some integer , then there exist constants depending only on the grid such that the boundary values for cell are given by The constants are given by the rather complicated formula This simplifies considerably if the grid is even. The coefficients for an even grid are given (up to seventh order) byx[19].

7 Riemann Problems

Given the reconstructed data, we then solve a local Riemann problem in order to get the intercell flux. The Riemann problem is specified by an equation in flux conservative homogeneous form,

with piecewise constant initial data separated by a discontinuity at . Flux terms for the other directions are given similarly. There is no intrinsic scale to this problem and so the solution must be a self similar solution with similarity variable . The solution is given in terms of waves which separate different states, with each state being constant. The waves are either shocks, across which all hydrodynamical variables change discontinuously, rarefactions, across which all the variables change continuously (the wave is not a single value of for a rarefaction, but spreads across a finite range), or contact or tangential discontinuities, across which some but not all of the hydrodynamical variables change discontinuously and the rest are constant. The characteristics of the matter evolution converge and break at a shock, diverge at a rarefaction and are parallel at the other linear discontinuities.

The best references for solving the Riemann problem either exactly or approximately arex[15], [20], [14]. Here, we start by giving a simple outline. We start by considering the dimensional linear problem in one dimension given by where is a matrix with constant coefficients. We define the eigenvalues with associated right and left eigenvectors , where the eigenvectors are normalized to each other (i.e., their dot product is ). We shall assume that the eigenvectors span the space. The characteristic variables are defined by

Then equation (??) when written in terms of the characteristic variables becomes where is the matrix containing the eigenvalues on the diagonals and zeros elsewhere. Hence each characteristic variable obeys the linear advection equation with velocity . This solves the Riemann problem in terms of characteristic variables.

In order to write the solution in terms of the original variables we order the variables in such a way that . We also define the differences in the characteristic variables across the characteristic wave. These differences are single numbers (‘scalars’). We note that these differences can easily be found from the initial data using

As the change in the solution across each wave is precisely the difference in the associated characteristic variable, the solution of the Riemann problem in terms of characteristic variables can be written as either

or or as the average where is the column vector .

Converting back to the original variables we have the solution In the case where we are only interested in the flux along the characteristic we can write the solution in the simple form

All exact Riemann solvers have to solve at least an implicit equation and so are computationally very expensive. As the solution of Riemann problems takes a large portion of the time to run in a HRSC code, approximations that speed the calculation of the intercell flux are often essential. This is especially true in higher dimensions (¿1), where the solution of the ordinary differential equation to give the relation across a rarefaction wave makes the use of an exact Riemann solver impractical.

Approximate Riemann solvers can have problems, as shown in depth by Quirkx[17]. Hence it is best to compare the results of as many different solvers as possible. Here we shall describe the three approximate solvers used in this code, starting with the simplest.

7.1 HLLE solver

The Harten-Lax-van Leer-Einfeldt (HLLE) solver of Einfeldtx[7] is a simple two-wave approximation. We assume that the maximum and minimum wave speeds are known. The solution of the Riemann problem is then given by requiring conservation to hold across the waves. The solution takes the form

and the intermediate state is given by If we just want the numerical flux along the boundary then this takes the form where

Knowledge of the precise minimum and maximum characteristic velocities requires knowing the solution of the Riemann problem. Instead, the characteristic velocities are usually found from the eigenvalues of the Jacobian matrix evaluated at some intermediate state. To ensure that the maximum and minimum eigenvalues over the entire range between the left and right states are found, we evaluate the Jacobian in both the left and right states and take the maximum and minimum over all eigenvalues. This ensures, for the systems of equations considered here, that the real maximum and minimum characteristic velocities are contained within .

If we set and replace the characteristic velocities with , we find the Lax–Friedrichs flux (cf. also Tadmor’s semi-discrete schemex[13]) This is very diffusive, but also very stable.

7.2 Roe solver

The linearized solver of Roex[18] is probably the most popular approximate Riemann solver. The simplest interpretation is that the Jacobian is linearized about some intermediate state. Then the conservation form reduces to the linear equation where is a constant coefficient matrix. This is identical to equation (??) and so all the results of sectionx7 on linear systems hold. We reiterate that the standard form for the flux along the characteristic ray is

There is a choice of which intermediate state the Jacobian should be evaluated at. Roe gives three criteria that ensure the consistency and stability of the numerical flux:

,

is diagonalizable with real eigenvalues,

smoothly as .

A true Roe average for relativistic hydrodynamics, i.e., an intermediate state that satisfies all these conditions, has been constructed by Eulderinkx[8]. However, frequently it is sufficient to use which satisfies only the last two conditions. For simplicity we have implemented this arithmetic average.

7.3 Marquina solver

Unlike all the other Riemann solvers introduced so far, the Marquina solver as outlined in [6] does not solve the Riemann problem completely. Instead, only the flux along the characteristic ray is given. It can be seen as a generalized Roe solver, as the results are the same except at sonic points. These points are where the fluid velocity is equal to the speed of sound of the fluid. In the context of Riemann problems, sonic points are found when the ray is within a rarefaction wave.

Firstly define the left and right eigenvectors and the eigenvalues of the Jacobian matrix evaluated at the left and right states. Next define left and right characteristic variables and fluxes by Then the algorithm chooses the correct-sided characteristic flux if the eigenvalues , have the same sign, and uses a Lax–Friedrichs type flux if they change sign. In full, the algorithm is given in figurex1.

Figurex1: The algorithm to calculate the Marquina flux.

Then the numerical flux is given by

The above implementation is based on [1].

8 Other points in GRHydro

There are a number of other things done by GRHydro which, whilst not as important as reconstruction and evolution, are still essential.

8.1 Source terms

In a curved spacetime the equations are not in homogeneous conservation-law form but also contain source terms. These are actually calculated first, before the flux terms (it simplifies the loop very slightly). There are a few points to note about the calculation of the sources.

The calculation used here, taken from the GR3D code, requires both the metric and the extrinsic curvature.

In order to calculate the Christoffel symbols the gauge and metric variables must be differenced. Currently centred differencing of second or fourth (we are safe to use this, as GRHydro requires always at least 2 ghost zones) order is hardwired in. The two differencings can be selected via the

     parameter GRHydro::sourcesxspatialxorder.

For numerical reasons, namely in order to avoid the presence of time derivatives in the source-term computation, the implemented form of the source terms is not (??) directly, but it has been modified as shown in the following paragraphs (following a clever idea by Mark Miller (see the GR3D code)

In what follows Greek letters range from to and roman letters from to .

For the following computations, we need the expression of some of the 4-Christoffel symbols applied to the 3+1 decomposed variables. In order to remove time derivatives we will frequently make use of the ADM evolution equation for the 3-metric in the form As it is used in what follows, we also recall that is the covariant derivative associated with the spatial 3-surface and we note that it is compatible with the 3-metric: We start from the symbol: and we expand the derivatives as and where we have used (??) and (??), respectively. Inserting (??) and (??), equation (??) becomes

With the same strategy we then compute and Other more straightforward calculations give wherex(??) was used to derive (??) andx(??).

8.1.1 Source term for Now we have all the expressions for calculating the source terms. The ones for the variables are After expanding the derivative in (??), the coefficient of the term in (??) becomes The coefficient of the term is The coefficient of the term is simply Finally, summing (??)–(??) we find which is the expression implemented in the code.

8.1.2 Source term for

The source term for is [cf. (??)] For clarity, again we consider separately the terms containing as a factor the different components of . From (??) we find the coefficient of to be

The coefficient of the term is given by

and, finally, the coefficient for is

The final expression implemented in the code is thus

8.2 Conversion from conservative to primitive variables

As noted in sectionx3 the variables that are evolved are the conserved variables . But in order to calculate the fluxes and sources we require the primitive variables . Conversion from primitive to conservative is given analytically by equationx(??). Converting in the other direction is not possible in a closed form except in certain special circumstances.

There are a number of methods for converting from conservative to primitive variables; seex[16]. Here we use a Newton-Raphson type iteration. If we are using a general equation of state such as an ideal gas, then we find a root of the pressure equation. Given an initial guess for the pressure we find the root of the function

where the approximate density and specific internal energy are given by

Here the conserved variables are all “undensitized”, e.g., where is the determinant of the 3-metric, and is given by

In order to perform a Newton-Raphson iteration we need the derivative of the function with respect to the dependent variable, here the pressure. This is given by where and given by calls to EOSxBase, and

For a polytropic type equation of state, the function is given by where is the variable solved for, the pressure, specific internal energy and enthalpy are set from the EOS and the Lorentz factor is found from The derivative is given by where 8.3 A note on the Roe and Marquina Riemann Solvers

Finding the Roe or Marquina fluxes as given is sectionx7 requires the left eigenvectors to either be supplied analytically or calculated numerically.

When this is done by inverting the matrix of right eigenvectors, in the actual code this is combined with the calculation of, e.g., the characteristic jumps . Normally the eigenvalues and vectors are ordered lexicographically. However for the polytropic equation of state one of the equations is redundant, so the matrix formed by these eigenvectors is linearly dependent and hence singular. It turns out that this is only a minor problem; by rearranging the order of the eigenvalues and vectors it is possible to numerically invert the matrix. This means that no specific ordering of the eigenvalues should be assumed. It also explains the slightly strange ordering in

the routines GRHydroxEigenProblem*.F90.

The current default is that the left eigenvectors are calculated analytically - for the expressions see Fontx[9]. For both the Roe and the Marquina solvers an optimized version of the flux calculation has been implemented. For more details on the analytical form and the optimized flux calculation see Ibxxez et al.x[12], Aloy et al.x[2] and Frieben et al.x[10].

8.4 The atmosphere

In simulations of compact objects, often the matter is located only on a (small) portion of the numerical grid. In fact, over much of the evolved domain the physical situation is likely to be sufficiently well approximated by vacuum. However, in the vacuum limit the continuity equations describing the fluid break down. The speed of sound tends to the speed of light and everything fails (especially the conversion from conserved to primitive variables).

To avoid this problem it is customary to introduce an atmosphere. In our implementation, this is a low-density region surrounding the compact objects and initially it has no velocity and is in equilibrium. The introduction of an atmosphere is managed by the initial data thorns.

However GRHydro itself also knows about the atmosphere, of course. If the conserved variables or are beneath some minimum value, or an evolution step might push them below such a value, then the relevant cell is not evolved. Also, if the density should fall below a minimum value in the routine that converts from conservative to primitive variables, all the variables are reset to the values adopted for the atmosphere.

Probably the hardest part of using GRHydro is to correctly set these atmosphere values. In the current implementation the atmosphere is used in three separate places. These are Set up of the initial data. Initial-data routines should set an atmosphere consistent with the one that will be evolved.

In the routine that converts from conserved variables to primitive variables. This is where the majority of the atmosphere resets will occur.

If the equation of state is polytropic then an attempt is made to convert to primitive variables. If the iterative algorithm returns a negative (and hence unphysical) value of , then is reset to the atmosphere value, the velocities are set to zero, and , , and are reset to be consistent with (and ). Note that even though the polytropic equation of state gives us sufficient information to calculate a consistent value of , this is not done.

If the equation of state is the more general type (such as that of an ideal fluid) and if is less than the specified minimum, then, as above, we assume we are in the atmosphere and call the routine that changes from the conserved to the primitive variables for the polytrope.

When applying the update. If the calculated update terms for a specific cell would lead to either or becoming negative, then two steps are taken. First, we do not update this specific cell. Second, the data in this cell is reset to be the atmosphere.

The reason why the routine that converts to the primitive variables does not ensure that is consistent with the other variables is practical rather than accurate. If the value of the variables is set such that they all lie precisely on the atmosphere, then small errors (typically initially of the order of for a -point TOV star in octant symmetry) would move certain cells above the atmosphere values. Combined with the necessary atmosphere treatment this leads to high-frequency noise. This will lead to waves of matter falling onto the star. Despite their extremely low density (typically only an order of magnitude higher than the floor) they will result in visible secondary overtones in the oscillations of, e.g., the central density.

The parameters controlling the atmosphere are the following.

GRHydro::rhoxabsxmin. An absolute value for in the atmosphere. Defaults to -1. Any negative value will be ignored, and the value of rhoxrelxmin used instead.

GRHydro::rhoxrelxmin. A relative value for in the atmosphere. Defaults to . Only used if rhoxabsxmin is negative, which is the default behaviour. The actual value of the atmosphere will

be rhoxrelxminGRHydroxrhoxmax, where GRHydro::GRHydroxrhoxmax is a variable containing the

maximum value of on the numerical grid at time zero. initialxrhoxabsxmin. An absolute value for rho in the initial atmosphere. It is used only by initial data routines. Unused if negative.

initialxrhoxrelxmin. A relative (to the initial maximum rest-mass density) value for rho in the atmosphere. It is used only by initial data routines and only if it is positive and

initialxrhoxabsxmin is negative.

initialxatmospherexfactor. A relative (to the initial atmosphere) value for rho in the atmosphere. It is used only by initial data routines. It multiplies the atmosphere value used by the initial data solver. Unused if negative.

GRHydroxatmoxtolerance. A parameter useful mostly in mesh-refined simulations. A point is set to the atmosphere values in the conservative to primitive routines if its rest-mass density is such that GRHydroxrhoxminGRHydroxatmoxtolerance). This avoids occasional spurious oscillations in (Carpet) buffer zones lying in the atmosphere (because prolongation happens on conserved variables).

The motivation for these parameters referring only to the initial data is that it is sometimes best to set the initial atmosphere to slightly below the atmosphere cutoff used during evolution, as this avoids truncation error and metric evolution leading to low density waves travelling across the atmosphere.

The routines essential to the atmosphere are contained in GRHydroxMinima.F90, GRHydroxCon2Prim.F90,

GRHydroxUpdateMask.F90.

8.5 Advection of passive scalars (’tracers’)

For some astrophysical problems it is necessary to advect passive compositional scalars such as the electron fraction (number of electrons per baryon). For a generic tracer , the evolution equation looks like

where is the generalized particle number density as defined in Eq.x(??). GRHydro currently supports any number of independent tracer variables. The following parameters have to be set to use the tracers:

GRHydro::evolvextracer. Boolean. Set to yes if you want the tracers to be active.

GRHydro::numberxofxtracers. Integer. Defaults to 0. To use tracers, set to at least 1.

Note, that your initial data thorn must set initial data for GRHydro::tracer[k] and GRHydro::consxtracer[k] for all tracers you want to advect. GRHydro::consxtracer[k] stores .

8.5.1 Implementation and Limitations

Reconstruction: Currently only TVD and PPM reconstruction of the tracers are implemented. Since for most astrophysical problems one will associate the tracer with some compositional variable it might be better to reconstruct .

Riemann Solvers: Only HLLE and Marquina are supported. In HLLE, the fluxes as given in Eq.x(??) are computed for each tracer. In the Marquina solver, we multiply the -flux by each tracer to get the individual tracer fluxes according to the following prescription:

The above was suggested by Miguel Aloy and first implemented and tested by Harry Dimmelmeier in his code (CoCoNuT), then by ChristianxD.xOtt in GRHydro.

9 History

The approximate time line is something like this:

x1995: Valencia group hydrodynamics code, fixed spacetime. x1997: Ported to Cactus, extensively rewritten for the Binary Neutron Star Grand Challenge. Primarily written by Mark Miller. Released as GR3D as public domain code.

x1998-: Developed as Cactus thorn MAHC inside the GRAstroxHydro arrangement at Washington University, primarily by Mark Miller.

2002-2008: Whisky written based on GR3D.

2008-: GRHydro based on the public version of Whisky

This is necessarily only a sketch; many people have contributed to the history of this code, and the present authors were not around for most of it...

9.1 Thorn Source Code

This was initially written by Luca Baiotti, Ian Hawke and Pedro Montero with considerable assistance from Luciano Rezzolla, Toni Font, Nick Stergioulas and Ed Seidel. This led to the basic GRHydro thorns, GRHydro

itself, GRHydroxInitxData and GRHydroxRNSID.

Since then most of the maintenance has been done by Ian Hawke, Luca Baiotti and Frank Lxffler. Various people have contributed to the development. In particular

The PPM reconstruction methods were written by Ian Hawke heavily based on the code of Toni Font. They were later expanded by Christian D. Ott and Luca Baiotti.

The Roe and Marquina solvers were made considerably more efficient thanks to Joachim Frieben.

The current atmosphere algorithm is a mixture of ideas from the GR3D code, Luciano Rezzolla, Toni Font and Nick Stergioulas. The current setup was written by Ian Hawke and Luca Baiotti.

The 1-dimensional TOV solver GRHydroxTOVSolver was written by Ian Hawke based on a short paper by Thomas Baumgarte.

9.2 Thorn Documentation

This documentation was first written largely by Ian Hawke and Scott Hawley in 2002. Long due, rather necessary and considerably large updates were made in 2008 by Luca Baiotti.

9.3 Acknowledgements

As already mentioned, the history behind this code leads to a long list of people to be acknowledged.

Firstly, without the work of the Valencia group this sort of code would be impossible.

Secondly, the incomparable work of Mark Miller and the Washington University - AEI Collaboration in producing the GR3D and GRAstroxHydro codes gave an essential benchmark to aim for, and encouragement that it was possible!

Thirdly, the support of the Cactus team, especially Tom Goodale, Gabrielle Allen and Thomas Radke made life a lot easier.

Finally, for their work in coding, ideas and suggestions, or just plain encouragement, we would like to thank all at the AEI and in the EU Network, especially Toni Font, Luciano Rezzolla, Nick Stergioulas, Ed Seidel, Carsten Gundlach and Josx-Maria Ibxxez.

Originally Ed Seidel and then Luciano Rezzolla and Gabrielle Allen and many others have been granting (in addition to valuable scientific advice) financial support and human resources to the development of the code.

References [1]xxxAloy M.A., Ibxnez J.M., MartxJ.M., Mxller E. Astroph. J. Supp., 122: 151 (1999). [2]xxxM.xA. Aloy, J.xA. Pons, and J.xM. Ibxxez. An efficient implementation of flux formulae in

multidimensional relativistic hydrodynamical codes. Comput. Phys. Commun., 120:115–121, 1999. [3]xxxBanyuls F., Font J.A., Ibxnez J.M., Martx J.M., Miralles J.A. Astrophys. J., 476: 221 (1997). [4]xxxP. Colella and P.xR. Woodward. The Piecewise Parabolic Method (PPM) for Gas-Dynamical

Simulations. J. Comput. Phys., 54, 174–201, 1984. [5]xxxG. Cook Initial Data for

Numerical Relativity Living Rev. Relativity, 3, 2000. [Article in on-line journal], cited on 31/08/02, http://www.livingreviews.org/ Articles/Volume3/2000-5cook/index.html.

[6]xxxR.xDonat and A.xMarquina. Capturing shock reflections: An improved flux formula. J. Comput.

Phys., 125:42–58, 1996. [7]xxxEinfeldt B. Journal of Computational Physics, 25: 294 (1988). [8]xxxEulderink F., Mellema G. Astron. Astrophys., 284: 652 (1994). [9]xxxJ.xA. Font. Numerical hydrodynamics in General Relativity. Living Rev. Relativity,

3, 2000. [Article in on-line journal], cited on 31/07/01, http://www.livingreviews.org/ Articles/Volume3/2000-2font/index.html.

[10]xxxJ. Frieben, J.xM. Ibxxez, and J. Pons. in preparation [11]xxxA.xHarten, B.xEngquist, S.xOsher, and S.xR. Chakravarthy. Uniformly high order accurate

essentially non-oscillatory schemes, III. J. Comput. Phys., 71:231–303, 1987.

[12]xxxJ.xM. Ibxxez et al. in Godunov Methods: Theory and Applications. New York, 485–503, (2001)

[13]xxxA. Kurganov and E. Tadmor. New high-resolution central schemes for nonlinear conservation laws and convection-diffusion equations. J. Comput. Phys., 160:241, 2000.

[14]xxxC.xB. Laney. Computational Gasdynamics. Cambridge University Press, 1998.

[15]xxxR.xJ. LeVeque. Nonlinear conservation laws and finite volume methods for astrophysical fluid flow. In O.xSteiner and A.xGautschy, editors, Computational Methods for Astrophysical Fluid Flow. Springer-Verlag, 1998.

[16]xxxJ.xM.  Martx  and  E.xMxller.  Numerical  hydrodynamics

in Special Relativity. Living Rev. Relativity, 2, 1999. [Article in on-line journal], cited on 31/7/01, http://www.livingreviews.org/Articles/Volume2/1999-3marti/index.html.

[17]xxxJ.xJ. Quirk. A contribution to the great Riemann solver debate. Int. J. Numer. Methods Fluids, 18:555–574, 1994.

[18]xxxRoe P.L. J. Comput. Phy., 43: 357 (1981).

[19]xxxC. Shu. High Order ENO and WENO Schemes for Computational Fluid Dynamics. In T.xJ. Barth and H. Deconinck, editors High-Order Methods for Computational Physics. Springer, 1999. A related on-line version can be found under Essentially Non-Oscillatory and Weighted Essentially Non-Oscillatory Schemes for Hyperbolic Conservation Laws at

http://www.icase.edu/library/reports/rdp/97/97-65RDP.tex.refer.html.

[20]xxxE.xF. Toro. Riemann Solvers and Numerical Methods for Fluid Dynamics. Springer-Verlag, 2nd edition, 1999.

[21]xxx P.xMxsta et al., ‘GRHydro: A new open source general-relativistic magnetohydrodynamics code for the Einstein Toolkit,” Class.xQuant.xGrav.x31, 015005 (2014) doi:10.1088/0264-9381/31/1/015005 [arXiv:1304.5544 [gr-qc]].

10 Parameters

11constrainxtox1d 10Scope: privatex01 BOOLEAN

11Description: Set fluid velocities to zero for non-radial motion

11                           10  x01  Default: no

11

11usexcxxxcode  10Scope: privatex01  BOOLEAN

11Description: Use experimental C++ code?

11                           10  x01  Default: yes

11

11verbose  10Scope: privatex01  BOOLEAN

11Description: Some debug output

11                           10  x01  Default: no

11

11applyxhxviscosity  10Scope: restrictedx01  BOOLEAN

11Description: H viscosity is useful to fix the carbuncle instability seen at strong shocks

11                           10  x01  Default: no

11

11atmoxfalloffxpower  10Scope: restrictedx01  REAL

11Description: The power at which the atmosphere level falls off as (atmoxfalloofxradius/r)**atmoxfalloffxpower

11  Range  10  x01  Default: 0.0
110:*  10Anything positive

11

11atmoxfalloffxradius  10Scope: restrictedx01  REAL

11Description: The radius for which the atmosphere starts to falloff as (atmoxfalloffxradius/r)**atmoxfalloffxpower

11  Range  10  x01  Default: 50.0
110:*  10Anything positive

11

11atmoxtolerancexpower  10Scope: restrictedx01  REAL

11Description: The power at which the atmosphere tolerance increases as (r/atmoxtolerancexradius)**atmoxtolerancexpower

11  Range  10  x01  Default: 0.0
110:*  10Anything positive

11

11atmoxtolerancexradius  10Scope: restrictedx01  REAL

11Description: The radius for which the atmosphere tolerance starts to increase as (r/atmoxtolerancexradius)**atmoxtolerancexpower

11  Range  10  x01  Default: 50.0
110:*  10Anything positive

11avecxgauge  10Scope: restrictedx01  KEYWORD

11Description: Which gauge condition to use when evolving the vector potential

11 Range 10 x01 Default: lorenz
11algebraic  10Algebraic gauge
11lorenz  10Lorenz gauge

11

11bound  10Scope: restrictedx01  KEYWORD

11Description: Which boundary condition to use - FIXME

11 Range 10 x01 Default: none
11flat  10Zero order extrapolation
11none  10None
11static  10Static, no longer supported
11scalar  10Constant

11

11c2pxresetxpressure  10Scope: restrictedx01  BOOLEAN

11Description: If the pressure guess is unphysical should we recompute it?

11                           10  x01  Default: no

11

11c2pxresetxpressurextoxvalue 10Scope: restrictedx01  REAL

11Description: The value to which the pressure is reset to when a failure occurrs in C2P

11 Range 10 x01 Default: 1.e-20
110:  10greater than zero

11

11c2pxresortxtoxbisection  10Scope: restrictedx01  BOOLEAN

11Description: If the pressure guess is unphysical, should we try with bisection (slower, but more robust)

11                           10  x01  Default: no

11

11calculatexbcom  10Scope: restrictedx01  BOOLEAN

11Description: Calculate the comoving contravariant magnetic 4-vector bx?

11                           10  x01  Default: no

11

11checkxforxtrivialxrp  10Scope: restrictedx01  BOOLEAN

11Description: Do check for trivial Riemann Problem

11                           10  x01  Default: yes

11

11checkxrhoxminimum  10Scope: restrictedx01  BOOLEAN

11Description: Should a check on rho < GRHydroxrhoxmin be performed and written as WARNING level 2?

11                           10  x01  Default: no

11

11cleanxdivergence  10Scope: restrictedx01  BOOLEAN

11Description: Use hyperbolic divergence cleaning

11                           10  x01  Default: no

11

11comovingxattenuate  10Scope: restrictedx01  KEYWORD

11Description: Which attenuation method for the comoving shift

11 Range 10 x01 Default: tanh
11sqrt  10Multiply by sqrt(rho/rhoxmax)
11tanh  10”Multiply by 1/2*(1+tanh(factor*( rho/rhoxmax - offset)))”

11

11comovingxfactor  10Scope: restrictedx01  REAL

11Description: Factor multiplying the velocity for the comoving shift

11 Range 10 x01 Default: 0.0
110.0:2.0  10[0,2] is allowed, but [0,1] is probably reasonable

11comovingxtanhxfactor  10Scope: restrictedx01  REAL

11Description: The factor in the above tanh attenuation

11 Range 10 x01 Default: 10.0
11(0.0:*  10Any positive number

11

11comovingxtanhxoffset  10Scope: restrictedx01  REAL

11Description: The offset in the above tanh attenuation

11 Range 10 x01 Default: 0.05
110.0:1.0  10Only makes sense in [0,1]

11

11comovingxvxmethod  10Scope: restrictedx01  KEYWORD

11Description: Which method for getting the radial velocity

11 Range 10 x01 Default: projected
11projected  10vr = xxi . vx / r
11components  10vr = sqrt(vxi vx)

11

11con2primxoctxhack  10Scope: restrictedx01  BOOLEAN

11Description: Disregard c2p failures in oct/rotsym90 boundary cells with xyz < 0

11                           10  x01  Default: no

11

11decouplexnormalxbfield  10Scope: restrictedx01  BOOLEAN

11Description: when using divergence cleaning properly decouple Bx,psidc subsystem

11                           10  x01  Default: yes

11

11enhancedxppmxc2  10Scope: restrictedx01  REAL

11Description: Parameter for enhancecd ppm limiter. Default from McCorquodale & Colella 2011

11 Range 10 x01 Default: 1.25
11*:*  10must be greater than 1. According to Colella&Sekora 2008, enhanced ppm is insensitive to C in [1.25,5]

11

11enhancedxppmxc3  10Scope: restrictedx01  REAL

11Description: Parameter for enhancecd ppm limiter. Default from McCorquodale & Colella 2011

11 Range 10 x01 Default: 0.1
110:*  10must be greater than 0.

11

11enoxorder  10Scope: restrictedx01  INT

11Description: The order of accuracy of the ENO reconstruction

11 Range 10 x01 Default: 2
111:*  10Anything above 1, but above 5 is pointless

11

11eosxchange  10Scope: restrictedx01  BOOLEAN

11Description: Recalculate fluid quantities if changing the EoS

11                           10  x01  Default: no

11

11eosxchangextype  10Scope: restrictedx01  KEYWORD

11Description: Change polytropic K or Gamma?

11 Range 10 x01 Default: Gamma
11K  10Change the K
11Gamma  10Change the Gamma
11GammaKS  10Change K and Gamma, Shibata et al. 2004 3-D GR Core Collapse style

11evolvextracer  10Scope: restrictedx01  BOOLEAN

11Description: Should we advect tracers?

11                           10  x01  Default: no

11

11gradientxmethod  10Scope: restrictedx01  KEYWORD

11Description: Which method is used to set GRHydro::DiffRho?

11 Range 10 x01 Default: First diff
11First diff  10Standard first differences
11Curvature  10Curvature based method of Paramesh / FLASH
11Rho weighted  10Based on the size of rho

11

11grhydroxatmoxtolerance  10Scope: restrictedx01  REAL

11Description: A point is set to atmosphere in the Con2Prim’s if its rho < GRHydroxrhoxmin *(1+GRHydroxatmoxtolerance). This avoids occasional spurious oscillations in carpet buffer zones lying in the atmosphere (because prolongation happens on conserved variables)

11  Range  10  x01  Default: 0.0
110.0:  10Zero or larger. A useful value could be 0.0001

11

11grhydroxc2pxfailedxaction  10Scope: restrictedx01  KEYWORD

11Description: what to do when we detect a c2p failure

11 Range 10 x01 Default: abort
11abort  10abort with error
11terminate  10request termination

11

11grhydroxc2pxresetxepsxtauxhotxeos 10Scope: restrictedx01  BOOLEAN

11Description: As a last resort, reset tau

11                           10  x01  Default: no

11

11grhydroxc2pxwarnxfromxreflevel 10Scope: restrictedx01  INT

11Description: Start warning on given refinement level and on higher levels

11 Range 10 x01 Default: (none)
110:  10Greater or equal to 0

11

11grhydroxc2pxwarnlevel  10Scope: restrictedx01  INT

11Description: Warnlevel for Con2Prim warnings

11 Range 10 x01 Default: (none)
110:1  10Either 0 or 1

11

11grhydroxcountmax  10Scope: restrictedx01  INT

11Description: Maximum number of iterations for Con2Prim solve

11 Range 10 x01 Default: 100
111:*  10Must be positive

11

11grhydroxcountmin  10Scope: restrictedx01  INT

11Description: Minimum number of iterations for Con2Prim solve

11 Range 10 x01 Default: 1
110:*  10Must be non negative

11

11grhydroxdelxptol  10Scope: restrictedx01  REAL

11Description: Tolerance for primitive variable solve (absolute)

11 Range 10 x01 Default: 1.e-18
110:  10Do we really want both tolerances?

11grhydroxenablexinternalxexcision 10Scope: restrictedx01  BOOLEAN

11Description: Set this to ’false’ to disable the thorn-internal excision.

11                           10  x01  Default: true

11

11grhydroxeosxhotxepsxfix  10Scope: restrictedx01  BOOLEAN

11Description: Activate quasi-failsafe mode for hot EOSs

11                           10  x01  Default: no

11

11grhydroxeosxhotxprim2conxwarn 10Scope: restrictedx01  BOOLEAN

11Description: Warn about temperature workaround in prim2con

11                           10  x01  Default: yes

11

11grhydroxeosxrfxprec  10Scope: restrictedx01  REAL

11Description: Precision to which root finding should be carried out

11 Range 10 x01 Default: 1.0e-8
11(0.0:*  10anything larger than 0 goes

11

11grhydroxeosxtable  10Scope: restrictedx01  STRING

11Description: Name for the Equation of State

11 Range 10 x01 Default: IdealxFluid
11.*  10Can be anything

11

11grhydroxeosxtype  10Scope: restrictedx01  KEYWORD

11Description: Type of Equation of State

11 Range 10 x01 Default: General
11Polytype  10P = P(rho) or P = P(eps)
11General  10P = P(rho, eps)

11

11grhydroxepsxmin  10Scope: restrictedx01  REAL

11Description: Minimum value of specific internal energy - this is now only used in GRHydroxInitData’s GRHydroxOnlyxAtmo routine

11  Range  10  x01  Default: 1.e-10
110:  10Positive

11

11grhydroxhotxatmoxtemp  10Scope: restrictedx01  REAL

11Description: Temperature of the hot atmosphere in MeV

11 Range 10 x01 Default: 0.1e0
11(0.0:*  10Larger than 0 MeV

11

11grhydroxhotxatmoxyxe  10Scope: restrictedx01  REAL

11Description: Yxe of the hot atmosphere

11 Range 10 x01 Default: 0.5e0
110.0:*  10Larger than 0

11

11grhydroxhydroxexcision  10Scope: restrictedx01  INT

11Description: Turns excision automatically on in HydroBase

11 Range 10 x01 Default: 1
111:1  10Only ’1’ allowed

11

11grhydroxlorentzxovershootxcutoff 10Scope: restrictedx01  REAL

11Description: Set the Lorentz factor to this value in case it overshoots (1/0)

11 Range 10 x01 Default: 1.e100
110:*  10Some big value

11grhydroxmaxxtemp  10Scope: restrictedx01  REAL

11Description: maximum temperature we allow

11 Range 10 x01 Default: 90.0e0
11(0.0:*  10Larger than 0 MeV

11

11grhydroxmaxnumconstrainedvars 10Scope: restrictedx01  INT

11Description: The maximum number of constrained variables used by GRHydro

11 Range 10 x01 Default: 37
117:48  10A small range, depending on testing or not

11

11grhydroxmaxnumevolvedvars 10Scope: restrictedx01  INT

11Description: The maximum number of evolved variables used by GRHydro

11 Range 10 x01 Default: 5
11                           10when using multirate
115:12  10dens scon[3] tau (B/A)vec[3] psidc ye entropy Aphi

11

11grhydroxmaxnumevolvedvarsslow 10Scope: restrictedx01  INT

11Description: The maximum number of evolved variables used by GRHydro

11 Range 10 x01 Default: (none)
11                           10do not use multirate
115:12  10dens scon[3] tau (B/A)vec[3] psidc ye entropy Aphi

11

11grhydroxmaxnumsandrvars 10Scope: restrictedx01  INT

11Description: The maximum number of save and restore variables used by GRHydro

11 Range 10 x01 Default: 16
110:16  10A small range, depending on testing or not

11

11grhydroxnanxverbose  10Scope: restrictedx01  INT

11Description: The warning level for NaNs occuring within GRHydro

11 Range 10 x01 Default: 2
110:*  10The warning level

11

11grhydroxoppmxreflevel  10Scope: restrictedx01  INT

11Description: Ref level where oPPM is used instead of ePPM (used with usexenhacedxppm=yes).

11 Range 10 x01 Default: -1
11-1:10  100-10 (the reflevel number) or -1 (off)

11

11grhydroxpercxptol  10Scope: restrictedx01  REAL

11Description: Tolerance for primitive variable solve (percent)

11 Range 10 x01 Default: 1.e-8
110:  10Do we really want both tolerances?

11

11grhydroxpolish  10Scope: restrictedx01  INT

11Description: Number of extra iterations after root found

11 Range 10 x01 Default: (none)
110:*  10Must be non negative

11

11grhydroxrhoxcentral  10Scope: restrictedx01  REAL

11Description: Central Density for Star

11  Range  10  x01  Default: 1.e-5

11:  10

11grhydroxstencil  10Scope: restrictedx01  INT

11Description: Width of the stencil

11 Range 10 x01 Default: 2
110:  10Must be positive

11

11grhydroxyxexmax  10Scope: restrictedx01  REAL

11Description: maximum allowed Yxe

11 Range 10 x01 Default: 1.0
110.0:*  10Larger than or equal to zero; 1 is default

11

11grhydroxyxexmin  10Scope: restrictedx01  REAL

11Description: minimum allowed Yxe

11 Range 10 x01 Default: 0.0
110.0:*  10Larger than or equal to zero

11

11hllextype  10Scope: restrictedx01  KEYWORD

11Description: Which HLLE type to use

11 Range 10 x01 Default: Standard
11Standard  10Standard HLLE solver
11Tadmor  10Tadmor’s simplification of HLLE

11

11initialxatmospherexfactor  10Scope: restrictedx01  REAL

11Description: A relative (to the initial atmosphere) value for rho in the atmosphere. This is used at initial time only. Unused if negative.

11  Range  10  x01  Default: -1.0
11-1.0:  10

11

11initialxgamma  10Scope: restrictedx01  REAL

11Description: If changing Gamma, what was the value used in the initial data routine?

11 Range 10 x01 Default: 1.3333
11(0.0:  10Positive

11

11initialxk  10Scope: restrictedx01  REAL

11Description: If changing K, what was the value used in the initial data routine?

11 Range 10 x01 Default: 100.0
11(0.0:  10Positive

11

11initialxrhoxabsxmin  10Scope: restrictedx01  REAL

11Description: An absolute value for rho in the atmosphere. To be used by initial data routines only. Unused if negative.

11  Range  10  x01  Default: -1.0
11-1.0:  10

11

11initialxrhoxrelxmin  10Scope: restrictedx01  REAL

11Description: A relative (to the central density) value for rho in the atmosphere. To be used by initial data routines only. Unused if negative.

11  Range  10  x01  Default: -1.0
11-1.0:  10

11

11kapxdc  10Scope: restrictedx01  REAL

11Description: The kap parameter for divergence cleaning

11 Range 10 x01 Default: 10.0
110:*  10Any non-negative value, but 1.0 to 10.0 seems preferred

11leftxeigenvectors  10Scope: restrictedx01  KEYWORD

11Description: How to compute the left eigenvectors

11 Range 10 x01 Default: analytical
11analytical  10Analytical left eigenvectors
11numerical  10Numerical left eigenvectors

11

11maxxmagneticxtoxgasxpressurexratio 10Scope: restrictedx01  REAL

11Description: consider pressure to be magnetically dominated if magnetic pressure to gas pressure ratio is higher than this

11  Range  10  x01  Default: -1.0
11(0:*  10any positive value, eg. 100.
11-1.0  10disable

11

11methodxtype  10Scope: restrictedx01  KEYWORD

11Description: Which type of method to use

11 Range 10 x01 Default: RSA FV
11RSA FV  10”Reconstruct-Solve-A verage finite volume method”
11Flux Split FD  10Finite difference using Lax-Friedrichs flux splitting

11

11minxtracer  10Scope: restrictedx01  REAL

11Description: The floor placed on the tracer

11 Range 10 x01 Default: 0.0
11*:*  10Anything

11

11mp5xadaptivexeps  10Scope: restrictedx01  BOOLEAN

11Description: Same as WENO adaptive epsilon: adaptively reduce mp5xeps according to norm of stencil. Original algorithm does not use this.

11                           10  x01  Default: no

11

11mp5xalpha  10Scope: restrictedx01  REAL

11Description: alpha parameter for MP5 reconstruction

11 Range 10 x01 Default: 4.0
110:*  10positive

11

11mp5xeps  10Scope: restrictedx01  REAL

11Description: epsilon parameter for MP5 reconstruction

11 Range 10 x01 Default: 0.0
110:*  100.0 or very small and positive. 1e-10 is suggested by Suresh&Huynh. TOV star requires 0.0

11

11myfloor  10Scope: restrictedx01  REAL

11Description: A minimum number for the TVD reconstruction routine

11 Range 10 x01 Default: 1.e-10
110.0:  10Must be positive

11

11numberxofxarrays  10Scope: restrictedx01  INT

11Description: Number of arrays to evolve

11 Range 10 x01 Default: (none)
110:3  10Either zero or three, depending on the particles

11

11numberxofxparticles  10Scope: restrictedx01  INT

11Description: Number of particles to track

11 Range 10 x01 Default: (none)
110:*  100 switches off particle tracking

11numberxofxtracers  10Scope: restrictedx01  INT

11Description: Number of tracer variables to be advected

11 Range 10 x01 Default: (none)
110:*  10positive or zero

11

11numericalxviscosity  10Scope: restrictedx01  KEYWORD

11Description: How to compute the numerical viscosity

11 Range 10 x01 Default: fast
11fast  10Fast numerical viscosity
11normal  10Normal numerical viscosity

11

11particlexinterpolationxorder 10Scope: restrictedx01  INT

11Description: What order should be used for the particle interpolation

11 Range 10 x01 Default: 2
111:*  10A valid positive interpolation order

11

11particlexinterpolator  10Scope: restrictedx01  STRING

11Description: What interpolator should be used for the particles

11 Range 10 x01Default: Lagrange polynomial interpolation
11.+  10A valid interpolator name

11

11ppmxdetect  10Scope: restrictedx01  BOOLEAN

11Description: Should the PPM solver use shock detection?

11                           10  x01  Default: no

11

11ppmxepsilon  10Scope: restrictedx01  REAL

11Description: Epsilon for PPM zone flattening

11 Range 10 x01 Default: 0.33
110.0:  10Must be positive. Default is from Colella & Woodward

11

11ppmxepsilonxshock  10Scope: restrictedx01  REAL

11Description: Epsilon for PPM shock detection

11 Range 10 x01 Default: 0.01
11:  10Anything goes. Default is from Colella & Woodward

11

11ppmxeta1  10Scope: restrictedx01  REAL

11Description: Eta1 for PPM shock detection

11 Range 10 x01 Default: 20.0
11:  10Anything goes. Default is from Colella & Woodward

11

11ppmxeta2  10Scope: restrictedx01  REAL

11Description: Eta2 for PPM shock detection

11 Range 10 x01 Default: 0.05
11:  10Anything goes. Default is from Colella & Woodward

11

11ppmxflatten  10Scope: restrictedx01  KEYWORD

11Description: Which flattening procedure should the PPM solver use?

11 Range 10 x01 Default: stencilx3
11stencilx3  10our flattening procedure, which requires only stencil 3 and which may work
11stencilx4  10original C&W flattening procedure, which requires stencil 4

11ppmxk0  10Scope: restrictedx01  REAL

11Description: K0 for PPM shock detection

11 Range 10 x01 Default: 0.2
11:  10Anything goes. Default suggested by Colella & Woodward is: (polytropic constant)/10.0

11

11ppmxmppm  10Scope: restrictedx01  INT

11Description: Use modified (enhanced) ppm scheme

11 Range 10 x01 Default: (none)
110:1  100 (off, default) or 1 (on)

11

11ppmxmppmxdebugxeigenvalues10Scope: restrictedx01  INT

11Description: write eigenvalues into debug grid variables

11 Range 10 x01 Default: (none)
110:1  100 (off, default) or 1 (on)

11

11ppmxomega1  10Scope: restrictedx01  REAL

11Description: Omega1 for PPM zone flattening

11 Range 10 x01 Default: 0.75
11:  10Anything goes. Default is from Colella & Woodward

11

11ppmxomega2  10Scope: restrictedx01  REAL

11Description: Omega2 for PPM zone flattening

11 Range 10 x01 Default: 10.0
11:  10Anything goes. Default is from Colella & Woodward

11

11ppmxomegaxtracer  10Scope: restrictedx01  REAL

11Description: Omega for tracer PPM zone flattening

11 Range 10 x01 Default: 0.50
11:  10Anything goes. Default is from Plewa & Mueller

11

11ppmxsmall  10Scope: restrictedx01  REAL

11Description: A floor used by PPM shock detection

11 Range 10 x01 Default: 1.e-7
110.0:1.0  10In [0,1]

11

11psidcspeed  10Scope: restrictedx01  KEYWORD

11Description: Which speed to set for psidc

11 Range 10 x01 Default: light speed
11char speed  10Based on the characteristic speeds
11light speed  10Set the characteristic speeds to speed of light
11set speed  10”Manually set the characteristic speeds: [setcharmin,setcharm ax]”

11

11reconxmethod  10Scope: restrictedx01  KEYWORD

11Description: Which reconstruction method to use

11 Range 10 x01 Default: tvd
11tvd  10Slope limited TVD
11ppm  10PPM reconstruction
11eno  10ENO reconstruction
11weno  10WENO reconstruction
11weno-z  10WENO-Z reconstruction
11mp5  10MP5 reconstruction

11reconxvars  10Scope: restrictedx01  KEYWORD

11Description: Which type of variables to reconstruct

11 Range 10 x01 Default: primitive
11primitive  10Reconstruct the primitive variables
11conservative  10Reconstruct the conserved variables

11

11reconstructxtemper  10Scope: restrictedx01  BOOLEAN

11Description: if set to true, temperature will be reconstructed

11                           10  x01  Default: no

11

11reconstructxwv  10Scope: restrictedx01  BOOLEAN

11Description: Reconstruct the primitive velocity WxLorentz*vel, rather than just vel.

11                           10  x01  Default: no

11

11rhoxabsxmin  10Scope: restrictedx01  REAL

11Description: A minimum rho below which evolution is turned off (atmosphere). If negative, the relative minimum will be used instead.

11  Range  10  x01  Default: -1.0
11-1.0:  10

11

11rhoxabsxminxafterxrecovery 10Scope: restrictedx01  REAL

11Description: A new absolute value for rho in the atmosphere. To be used after recovering. Unused if negative.

11  Range  10  x01  Default: -1.0
11-1.0:  10

11

11rhoxrelxmin  10Scope: restrictedx01  REAL

11Description: A minimum relative rho (rhomin = centden * rhoxrelxmin) below which evolution is turned off (atmosphere). Only used if rhoxabsxmin < 0.0

11  Range  10  x01  Default: 1.e-9

110:  10

11

11riemannxsolver  10Scope: restrictedx01  KEYWORD

11Description: Which Riemann solver to use

11 Range 10 x01 Default: HLLE
11Roe  10Standard Roe solver
11Marquina  10Marquina flux
11HLLE  10HLLE
11HLLC  10HLLC
11LLF  10Local Lax-Friedrichs (MHD only at the moment)

11

11setxtrivialxrpxgridxfunction 10Scope: restrictedx01  INT

11Description: set gf for triv. rp (only for debugging)

11 Range 10 x01 Default: (none)
110:1  100 for no (default), 1 for yes

11

11setcharmax  10Scope: restrictedx01  REAL

11Description: Maximum characteristic speed for psidc if psidcspeed is set

11 Range 10 x01 Default: 1.0
110:1  10Any value smaller than speed of light

11

11setcharmin  10Scope: restrictedx01  REAL

11Description: Minimum characteristic speed for psidc if psidcspeed is set

11 Range 10 x01 Default: -1.0
11-1:0  10Any value smaller than speed of light - sign should be negative

11sourcesxspatialxorder  10Scope: restrictedx01  INT

11Description: Order of spatial differencing of the source terms

11 Range 10 x01 Default: 2
112  102nd order finite differencing
114  104th order finite differencing

11

11sqrtdetxthr  10Scope: restrictedx01  REAL

11Description: Threshold to apply cons rescalings deep inside the horizon

11 Range 10 x01 Default: -1.0
111.0:  10Larger values guarantees this sort of rescaling only deep inside the horizon
11-1.0  10Do not apply limit

11

11syncxconservedxonly  10Scope: restrictedx01  BOOLEAN

11Description: Only sync evolved conserved quantities during evolution.

11                           10  x01  Default: no

11

11tauxrelxmin  10Scope: restrictedx01  REAL

11Description: A minimum relative tau (taumin = maxtau(t=0) * tauxrelxmin) below which tau is reschaled

11  Range  10  x01  Default: 1.e-10

110:  10

11

11tmunuxdampingxradiusxmax 10Scope: restrictedx01  REAL

11Description: damping radius at which Tmunu becomes 0

11 Range 10 x01 Default: -1
11-1  10damping switched off
110:*  10greater than minimum radius above

11

11tmunuxdampingxradiusxmin 10Scope: restrictedx01  REAL

11Description: damping radius at which we start to damp with a tanh function

11 Range 10 x01 Default: -1
11-1  10damping switched off
110:*  10damping radius at which we start to damp

11

11trackxdivb  10Scope: restrictedx01  BOOLEAN

11Description: Track the magnetic field constraint violations

11                           10  x01  Default: no

11

11transportxconstraints  10Scope: restrictedx01  BOOLEAN

11Description: Use constraint transport for magnetic field

11                           10  x01  Default: no

11

11tvdxlimiter  10Scope: restrictedx01  KEYWORD

11Description: Which slope limiter to use

11 Range 10 x01 Default: minmod
11minmod  10Minmod
11vanleerMC2  10Van Leer MC - Luca
11Superbee  10Superbee

11

11usexenhancedxppm  10Scope: restrictedx01  BOOLEAN

11Description: Use the enhanced ppm reconstruction method proposed by Colella & Sekora 2008 and McCorquodale & Colella 2011

11                           10  x01  Default: no

11usexevolutionxmask  10Scope: restrictedx01  KEYWORD

11Description: Set this to ’always’ to skip validity tests in regions where CarpetEvolutionMask::evolutionxmask vanishes.

11  Range  10  x01  Default: never
11always  10use the mask
11auto  10check if CarpetEvolutionMask is active, then use the mask
11never  10do not use the mask

11

11usexminxtracer  10Scope: restrictedx01  BOOLEAN

11Description: Should there be a floor on the tracer?

11                           10  x01  Default: no

11

11usexmolxslowxmultiratexsector 10Scope: restrictedx01  BOOLEAN

11Description: Whether to make use of MoL’s slow multirate sector

11                           10  x01  Default: no

11

11usexoptimizedxppm  10Scope: restrictedx01  BOOLEAN

11Description: use C++ templated version of PPM. Experimental

11                           10  x01  Default: no

11

11usexweightedxfluxes  10Scope: restrictedx01  BOOLEAN

11Description: Weight the flux terms by the cell surface areas

11                           10  x01  Default: no

11

11wenoxadaptivexepsilon  10Scope: restrictedx01  BOOLEAN

11Description: use modified smoothness indicators that take into account scale of solution (adaptive epsilon)

11                           10  x01  Default: yes

11

11wenoxeps  10Scope: restrictedx01  REAL

11Description: WENO epsilon parameter. For WENO-z, 1e-40 is recommended

11 Range 10 x01 Default: 1e-26
110:*  10small and positive

11

11wenoxorder  10Scope: restrictedx01  INT

11Description: The order of accuracy of the WENO reconstruction

11 Range 10 x01 Default: 5
115  10Fifth-order

11

11wkxatmosphere  10Scope: restrictedx01  BOOLEAN

11Description: Use some of Wolfgang Kastauns atmosphere tricks

11                           10  x01  Default: no

11

11usexmask  10Scope: shared from SPACEMASKx01BOOLEAN

11 Interfaces

General Implements: grhydro

Inherits: admbase boundary spacemask tmunubase hydrobase

Grid Variables

11.0.1 PRIVATE GROUPS

11 x Group Names x 10 x Variable Names x x01 Details x11x
11 inlastmolpoststep 10 InLastMoLPostStep x01  compact110
11                     10  x01 description11Flag to indicate if we are currently in the last MoLxPostStep
11                     10  x01 dimensions110
11                     10  x01 distribution11CONSTANT
11                     10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                     10  x01 timelevels111
11                     10  x01variable type11INT
11 executexmolxstep 10 executexMoLxStep x01  compact110
11                     10  x01 description11Flag indicating whether we use the slow sector of multirate RK time integration
11                     10  x01 dimensions110
11                     10  x01 distribution11CONSTANT
11                     10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                     10  x01 timelevels111
11                     10  x01variable type11INT
11 executexmolxpoststep 10executexMoLxPostStepx01  compact110
11                     10  x01 description11Flag indicating whether we use the slow sector of multirate RK time integration
11                     10  x01 dimensions110
11                     10  x01 distribution11CONSTANT
11                     10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                     10  x01 timelevels111
11                     10  x01variable type11INT
11 grhydroxconxbext 10  x01  compact110
11                     10  densplus  x01 description11Conservative variables extended to the cell boundaries
11                     10  sxplus  x01 dimensions113
11                     10  syplus  x01 distribution11DEFAULT
11                     10  szplus  x01 group type11GF
11                     10  tauplus  x01  tags11Prolongation=”None” checkpoint=”no”
11                     10  densminus  x01 timelevels111
11                     10  sxminus  x01variable type11REAL
11 grhydroxmhdxconxbext 10  x01  compact110
11                     10  Bconsxplus  x01 description11Conservative variables extended to the cell boundaries
11                     10  Bconsyplus  x01 dimensions113
11                     10  Bconszplus  x01 distribution11DEFAULT
11                     10  Bconsxminus  x01 group type11GF
11                     10  Bconsyminus  x01  tags11Prolongation=”None” checkpoint=”no”
11                     10  Bconszminus  x01 timelevels111
11                     10  x01variable type11REAL
11grhydroxmhdxprimxbext10  x01  compact110
11                     10  Bvecxplus  x01 description11Primitive mhd variables extended to the cell boundaries
11                     10  Bvecyplus  x01 dimensions113
11                     10  Bveczplus  x01 distribution11DEFAULT
11                     10  Bvecxminus  x01 group type11GF
11                     10  Bvecyminus  x01  tags11Prolongation=”None” checkpoint=”no”
11                     10  Bveczminus  x01 timelevels111
11                     10  x01variable type11REAL

11 x Group Names x 10x Variable Names xx01 Details x11x
11  grhydroxavecxbext  10  x01  compact110
11                       10  Avecxplus  x01 description11Vector potential extended to the cell boundaries
11                       10  Avecyplus  x01 dimensions113
11                       10  Aveczplus  x01 distribution11DEFAULT
11                       10  Avecxminus  x01 group type11GF
11                       10  Avecyminus  x01  tags11Prolongation=”None” checkpoint=”no”
11                       10  Aveczminus  x01 timelevels111
11                       10  x01variable type11REAL
11  grhydroxaphixbext  10  x01  compact110
11                       10  Aphiplus  x01 description11Vector potential phi extended to the cell boundaries
11                       10  Aphiminus  x01 dimensions113
11                       10  x01 distribution11DEFAULT
11                       10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                       10  x01 timelevels111
11                       10  x01variable type11REAL
11 grhydroxmhdxpsidcxbext 10  x01  compact110
11                       10  psidcplus  x01 description11Divergence cleaning variable extended to the cell boundaries for diverence cleaning
11                       10  psidcminus  x01 dimensions113
11                       10  x01 distribution11DEFAULT
11                       10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                       10  x01 timelevels111
11                       10  x01variable type11REAL
11grhydroxentropyxprimxbext10  x01  compact110
11                       10  entropyplus  x01 description11Primitive entropy extended to the cell boundaries
11                       10 entropyminus x01 dimensions113
11                       10  x01 distribution11DEFAULT
11                       10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                       10  x01 timelevels111
11                       10  x01variable type11REAL
11 grhydroxentropyxconxbext 10 x01 compact110
11                       10 entropyconsplus x01 description11Conservative entropy extended to the cell boundaries
11                       10 entropyconsminus x01 dimensions113
11                       10  x01 distribution11DEFAULT
11                       10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                       10  x01 timelevels111
11                       10  x01variable type11REAL
11 whichpsidcspeed 10 whichpsidcspeed x01 compact110
11                       10  x01 description11Which speed to set for psidc? Set in ParamCheck
11                       10  x01 dimensions110
11                       10  x01 distribution11CONSTANT
11                       10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                       10  x01 timelevels111
11                       10  x01variable type11INT

11 x Group Names x 10 x Variable Names x x01 Details x11x
11  grhydroxcoords  10  x01  compact110
11                        10  GRHydroxx  x01 description11Coordinates to use with the comoving shift
11                        10  GRHydroxy  x01 dimensions113
11                        10  GRHydroxz  x01 distribution11DEFAULT
11                        10  x01 group type11GF
11                        10  x01 timelevels113
11                        10  x01variable type11REAL
11 grhydroxcoordsxrhs 10  x01  compact110
11                        10  GRHydroxxxrhs  x01 description11RHS for coordinates to use with the comoving shift
11                        10  GRHydroxyxrhs  x01 dimensions113
11                        10  GRHydroxzxrhs  x01 distribution11DEFAULT
11                        10  x01 group type11GF
11 10 x01 tags11Prolongation=”None”
11                        10  x01 timelevels111
11                        10  x01variable type11REAL
11grhydroxtrivialxrpxgfxgroup10 x01 compact110
11                        10GRHydroxtrivialxrpxgfxxx01 description11set gf for triv. rp (only for debugging)
11                        10GRHydroxtrivialxrpxgfxyx01 dimensions113
11                        10GRHydroxtrivialxrpxgfxzx01 distribution11DEFAULT
11                        10  x01 group type11GF
11 10 x01 tags11Prolongation=”None”
11                        10  x01 timelevels111
11                        10  x01variable type11INT
11  fluxxsplitting  10  x01  compact110
11                        10  densfplus  x01 description11Fluxes for use in the flux splitting
11                        10  densfminus  x01 dimensions113
11                        10  sxfplus  x01 distribution11DEFAULT
11                        10  sxfminus  x01 group type11GF
11                        10  syfplus  x01  tags11Prolongation=”None” checkpoint=”no”
11                        10  syfminus  x01 timelevels111
11                        10  szfplus  x01variable type11REAL
11  fsxalpha  10  x01  compact110
11                        10  fsxalpha1  x01 description11Maximum characteristic speeds for the flux splitting
11                        10  fsxalpha2  x01 dimensions110
11                        10  fsxalpha3  x01 distribution11CONSTANT
11                        10  fsxalpha4  x01 group type11SCALAR
11                        10  fsxalpha5  x01 timelevels111
11                        10  x01variable type11REAL
11 yxexplus 10 Yxexplus x01 compact110
11                        10  x01 description11Plus state for the electron fraction
11                        10  x01 dimensions113
11                        10  x01 distribution11DEFAULT
11                        10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                        10  x01 timelevels111
11                        10  x01variable type11REAL

11 x Group Names x 10x Variable Names xx01 Details x11x
11 yxexminus 10 Yxexminus x01 compact110
11                      10  x01 description11Minus state for the electron fraction
11                      10  x01 dimensions113
11                      10  x01 distribution11DEFAULT
11                      10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                      10  x01 timelevels111
11                      10  x01variable type11REAL
11 tempplus 10 tempplus x01 compact110
11                      10  x01 description11Plus state for the temperature
11                      10  x01 dimensions113
11                      10  x01 distribution11DEFAULT
11                      10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                      10  x01 timelevels111
11                      10  x01variable type11REAL
11 tempminus 10 tempminus x01 compact110
11                      10  x01 description11Minus state for the temperature
11                      10  x01 dimensions113
11                      10  x01 distribution11DEFAULT
11                      10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                      10  x01 timelevels111
11                      10  x01variable type11REAL
11 grhydroxtracerxrhs 10 x01 compact110
11                      10 consxtracerrhs x01 description11RHS for the tracer
11                      10  x01 dimensions113
11                      10  x01 distribution11DEFAULT
11                      10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                      10  x01 timelevels111
11                      10  x01vararrayxsize11numberxofxtracers
11                      10  x01variable type11REAL
11 grhydroxtracerxflux 10 x01 compact110
11                      10 consxtracerflux x01 description11Flux for the tracer
11                      10  x01 dimensions113
11                      10  x01 distribution11DEFAULT
11                      10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                      10  x01 timelevels111
11                      10  x01vararrayxsize11numberxofxtracers
11                      10  x01variable type11REAL
11grhydroxtracerxconsxbext10 x01 compact110
11                      10 consxtracerplus x01 description11Cell boundary values for the tracer
11                      10 consxtracerminus x01 dimensions113
11                      10  x01 distribution11DEFAULT
11                      10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                      10  x01 timelevels111
11                      10  x01vararrayxsize11numberxofxtracers
11                      10  x01variable type11REAL

11 x Group Names x 10  x Variable Names x  x01 Details x11x
11 grhydroxtracerxprimxbext 10  x01  compact110
11                        10  tracerplus  x01 description11Primitive cell boundary values for the tracer
11                        10  tracerminus  x01 dimensions113
11                        10  x01 distribution11DEFAULT
11                        10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                        10  x01 timelevels111
11                        10  x01vararrayxsize11numberxofxtracers
11                        10  x01variable type11REAL
11grhydroxtracerxfluxxsplitting10  x01  compact110
11                        10  tracerfplus  x01 description11Flux splitting for the tracer
11                        10  tracerfminus  x01 dimensions113
11                        10  x01 distribution11DEFAULT
11                        10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                        10  x01 timelevels111
11                        10  x01vararrayxsize11numberxofxtracers
11                        10  x01variable type11REAL
11 grhydroxmppmxeigenvalues 10 x01 compact110
11                        10 GRHydroxmppmxeigenvaluexxxleft x01 description11debug variable for flux eigenvalues in mppm
11                        10GRHydroxmppmxeigenvaluexxxrightx01 dimensions113
11                        10 GRHydroxmppmxeigenvaluexyxleft x01 distribution11DEFAULT
11                        10GRHydroxmppmxeigenvaluexyxrightx01 group type11GF
11                        10 GRHydroxmppmxeigenvaluexzxleft x01  tags11Prolongation=”None” checkpoint=”no”
11                        10GRHydroxmppmxeigenvaluexzxrightx01 timelevels111
11                        10  GRHydroxmppmxxwind  x01variable type11REAL
11  particles  10  x01  compact110
11                        10  particlexx  x01 description11Coordinates of particles to be tracked
11                        10  particlexy  x01 dimensions111
11                        10  particlexz  x01 distribution11DEFAULT
11                        10  x01 ghostsize110
11                        10  x01 group type11ARRAY
11 10 x01 size11NUMBERxOFxPARTICLES
11                        10  x01 timelevels113
11                        10  x01variable type11REAL
11  particlexrhs  10  x01  compact110
11                        10  particlexxxrhs  x01 description11RHS functions for particles to be tracked
11                        10  particlexyxrhs  x01 dimensions111
11                        10  particlexzxrhs  x01 distribution11DEFAULT
11                        10  x01 ghostsize110
11                        10  x01 group type11ARRAY
11 10 x01 size11NUMBERxOFxPARTICLES
11                        10  x01 timelevels111
11                        10  x01variable type11REAL
11  particlexarrays  10  x01  compact110
11                        10  particlexvx  x01 description11Temporaries to hold interpolated values for particle tracking
11                        10  particlexvy  x01 dimensions111
11                        10  particlexvz  x01 distribution11DEFAULT
11                        10  particlexalp  x01 ghostsize110
11                        10  particlexbetax  x01 group type11ARRAY
11                        10  particlexbetay  x01  size11NUMBERxOFxPARTICLES
11                        10  particlexbetaz  x01  tags11checkpoint=”no”
11                        10  x01 timelevels111
11                        10  x01variable type11REAL

11 x Group Names x 10 x Variable Names x x01 Details x11x
11 grhydroxmaximaxlocation 10  x01  compact110
11                        10  maximaxi  x01 description11The location (point index) of the maximum value of rho
11                        10  maximaxj  x01 dimensions110
11                        10  maximaxk  x01 distribution11CONSTANT
11                        10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                        10  x01 timelevels111
11                        10  x01variable type11REAL
11 grhydroxmaximaxiteration 10GRHydroxmaximaxiterationx01  compact110
11                        10  x01 description11Iteration on which maximum was last set
11                        10  x01 dimensions110
11                        10  x01 distribution11CONSTANT
11                        10  x01 group type11SCALAR
11                        10  x01 timelevels111
11                        10  x01variable type11INT
11grhydroxmaximaxseparation10 x01 compact110
11                        10 GRHydroxseparation x01 description11The distance between the centres (locations of maximum density) of a binary NS
11                        10GRHydroxproperxseparationx01 dimensions110
11                        10  x01 distribution11CONSTANT
11                        10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                        10  x01 timelevels111
11                        10  x01variable type11REAL
11 diffrho 10 DiffRho x01 compact110
11                        10  x01 description11The first difference in rho
11                        10  x01 dimensions113
11                        10  x01 distribution11DEFAULT
11                        10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                        10  x01 timelevels111
11                        10  x01variable type11REAL
11  eosxtemps  10  x01  compact110
11                        10  eosxcs2xp  x01 description11Temporaries for the EOS calls
11                        10  eosxcs2xm  x01 dimensions113
11                        10  eosxdpdepsxp  x01 distribution11DEFAULT
11                        10  eosxdpdepsxm  x01 group type11GF
11                        10  x01  tags11Prolongation=”None” checkpoint=”no”
11                        10  x01 timelevels111
11                        10  x01variable type11REAL
11  roeaveragextemps  10  x01  compact110
11                        10  rhoxave  x01 description11Temporaries for the Roe solver
11                        10  velxxave  x01 dimensions113
11                        10  velyxave  x01 distribution11DEFAULT
11                        10  velzxave  x01 group type11GF
11                        10  epsxave  x01  tags11Prolongation=”None” checkpoint=”no”
11                        10  pressxave  x01 timelevels111
11                        10  eosxcs2xave  x01variable type11REAL

11

11x Group Names x10x Variable Names xx01 Details x11x
11 con2primxtemps 10  x01  compact110
11                 10  pressxold  x01 description11Temporaries for the conservative to primitive conversion
11                 10  pressxnew  x01 dimensions113
11                 10 eosxdpdepsxtemp x01 distribution11DEFAULT
11                 10 eosxdpdrhoxtemp x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 hxviscosityxtemps 10  x01  compact110
11                 10  eosxc  x01 description11Temporaries for H viscosity
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL

11.0.2 PUBLIC GROUPS

11x Group Names x10 x Variable Names x x01 Details x11x
11 grhydroxeosxscalars 10 x01 compact110
11                 10 GRHydroxeosxhandle x01 description11Handle number for EOS
11                 10GRHydroxpolytropexhandlex01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11                 10  x01 timelevels111
11                 10  x01variable type11INT
11 grhydroxminima 10 x01 compact110
11                 10 GRHydroxrhoxmin x01 description11Atmosphere values
11                 10 GRHydroxtauxmin x01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 dens 10 dens x01 compact110
11                 10  x01 description11generalized particle number
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar” tensorweight=+1.0 jacobian=”inversexjacobian” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01variable type11REAL
11 tau 10 tau x01 compact110
11                 10  x01 description11internal energy
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar” tensorweight=+1.0 jacobian=”inversexjacobian” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01variable type11REAL
11 scon 10 scon x01 compact110
11                 10  x01 description11generalized momenta
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”D” tensorweight=+1.0 jacobian=”inversexjacobian” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01vararrayxsize113
11                 10  x01variable type11REAL
11 bcons 10 Bcons x01 compact110
11                 10  x01 description11B-field conservative variable
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”U” tensorparity=-1 tensorweight=+1.0 jacobian=”jacobian” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01vararrayxsize113
11                 10  x01variable type11REAL

11x Group Names x10x Variable Names xx01 Details x11x
11 evec 10 Evec x01 compact110
11                 10  x01 description11Electric field at edges
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”U” tensorweight=+1.0 jacobian=”jacobian” interpolator=”matter”
11                 10  x01 timelevels111
11                 10  x01vararrayxsize113
11                 10  x01variable type11REAL
11 yxexcon 10 Yxexcon x01 compact110
11                 10  x01 description11Conserved electron fraction
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar” tensorweight=+1.0 jacobian=”inversexjacobian” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01variable type11REAL
11 entropycons 10 entropycons x01 compact110
11                 10  x01 description11Conserved entropy density
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar” tensorweight=+1.0 jacobian=”inversexjacobian” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01variable type11REAL
11 grhydroxtracers 10  x01  compact110
11                 10  tracer  x01 description11Tracers
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar”
11                 10  x01 timelevels113
11                 10  x01vararrayxsize11numberxofxtracers
11                 10  x01variable type11REAL
11 sdetg 10 sdetg x01 compact110
11                 10  x01 description11Sqrt of the determinant of the 3-metric
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” tensortypealias=”Scalar” tensorweight=+1.0 interpolator=”matter” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 psidc 10 psidc x01 compact110
11                 10  x01 description11Psi parameter for divergence cleaning
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar” tensorweight=+1.0 tensorparity=-1 jacobian=”inversexjacobian” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01variable type11REAL

11x Group Names x10x Variable Names xx01 Details x11x
11 densrhs 10 densrhs x01 compact110
11                 10  x01 description11Update term for dens
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 taurhs 10 taurhs x01 compact110
11                 10  x01 description11Update term for tau
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 srhs 10 srhs x01 compact110
11                 10  x01 description11Update term for s
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01vararrayxsize113
11                 10  x01variable type11REAL
11 bconsrhs 10 Bconsrhs x01 compact110
11                 10  x01 description11Update term for Bcons
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01vararrayxsize113
11                 10  x01variable type11REAL
11 avecrhs 10 Avecrhs x01 compact110
11                 10  x01 description11Update term for Avec
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01vararrayxsize113
11                 10  x01variable type11REAL
11 aphirhs 10 Aphirhs x01 compact110
11                 10  x01 description11Update term for Aphi
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL

11x Group Names x10x Variable Names xx01 Details x11x
11 psidcrhs 10 psidcrhs x01 compact110
11                 10  x01 description11Update term for psidc
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 entropyrhs 10 entropyrhs x01 compact110
11                 10  x01 description11Update term for entropycons
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 divb 10 divB x01 compact110
11                 10  x01 description11Magnetic field constraint
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”Restrict” checkpoint=”no” tensorparity=-1
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 bcom 10 bcom x01 compact110
11                 10  x01 description11bx: comoving contravariant magnetic field 4-vector spatial components
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”U” tensorparity=-1 interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01vararrayxsize113
11                 10  x01variable type11REAL
11 bcom0 10 bcom0 x01 compact110
11                 10  x01 description11bˆ0 component of the comoving contravariant magnetic field 4-vector
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01variable type11REAL
11 bcomxsq 10 bcomxsq x01 compact110
11                 10  x01 description11half of magnectic pressure: contraction of bxa bx
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar” interpolator=”matter”
11                 10  x01 timelevels113
11                 10  x01variable type11REAL

11 x Group Names x 10x Variable Names xx01 Details x11x
11 lvel 10 lvel x01 compact110
11                     10  x01 description11local velocity vx
11                     10  x01 dimensions113
11                     10  x01 distribution11DEFAULT
11                     10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”U” jacobian=”jacobian” interpolator=”matter”
11                     10  x01 timelevels113
11                     10  x01vararrayxsize113
11                     10  x01variable type11REAL
11 lbvec 10 lBvec x01 compact110
11                     10  x01 description11local Magnetic field components Bx
11                     10  x01 dimensions113
11                     10  x01 distribution11DEFAULT
11                     10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”U” jacobian=”jacobian” tensorparity=-1 interpolator=”matter”
11                     10  x01 timelevels113
11                     10  x01vararrayxsize113
11                     10  x01variable type11REAL
11  localxmetric  10  x01  compact110
11                     10  gaa  x01 description11local ADM metric gxij
11                     10  gab  x01 dimensions113
11                     10  gac  x01 distribution11DEFAULT
11                     10  gbb  x01 group type11GF
11                     10  gbc  x01  tags11Prolongation=”None” checkpoint=”no”
11                     10  gcc  x01 timelevels113
11                     10  x01variable type11REAL
11localxextrinsicxcurvature10  x01  compact110
11                     10  kaa  x01 description11local extrinsic curvature Kxij
11                     10  kab  x01 dimensions113
11                     10  kac  x01 distribution11DEFAULT
11                     10  kbb  x01 group type11GF
11                     10  kbc  x01  tags11Prolongation=”None” checkpoint=”no”
11                     10  kcc  x01 timelevels111
11                     10  x01variable type11REAL
11  localxshift  10  x01  compact110
11                     10  betaa  x01 description11local ADM shift \betax
11                     10  betab  x01 dimensions113
11                     10  betac  x01 distribution11DEFAULT
11                     10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                     10  x01 timelevels111
11                     10  x01variable type11REAL
11 grhydroxprimxbext 10  x01  compact110
11                     10  rhoplus  x01 description11Primitive variables extended to the cell boundaries
11                     10  velxplus  x01 dimensions113
11                     10  velyplus  x01 distribution11DEFAULT
11                     10  velzplus  x01 group type11GF
11                     10  pressplus  x01  tags11Prolongation=”None” checkpoint=”no”
11                     10  epsplus  x01 timelevels111
11                     10 wxlorentzplus x01variable type11REAL

11  x Group Names x  10 x Variable Names x x01 Details x11x
11  grhydroxscalars  10  x01  compact110
11                           10  fluxxdirection  x01 description11Which direction are we taking the fluxes in and the offsets
11                           10  xoffset  x01 dimensions110
11                           10  yoffset  x01 distribution11CONSTANT
11                           10  zoffset  x01 group type11SCALAR
11                           10  x01  tags11checkpoint=”no”
11                           10  x01 timelevels111
11                           10  x01variable type11INT
11 grhydroxatmospherexmask 10  x01  compact110
11                           10  atmospherexmask  x01 description11Flags to say whether a point needs to be reset to the atmosphere
11                           10  x01 dimensions113
11                           10  x01 distribution11DEFAULT
11                           10  x01 group type11GF
11 10 x01 tags11Prolongation=”None”
11                           10  x01 timelevels111
11                           10  x01variable type11INT
11 grhydroxatmospherexmaskxreal 10 x01 compact110
11                           10 atmospherexmaskxreal x01 description11Flags to say whether a point needs to be reset to the atmosphere. This is sync’ed (and possibly interpolated)!
11                           10  x01 dimensions113
11                           10  x01 distribution11DEFAULT
11                           10  x01 group type11GF
11 10 x01 tags11Prolongation=”sync” checkpoint=”no”
11                           10  x01 timelevels111
11                           10  x01variable type11REAL
11grhydroxatmospherexdescriptors10 x01 compact110
11                           10 atmospherexfieldxdescriptor x01 dimensions110
11                           10atmospherexatmospxdescriptorx01 distribution11CONSTANT
11                           10atmospherexnormalxdescriptorx01 group type11SCALAR
11                           10  x01 timelevels111
11                           10  x01variable type11INT
11  grhydroxconsxtracers  10  x01  compact110
11                           10  consxtracer  x01 description11The conserved tracer variable
11                           10  x01 dimensions113
11                           10  x01 distribution11DEFAULT
11                           10  x01 group type11GF
11 10 x01 tags11ProlongationParameter=”HydroBase::prolongationxtype” tensortypealias=”Scalar”
11                           10  x01 timelevels113
11                           10  x01vararrayxsize11numberxofxtracers
11                           10  x01variable type11REAL
11 grhydroxmaximaxposition 10  x01  compact110
11                           10  maximaxx  x01 description11The position (coordinate values) of the maximum value of rho
11                           10  maximaxy  x01 dimensions110
11                           10  maximaxz  x01 distribution11CONSTANT
11                           10  maximumxdensity  x01 group type11SCALAR
11                           10  x01  tags11checkpoint=”no”
11                           10  x01 timelevels111
11                           10  x01variable type11REAL

11 x Group Names x 10x Variable Names xx01 Details x11x
11 maxrhoxglobal 10 maxrhoxglobal x01  compact110
11                  10  x01 description11store the global maximum of rho
11 10 x x01 description11for refinment-grid steering
11                  10  x01 dimensions110
11                  10  x01 distribution11CONSTANT
11                  10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                  10  x01 timelevels111
11                  10  x01variable type11REAL
11 grhydroxc2pxfailed 10GRHydroxC2Pxfailedx01  compact110
11                  10  x01 description11Mask that stores the points where C2P has failed
11                  10  x01 dimensions113
11                  10  x01 distribution11DEFAULT
11                  10  x01 group type11GF
11 10 x01 tags11Prolongation=”restrict” tensortypealias=”Scalar” checkpoint=”no”
11                  10  x01 timelevels111
11                  10  x01variable type11REAL
11 grhydroxfluxes 10  x01  compact110
11                  10  densflux  x01 description11Fluxes for each conserved variable
11                  10  sxflux  x01 dimensions113
11                  10  syflux  x01 distribution11DEFAULT
11                  10  szflux  x01 group type11GF
11                  10  tauflux  x01  tags11Prolongation=”None” checkpoint=”no”
11                  10  x01 timelevels111
11                  10  x01variable type11REAL
11 grhydroxbfluxes 10  x01  compact110
11                  10  Bconsxflux  x01 description11Fluxes for each B-field variable
11                  10  Bconsyflux  x01 dimensions113
11                  10  Bconszflux  x01 distribution11DEFAULT
11                  10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                  10  x01 timelevels111
11                  10  x01variable type11REAL
11 grhydroxpsifluxes 10  x01  compact110
11                  10  psidcflux  x01 description11Fluxes for the divergence cleaning parameter
11                  10  x01 dimensions113
11                  10  x01 distribution11DEFAULT
11                  10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                  10  x01 timelevels111
11                  10  x01variable type11REAL
11grhydroxentropyfluxes10  x01  compact110
11                  10  entropyflux  x01 description11Fluxes for the conserved entropy density
11                  10  x01 dimensions113
11                  10  x01 distribution11DEFAULT
11                  10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                  10  x01 timelevels111
11                  10  x01variable type11REAL

11x Group Names x10x Variable Names xx01 Details x11x
11 grhydroxavecfluxes 10  x01  compact110
11                 10  Avecxflux  x01 description11Fluxes for each Avec variable
11                 10  Avecyflux  x01 dimensions113
11                 10  Aveczflux  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 grhydroxaphifluxes 10  x01  compact110
11                 10  Aphiflux  x01 description11Fluxes for Aphi
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 evolvexyxe 10 evolvexYxe x01 compact110
11                 10  x01 description11Are we evolving Yxe? Set in Paramcheck
11                 10  x01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11INT
11 evolvextemper 10 evolvextemper x01  compact110
11                 10  x01 description11Are we evolving temperature? Set in Paramcheck
11                 10  x01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11INT
11 evolvexentropy 10 evolvexentropy x01  compact110
11                 10  x01 description11Are we evolving entropy? Set in Paramcheck
11                 10  x01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11INT
11 evolvexmhd 10 evolvexMHD x01 compact110
11                 10  x01 description11Are we doing MHD? Set in ParamCheck
11                 10  x01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11INT

11x Group Names x10x Variable Names xx01 Details x11x
11 evolvexlorenzxgge 10 evolvexLorenzxgge x01  compact110
11                 10  x01 description11Are we evolving the Lorenz gauge?
11                 10  x01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11INT
11 grhydroxreflevel 10 GRHydroxreflevel x01  compact110
11                 10  x01 description11Refinement level GRHydro is working on right now
11                 10  x01 dimensions110
11                 10  x01 distribution11CONSTANT
11                 10  x01 group type11SCALAR
11 10 x01 tags11checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11INT
11 yxexconxrhs 10 Yxexconxrhs x01 compact110
11                 10  x01 description11RHS for the electron fraction
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL
11 yxexconxflux 10 Yxexconxflux x01  compact110
11                 10  x01 description11Flux for the electron fraction
11                 10  x01 dimensions113
11                 10  x01 distribution11DEFAULT
11                 10  x01 group type11GF
11 10 x01 tags11Prolongation=”None” checkpoint=”no”
11                 10  x01 timelevels111
11                 10  x01variable type11REAL

11

Uses header: SpaceMask.h carpet.hh

Provides: SpatialDet to UpperMet to Con2PrimPoly to Con2PrimGenM to Con2PrimGenMee to Con2PrimGen to Con2PrimPolyM to Prim2ConGen to Prim2ConPoly to Prim2ConGenM to Prim2ConGenMxhot to Prim2ConPolyM to

12 Schedule This section lists all the variables which are assigned storage by thorn EinsteinEvolve/GRHydro. Storage can either last for the duration of the run (Always means that if this thorn is activated storage will be assigned, Conditional means that if this thorn is activated storage will be assigned for the duration of the run if some condition is met), or can be turned on for the duration of a schedule function.

Storage

11Always:  11Conditional:
11executexMoLxStep  11executexMoLxPostStep
11evolvexMHD  11HydroBase::temperature[timelevels]
11evolvexYxe  11HydroBase::entropy[timelevels]
11evolvextemper  11HydroBase::Bvec[timelevels]
11GRHydroxreflevel  11GRHydro::Bcons[timelevels]
11InLastMoLPostStep 11Bconsrhs
11sdetg  11psidc[timelevels]
11densrhs  11HydroBase::Bvec[timelevels]
11taurhs  11HydroBase::Avec[timelevels]
11srhs  11HydroBase::Aphi[timelevels]
11GRHydroxC2Pxfailed[1]11dens[timelevels]
11x  11Bconsrhs
11x  11psidcrhs
11x  11tau[timelevels]
11x  11whichpsidcspeed
11x  11divB
11x  11GRHydro::bcom[timelevels]
11x  11GRHydro::bcom0[timelevels]
11x  11GRHydro::bcomxsq[timelevels]
11x  11Avecrhs
11x  11evolvexLorenzxgge
11x  11Aphirhs
11x  11divB
11x  11GRHydro::bcom[timelevels]
11x  11scon[timelevels]
11x  11GRHydro::bcom0[timelevels]
11x  11GRHydro::bcomxsq[timelevels]
11x  11HydroBase::entropy[timelevels]
11x  11GRHydro::entropycons[timelevels]
11x  11entropyrhs
11x  11evolvexMHD
11x  11evolvexYxe
11x  11evolvextemper
11x  11evolvexentropy
11x  11GRHydroxreflevel
11x  11particles[timelevels]
11x  11InLastMoLPostStep
11x  11densrhs
11x  11taurhs
11x  11srhs
11x  11GRHydroxeosxscalars
11x  11GRHydroxminima
11x  11GRHydroxscalars
11x  11particlexrhs
11x  11particlexarrays
11x  11GRHydroxtracers[timelevels]
11x  11Yxexcon[timelevels]
11x  11GRHydroxconsxtracers[timelevels]
11x  11GRHydroxtracerxrhs
11x  11Evec
11x  11ADMBase::metric[timelevels] ADMBase::curv[timelevels]
11x  11ADMBase::lapse[timelevels]
11x  11ADMBase::shift[timelevels]
11x  11GRHydroxcoords[timelevels]
11x  11GRHydroxcoordsxrhs
11x  11lvel[timelevels]
11x  11lBvec[timelevels]
11x  11Yxexconxrhs Yxexconxflux Yxexplus Yxexminus
11x  11localxmetric[timelevels]
11x  11localxextrinsicxcurvature
11x  11localxshift
11x  11Hxviscosityxtemps
11x  11GRHydroxatmospherexmask
11x  11GRHydroxatmospherexmaskxreal
11x  11GRHydroxatmospherexdescriptors
11x  11fsxalpha
11x  11GRHydroxtracers[timelevels]
11x  11GRHydroxconsxtracers[timelevels]
11x  11HydroBase::Yxe[timelevels]
11x  11GRHydroxtracerxrhs
11x  11GRHydroxtrivialxrpxgfxgroup
11x  11GRHydroxmppmxeigenvalues
11x  11tempplus tempminus

11x  11x

Scheduled Functions

CCTKxBASEGRID x grhydroxresetxexecutionxflags x initially set execution flags to ’yeah, execute’! x

11x11Language:11c
11 x 11Options: 11global
11 x 11Type: 11function

11

MoLxStep (conditional) x grhydroxsetxexecutionxflags x check if we need to execute rhs / post-step calculation x

11x11After: 11molxdecrementcounter
11 x 11Before: 11molxpoststepmodify
11 x 11Language:11c
11 x 11Options: 11level
11 x 11Type: 11function

11

GRHydroRHS (conditional) x grhydroxevolvecoords x evolve the coordinates for the comoving shift x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPrim2ConInitial (conditional) x primitive2conservativecells x convert initial data given in primive variables to conserved variables x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexCon2Prim (conditional) x conservative2primitivepolytypem x convert back to primitive variables (polytype) - mhd version x

11x11If:  11grhydro::executexmolxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

HydroBasexPrim2ConInitial (conditional) x primitive2conservativepolycellsm x convert initial data given in primive variables to conserved variables - mhd version x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexCon2Prim (conditional) x conservative2primitivepolytypeam x convert back to primitive variables (polytype) - mhd with avec version x

11x11If:  11grhydro::executexmolxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPrim2ConInitial (conditional) x primitive2conservativepolycellsam x convert initial data given in primive variables to conserved variables - mhd with avec version x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexCon2Prim (conditional) x conservative2primitivepolytype x convert back to primitive variables (polytype) x

11x11If:  11grhydro::executexmolxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPrim2ConInitial (conditional) x primitive2conservativepolycells x convert initial data given in primive variables to conserved variables x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexBoundaries (conditional) x doxgrhydroxboundaries x grhydro boundary conditions group x

11x11Type:11group

HydroBasexPostStep (conditional) x grhydroxatmospheremaskboundaries x apply boundary conditions to primitives x

11x11Before:11hydrobasexboundaries
11 x 11x  11grhydroxprimitiveinitialguessesboundaries
11 x 11Type: 11group

11

GRHydroxAtmosphereMaskBoundaries (conditional) x grhydroxselectatmospheremaskboundaries x select atmosphere mask for boundary conditions x

11x11Language:11fortran
11 x 11Options: 11level
11 x 11Sync:  11grhydroxatmospherexmaskxreal
11 x 11Type: 11function

11

HydroBasexPostStep (conditional) x grhydroxcomovingshift x comoving shift x

11x11After: 11hydrobasexcon2prim
11 x 11Language:11fortran
11 x 11Type: 11function

11

GRHydroxAtmosphereMaskBoundaries (conditional) x applybcs x apply boundary conditions to real-valued atmosphere mask x

11x11After:11grhydroxselectatmospheremaskboundaries
11 x 11Type:11group

11

HydroBasexSelectxBoundaries (conditional) x grhydroxboundaries x select grhydro boundary conditions

11x11If:  11grhydro::executexmolxpoststep
11 x 11Language:11fortran
11 x 11Options: 11level
11 x 11Sync:  11dens

11 x 11x  11tau
11 x 11x  11scon

11 x 11x  11hydrobase::wxlorentz
11 x 11x  11hydrobase::rho
11 x 11x  11hydrobase::press
11 x 11x  11hydrobase::eps
11 x 11x  11hydrobase::vel
11 x 11x  11bcons
11 x 11x  11entropycons
11 x 11x  11hydrobase::bvec
11 x 11x  11psidc
11 x 11x  11grhydroxconsxtracers
11 x 11x  11grhydroxtracers
11 x 11x  11hydrobase::temperature
11 x 11x  11hydrobase::entropy
11 x 11x  11hydrobase::yxe
11 x 11x  11yxexcon

11 x 11x  11lvel

11 x 11x  11lbvec
11 x 11Type: 11function

11

HydroBasexSelectxBoundaries (conditional) x grhydroxboundaries x select grhydro boundary conditions x

11x11If:  11grhydro::executexmolxpoststep
11 x 11Language:11fortran
11 x 11Options: 11level
11 x 11Sync:  11dens

11 x 11x  11tau
11 x 11x  11scon

11 x 11x  11bcons
11 x 11x  11entropycons
11 x 11x  11psidc
11 x 11x  11grhydroxconsxtracers
11 x 11x  11yxexcon
11 x 11Type: 11function

11

CCTKxPOSTREGRID (conditional) x grhydroxprimitiveboundaries x apply boundary conditions to all primitives x

11x11Before:11molxpoststep
11 x 11Type: 11group

11

CCTKxPOSTREGRIDINITIAL (conditional) x grhydroxprimitiveboundaries x apply boundary conditions to all primitives x

11x11Before:11molxpoststep
11 x 11Type: 11group

11

HydroBasexPostStep (conditional) x grhydroxprimitiveinitialguessesboundaries x apply boundary conditions to those primitives used as initial guesses x

11x11Before:11hydrobasexboundaries
11 x 11If:  11grhydro::inlastmolpoststep
11 x 11Type: 11group

11

GRHydroxPrimitiveInitialGuessesBoundaries (conditional) x grhydroxselectprimitiveinitialguessesboundaries x select initial guess primitive variables for boudary conditions x

11x11Language:11fortran
11 x 11Options: 11level
11 x 11Sync:  11hydrobase::press
11 x 11x  11hydrobase::rho
11 x 11x  11hydrobase::eps
11 x 11x  11hydrobase::temperature

11 x 11x  11lvel

11 x 11x  11lbvec
11 x 11Type: 11function

11

GRHydroxPrimitiveBoundaries (conditional) x grhydroxselectprimitiveboundaries x select primitive variables for boundary conditions x

11x11Language:11fortran
11 x 11Options: 11level
11 x 11Sync:  11hydrobase::press
11 x 11x  11hydrobase::entropy
11 x 11x  11hydrobase::yxe
11 x 11x  11grhydroxtracers
11 x 11x  11hydrobase::rho
11 x 11x  11hydrobase::eps
11 x 11x  11hydrobase::temperature

11 x 11x  11lvel

11 x 11x  11lbvec
11 x 11Type: 11function

11

GRHydroxPrimitiveInitialGuessesBoundaries (conditional) x grhydroxselectprimitiveinitialguessesboundaries x select initial guess primitive variables for boudary conditions x

11x11Language:11fortran
11 x 11Options: 11level
11 x 11Sync:  11hydrobase::press
11 x 11x  11hydrobase::rho
11 x 11x  11hydrobase::eps
11 x 11x  11hydrobase::vel
11 x 11x  11hydrobase::bvec
11 x 11x  11hydrobase::temperature
11 x 11Type: 11function

11

GRHydroxPrimitiveBoundaries (conditional) x grhydroxselectprimitiveboundaries x select primitive variables for boundary conditions x

11x11Language:11fortran
11 x 11Options: 11level
11 x 11Sync:  11hydrobase::press
11 x 11x  11hydrobase::entropy
11 x 11x  11hydrobase::yxe
11 x 11x  11grhydroxtracers
11 x 11x  11hydrobase::rho
11 x 11x  11hydrobase::eps
11 x 11x  11hydrobase::vel
11 x 11x  11hydrobase::bvec
11 x 11x  11hydrobase::temperature
11 x 11Type: 11function

11

CCTKxSTARTUP (conditional) x grhydroxstartup x startup banner x

11x11Language:11fortran
11 x 11Type: 11function

11

GRHydroxPrimitiveInitialGuessesBoundaries (conditional) x applybcs x apply boundary conditions to initial guess primitive variables x

11x11After:11grhydroxselectprimitiveinitialguessesboundaries
11 x 11Type:11group

11

GRHydroxPrimitiveBoundaries (conditional) x applybcs x apply boundary conditions to all primitive variables x

11x11After:11grhydroxselectprimitiveboundaries
11 x 11Type:11group

11

MoLxPostStep (conditional) x grhydroxsetlastmolpoststep x set grid scalar inlastmolpoststep if this is the last mol poststep call x

11x11Language:11c
11 x 11Options: 11level
11 x 11Type: 11function

11

MoLxStep (conditional) x grhydroxclearlastmolpoststep x reset inlastmolpoststep to zero

11x11After: 11molxpoststep
11 x 11Language:11c
11 x 11Options: 11level
11 x 11Type: 11function

11

CCTKxWRAGH (conditional) x grhydroxclearlastmolpoststep x initialize inlastmolpoststep to zero x

11x11Language:11c
11 x 11Options: 11global-early
11 x 11Type: 11function

11

HydroBasexPostStep (conditional) x grhydropostsyncatmospheremask x set integer atmosphere mask from synchronized real atmosphere mask x

11x11After: 11grhydroxatmospheremaskboundaries
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPostStep (conditional) x grhydroxatmosphereresetm x reset the atmosphere - mhd version x

11x11After: 11grhydropostsyncatmospheremask
11 x 11Before: 11hydrobasexboundaries
11 x 11x  11grhydroxprimitiveinitialguessesboundaries
11 x 11If:  11grhydro::inlastmolpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPostStep (conditional) x grhydroxatmosphereresetam x reset the atmosphere - mhd with avec version x

11x11After: 11grhydropostsyncatmospheremask
11 x 11Before: 11hydrobasexboundaries
11 x 11x  11grhydroxprimitiveinitialguessesboundaries
11 x 11If:  11grhydro::inlastmolpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPostStep (conditional) x grhydroxatmospherereset x reset the atmosphere

11x11After: 11grhydropostsyncatmospheremask
11 x 11Before: 11hydrobasexboundaries
11 x 11x  11grhydroxprimitiveinitialguessesboundaries
11 x 11If:  11grhydro::inlastmolpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxANALYSIS (conditional) x grhydroxcheckxrhoxminimum x check whether somewhere rho(i,j,k) < grhydroxrhoxmin and produce a warning x

11x11Language:11fortran
11 x 11Triggers: 11hydrobase::rho
11 x 11x  11hydrobase::press
11 x 11x  11hydrobase::eps
11 x 11Type: 11function

11

CCTKxSTARTUP (conditional) x grhydroxregistermask x register the hydro masks x

11x11Language:11c
11 x 11Type: 11function

11

CCTKxANALYSIS (conditional) x grhydroxrefinementlevel x calculate current refinement level x

11x11Before: 11grhydroxcheckxrhoxminimum
11 x 11Language:11fortran
11 x 11Triggers: 11hydrobase::rho
11 x 11x  11hydrobase::press
11 x 11x  11hydrobase::eps
11 x 11Type: 11function

11

CCTKxBASEGRID x resetxgrhydroxc2pxfailed x initialise the mask function that contains the points where c2p has failed (at basegrid) x

11x11Language:11fortran
11 x 11Type: 11function

11

CCTKxPRESTEP x resetxgrhydroxc2pxfailed x reset the mask function that contains the points where c2p has failed (at prestep) x

11x11Language:11fortran
11 x 11Type: 11function

CCTKxEVOL x syncxgrhydroxc2pxfailed x syncronise the mask function that contains the points where c2p has failed x

11x11After: 11molxevolution
11 x 11Language:11fortran
11 x 11Sync:  11grhydroxc2pxfailed
11 x 11Type: 11function

11

CCTKxPOSTSTEP x checkxgrhydroxc2pxfailed x check the mask function that contains the points where c2p has failed and report an error in case a failure is found x

11x11After: 11grhydroxrefinementlevel
11 x 11Language:11fortran
11 x 11Type: 11function

11

AddToTmunu (conditional) x grhydroxtmunum x compute the energy-momentum tensor - mhd version x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPostStep (conditional) x grhydroxcalcbcom x compute comoving magnetic field, pressure, etc... x

11x11After: 11grhydrotransformprimtoglobalbasis
11 x 11Language:11fortran
11 x 11Type: 11function

11

AddToTmunu (conditional) x grhydroxtmunu x compute the energy-momentum tensor x

11x11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTPOSTINITIAL (conditional) x settmunu x calculate the stress-energy tensor

11x11After: 11con2prim
11 x 11Before:11admconstraintsgroup
11 x 11Type: 11group

11

MoLxPseudoEvolution (conditional) x grhydroanalysis x calculate analysis quantities x

11x11Type:11group

11

CCTKxPARAMCHECK (conditional) x grhydroxparamcheck x check parameters x

11x11Language:11fortran
11 x 11Type: 11function

11

GRHydroAnalysis (conditional) x grhydroxcalcdivb x calculate divb x

11x11After: 11grhydroxanalysisxinit
11 x 11Language:11fortran
11 x 11Type: 11function

11

GRHydroAnalysis (conditional) x applybcs x apply boundary conditions to divb x

11x11After:11grhydroxcalcdivb
11 x 11Type:11group

11

MoLxPostStepModify (conditional) x constrainsconto1d x constrain conserved fluid velocity to radial direction x

11x11Language:11fortran
11 x 11Options: 11local
11 x 11Type: 11function

11

GRHydroRHS (conditional) x hxviscosityxcalcxcsxcc x compute local temporaries for h viscosity - c++ version

11x11Before: 11fluxterms
11 x 11Language:11c
11 x 11Options: 11local
11 x 11Type: 11function

11

GRHydroRHS (conditional) x hxviscosity x compute local temporaries for h viscosity x

11x11Before: 11fluxterms
11 x 11Language:11fortran
11 x 11Options: 11local
11 x 11Type: 11function

11

CCTKxBASEGRID (conditional) x grhydroxcheckxjacobianxstate x test state of jacobians x

11x11After: 11tmunubasexsetstressenergystate
11 x 11x  11coordinatesxsetglobalcoordsxgroup
11 x 11Language:11c
11 x 11Options: 11global
11 x 11Type: 11function

11

CCTKxBASEGRID (conditional) x grhydroxinitsymbound x schedule symmetries and check shift state x

11x11After: 11admbasexsetshiftstateon
11 x 11x  11admbasexsetshiftstateoff
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxeoshandle x set the eos number x

11x11Before: 11hydrobasexinitial
11 x 11Language:11c
11 x 11Options: 11global
11 x 11Type: 11function

11

CCTKxPOSTxRECOVERxVARIABLES (conditional) x grhydroxeoshandle x set the eos number

11x11Language:11c
11 x 11Options: 11global
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxrhoxminimaxsetup x set up minimum for the rest-mass density in the atmosphere (before intial data) x

11x11Before: 11hydrobasexinitial
11 x 11Language:11fortran
11 x 11Type: 11function

11

MoLxStartStep (conditional) x grhydroxresetxexecutionxflags x reset execution flags to ’yeah, execute’! x

11x11After: 11molxsetcounter
11 x 11Language:11c
11 x 11Options: 11level
11 x 11Type: 11function

11

CCTKxPOSTxRECOVERxVARIABLES (conditional) x grhydroxchangexrhoxminimumxatxrecovery x set up minimum for the rest-mass density in the atmosphere (before intial data) x

11x11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTINITIAL (conditional) x grhydroxrhoxminimaxsetupxfinalxpugh x set the value of the rest-mass density of the atmosphere which will be used during the evolution (pugh) x

11x11Before: 11molxpoststepmodify
11 x 11x  11molxpoststep
11 x 11Language:11c
11 x 11Type: 11function

11

CCTKxPOSTPOSTINITIAL (conditional) x grhydroxrhoxminimaxsetupxfinal x set the value of the rest-mass density of the atmosphere which will be used during the evolution x

11x11Before: 11con2prim
11 x 11Language:11c
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxsqrtspatialdeterminant x calculate sdetg x

11x11After: 11hydrobasexinitial
11 x 11x  11grhydrotransformadmtolocalbasis
11 x 11x  11admbasexpostinitial
11 x 11Before: 11hydrobasexprim2coninitial
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTINITIAL (conditional) x grhydroxinitialatmosphereresetm x use mask to enforce atmosphere at initial time x

11x11After: 11grhydroxrhoxminimaxsetupxfinalxpugh
11 x 11Before: 11molxpoststepmodify
11 x 11x  11molxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTPOSTINITIAL (conditional) x grhydroxinitialatmosphereresetm x use mask to enforce atmosphere at initial time x

11x11After: 11grhydroxrhoxminimaxsetupxfinal
11 x 11Before: 11con2prim
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTINITIAL (conditional) x grhydroxinitialatmosphereresetam x use mask to enforce atmosphere at initial time x

11x11After: 11grhydroxrhoxminimaxsetupxfinalxpugh
11 x 11Before: 11molxpoststepmodify
11 x 11x  11molxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTPOSTINITIAL (conditional) x grhydroxinitialatmosphereresetam x use mask to enforce atmosphere at initial time x

11x11After: 11grhydroxrhoxminimaxsetupxfinal
11 x 11Before: 11con2prim
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTINITIAL (conditional) x grhydroxinitialatmospherereset x use mask to enforce atmosphere at initial time x

11x11After: 11grhydroxrhoxminimaxsetupxfinalxpugh
11 x 11Before: 11molxpoststepmodify
11 x 11x  11molxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTPOSTINITIAL (conditional) x grhydroxinitialatmospherereset x use mask to enforce atmosphere at initial time x

11x11After: 11grhydroxrhoxminimaxsetupxfinal
11 x 11Before: 11con2prim
11 x 11Language:11fortran
11 x 11Type: 11function

11

MoLxEvolution (conditional) x grhydroxresetxexecutionxflags x reset execution flags to ’yeah, execute’! x

11x11After: 11molxfinishloop
11 x 11Language:11c
11 x 11Options: 11level
11 x 11Type: 11function

11

CCTKxPOSTPOSTINITIAL x admconstraintsgroup x evaluate adm constraints, and perform symmetry boundary conditions x

11x11Type:11group

11

CCTKxBASEGRID (conditional) x grhydroxenosetup x coefficients for eno reconstruction x

11x11Language:11fortran
11 x 11Options: 11global
11 x 11Type: 11function

11

CCTKxTERMINATE (conditional) x grhydroxenoshutdown x deallocate eno coefficients

11x11Before: 11driverxterminate
11 x 11Language:11fortran
11 x 11Options: 11global
11 x 11Type: 11function

11

CCTKxBASEGRID (conditional) x grhydroxwenosetup x coefficients for weno reconstruction x

11x11Language:11fortran
11 x 11Options: 11global
11 x 11Type: 11function

11

CCTKxTERMINATE (conditional) x grhydroxwenoshutdown x deallocate weno coefficients x

11x11Before: 11driverxterminate
11 x 11Language:11fortran
11 x 11Options: 11global
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxeoschangegamma x reset the specific internal energy if the eos changes between id and evolution x

11x11After: 11hydrobasexinitial
11 x 11Before: 11grhydroxivp
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxeoschangek x reset the hydro variables if the eos (k) changes between id and evolution x

11x11After: 11hydrobasexinitial
11 x 11Before: 11grhydroxivp
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxeoschangegammakxshibata x reset the hydro variables if the eos gamma and k change between id and evolution

11x11After: 11hydrobasexinitial
11 x 11Before: 11grhydroxivp
11 x 11Language:11fortran
11 x 11Sync:  11dens

11 x 11x  11tau
11 x 11x  11scon

11 x 11x  11hydrobase::wxlorentz
11 x 11x  11hydrobase::rho
11 x 11x  11hydrobase::press
11 x 11x  11hydrobase::eps
11 x 11x  11hydrobase::vel

11 x 11x  11lvel

11 x 11x  11hydrobase::temperature
11 x 11x  11hydrobase::entropy
11 x 11x  11hydrobase::yxe
11 x 11x  11yxexcon
11 x 11Type: 11function

11

MoLxRegister (conditional) x grhydroxregister x register variables for mol x

11x11Language:11c
11 x 11Type: 11function

11

MoLxPreStep (conditional) x grhydroxscalarxsetup x set up and check scalars for efficiency x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexInitial (conditional) x grhydroxinitial x grhydro initial data group x

11x11Type:11group

11

CCTKxPOSTINITIAL (conditional) x grhydroxscalarxsetup x set up and check scalars for efficiency x

11x11Language:11fortran
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxsetupmask x initialize the atmosphere mask

11x11Before: 11hydrobasexinitial
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTxRECOVERxVARIABLES (conditional) x grhydrocopyintegermask x initialize the real valued atmosphere mask after checkpoint recovery x

11x11Before: 11molxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTREGRID (conditional) x grhydroxsetupmask x initialize the atmosphere mask x

11x11After: 11maskone
11 x 11x  11maskzero
11 x 11Before: 11molxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTREGRIDINITIAL (conditional) x grhydroxsetupmask x initialize the atmosphere mask x

11x11After: 11maskone
11 x 11x  11maskzero
11 x 11Before: 11molxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxinitialatmospherereset x use mask to enforce atmosphere at initial time x

11x11After: 11hydrobasexinitial
11 x 11x  11grhydroxsqrtspatialdeterminant
11 x 11Before: 11hydrobasexprim2coninitial
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTINITIAL (conditional) x grhydroxinitatmosmask x set the atmosphere mask x

11x11Language:11fortran
11 x 11Type: 11function

CCTKxPOSTREGRID (conditional) x grhydroxinitatmosmask x set the atmosphere mask x

11x11After: 11grhydroxsetupmask
11 x 11Before: 11molxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTREGRIDINITIAL (conditional) x grhydroxinitatmosmask x set the atmosphere mask x

11x11After: 11grhydroxsetupmask
11 x 11Before: 11hydrobasexpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydrotransformprimtolocalbasis x transform primitive vars to local tensor basis. x

11x11After: 11hydrobasexinitial
11 x 11x  11admbasexpostinitial
11 x 11Before: 11hydrobasexprim2coninitial
11 x 11Language:11c
11 x 11Type: 11function

11

HydroBasexInitial (conditional) x grhydroxinitdivergenceclean x set psi for divergence cleaning initially to zero x

11x11Language:11fortran
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydrotransformadmtolocalbasis x transform adm metric, extr. curv. and shift to local tensor basis. x

11x11After: 11hydrobasexinitial
11 x 11Before: 11grhydrotransformprimtolocalbasis
11 x 11Language:11c
11 x 11Type: 11function

11

ADMBasexSetADMVars (conditional) x grhydrotransformadmtolocalbasis x transform metric and shift to local tensor basis. x

11x11If:  11grhydro::executexmolxstep
11 x 11Language:11c
11 x 11Type: 11function

11

HydroBasexPostStep (conditional) x grhydrotransformprimtoglobalbasis x transform primitive vars to global tensor basis. x

11x11After: 11hydrobasexcon2prim
11 x 11If:  11grhydro::executexmolxpoststep
11 x 11Language:11c
11 x 11Type: 11function

11

HydroBasexRHS x grhydrorhs x calculate the update terms x

11x11If:  11grhydro::executexmolxstep
11 x 11Storage:11grhydroxscalars
11 x 11Type: 11group

11

CCTKxINITIAL (conditional) x grhydroparticleinitial x initial data for the particle arrays x

11x11Before: 11hydrobasexinitial
11 x 11Language:11fortran
11 x 11Options: 11global
11 x 11Type: 11function

11

GRHydroRHS (conditional) x grhydroparticlerhs x update terms for the particles x

11x11Language:11fortran
11 x 11Options: 11global
11 x 11Type: 11function

11

GRHydroRHS (conditional) x sourceterms x source term calculation

11x11Before: 11fluxterms
11 x 11Language:11c
11 x 11Type: 11function

11

GRHydroRHS (conditional) x sourcetermsm x source term calculation - mhd version x

11x11Before: 11fluxterms
11 x 11Language:11fortran
11 x 11Type: 11function

11

GRHydroRHS (conditional) x sourcetermsam x source term calculation - vector potential mhd version x

11x11Before: 11fluxterms
11 x 11Language:11fortran
11 x 11Type: 11function

11

GRHydroRHS (conditional) x sourceterms x source term calculation x

11x11Before: 11fluxterms
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexInitial (conditional) x grhydroxdivbinit x set divb initially to zero x

11x11Language:11fortran
11 x 11Type: 11function

11

GRHydroRHS (conditional) x grhydrostartloop x set the fluxxdirection variable x

11x11Before: 11fluxterms
11 x 11Language:11fortran
11 x 11Options: 11level
11 x 11Type: 11function

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes

11x11Storage:11grhydroxprimxbext
11 x 11x  11grhydroxconxbext
11 x 11x  11grhydroxfluxes
11 x 11x  11grhydroxmhdxconxbext
11 x 11x  11grhydroxmhdxprimxbext
11 x 11x  11grhydroxmhdxpsidcxbext
11 x 11x  11grhydroxentropyxprimxbext
11 x 11x  11grhydroxentropyxconxbext
11 x 11x  11grhydroxbfluxes
11 x 11x  11grhydroxpsifluxes
11 x 11x  11grhydroxentropyfluxes
11 x 11x  11grhydroxtracerxconsxbext
11 x 11x  11grhydroxtracerxprimxbext
11 x 11x  11grhydroxtracerxflux
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes x

11x11Storage:11grhydroxprimxbext
11 x 11x  11grhydroxconxbext
11 x 11x  11grhydroxfluxes
11 x 11x  11grhydroxmhdxconxbext
11 x 11x  11grhydroxmhdxprimxbext
11 x 11x  11grhydroxavecxbext
11 x 11x  11grhydroxavecfluxes
11 x 11x  11grhydroxtracerxconsxbext
11 x 11x  11grhydroxtracerxprimxbext
11 x 11x  11grhydroxtracerxflux
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes x

11x11Storage:11grhydroxprimxbext
11 x 11x  11grhydroxconxbext
11 x 11x  11grhydroxfluxes
11 x 11x  11grhydroxmhdxconxbext
11 x 11x  11grhydroxmhdxprimxbext
11 x 11x  11grhydroxavecxbext
11 x 11x  11grhydroxaphixbext
11 x 11x  11grhydroxavecfluxes
11 x 11x  11grhydroxaphifluxes
11 x 11x  11grhydroxtracerxconsxbext
11 x 11x  11grhydroxtracerxprimxbext
11 x 11x  11grhydroxtracerxflux
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes

11x11Storage:11grhydroxprimxbext
11 x 11x  11grhydroxconxbext
11 x 11x  11grhydroxfluxes
11 x 11x  11grhydroxtracerxconsxbext
11 x 11x  11grhydroxtracerxprimxbext
11 x 11x  11grhydroxtracerxflux
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes x

11x11Storage:11grhydroxprimxbext
11 x 11x  11grhydroxconxbext
11 x 11x  11grhydroxfluxes
11 x 11x  11grhydroxmhdxconxbext
11 x 11x  11grhydroxmhdxprimxbext
11 x 11x  11grhydroxmhdxpsidcxbext
11 x 11x  11grhydroxentropyxconxbext
11 x 11x  11grhydroxentropyxprimxbext
11 x 11x  11grhydroxbfluxes
11 x 11x  11grhydroxpsifluxes
11 x 11x  11grhydroxentropyfluxes
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes x

11x11Storage:11grhydroxprimxbext
11 x 11x  11grhydroxconxbext
11 x 11x  11grhydroxfluxes
11 x 11x  11grhydroxmhdxconxbext
11 x 11x  11grhydroxmhdxprimxbext
11 x 11x  11grhydroxavecxbext
11 x 11x  11grhydroxaphixbext
11 x 11x  11grhydroxavecfluxes
11 x 11x  11grhydroxaphifluxes
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes x

11x11Storage:11grhydroxprimxbext
11 x 11x  11grhydroxconxbext
11 x 11x  11grhydroxfluxes
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

FluxTerms (conditional) x reconstructionxcxx x reconstruct the functions at the cell boundaries x

11x11Language:11c
11 x 11Type: 11function

11

FluxTerms (conditional) x reconstruction x reconstruct the functions at the cell boundaries x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexInitial (conditional) x grhydroxbvecfromavec x populate bvec from avec x

11x11Language:11fortran
11 x 11Type: 11function

11

FluxTerms (conditional) x reconstructionpolytype x reconstruct the functions at the cell boundaries x

11x11Language:11fortran
11 x 11Type: 11function

11

FluxTerms (conditional) x setxtrivialxriemannxproblemxgridxfunction x set the gridfunction for the trp (for debugging only) x

11x11After: 11reconstruct
11 x 11Language:11c
11 x 11Sync:  11grhydroxtrivialxrpxgfxgroup
11 x 11Type: 11function

11

FluxTerms (conditional) x riemannsolvem x solve the local riemann problems - mhd version x

11x11After: 11reconstruct
11 x 11Language:11fortran
11 x 11Storage: 11eosxtemps
11 x 11Type: 11function

FluxTerms (conditional) x riemannsolveam x solve the local riemann problems - vector potential mhd version x

11x11After: 11reconstruct
11 x 11Language:11fortran
11 x 11Storage: 11eosxtemps
11 x 11Type: 11function

11

FluxTerms (conditional) x riemannsolve x solve the local riemann problems x

11x11After: 11reconstruct
11 x 11Language:11fortran
11 x 11Storage: 11eosxtemps
11 x 11Type: 11function

11

FluxTerms (conditional) x riemannsolvepolytype x solve the local riemann problems x

11x11After: 11reconstruct
11 x 11Language:11fortran
11 x 11Storage: 11eosxtemps
11 x 11Type: 11function

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes x

11x11Storage:11grhydroxfluxes
11 x 11x  11grhydroxtracerxflux
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

11

FluxTerms (conditional) x grhydroxfsalpha x compute the maximum characteristic speeds x

11x11Before: 11grhydroxsplitflux
11 x 11Language:11fortran
11 x 11Type: 11function

11

FluxTerms (conditional) x grhydroxsplitflux x compute the fluxes using weno5 fd + lax-friedrichs splitting

11x11Language:11fortran
11 x 11Storage: 11fluxxsplitting
11 x 11x  11grhydroxtracerxfluxxsplitting
11 x 11Sync:  11grhydroxfluxes
11 x 11Type: 11function

11

GRHydroRHS (conditional) x fluxterms x calculation of intercell fluxes x

11x11Storage:11grhydroxfluxes
11 x 11Type: 11group
11 x 11While: 11grhydro::fluxxdirection

11

HydroBasexInitial (conditional) x hydrobasexboundaries x call boundary conditions after magnetic field initial data setup x

11x11After:11grhydroxpoloidalmagfieldm
11 x 11x  11grhydroxbvecxfromxavec
11 x 11Type:11group

11

FluxTerms (conditional) x grhydroxfsalpha x compute the maximum characteristic speeds x

11x11Before: 11grhydroxsplitflux
11 x 11Language:11fortran
11 x 11Type: 11function

11

FluxTerms (conditional) x grhydroxsplitflux x compute the fluxes using weno5 fd + lax-friedrichs splitting x

11x11Language:11fortran
11 x 11Storage: 11fluxxsplitting
11 x 11Sync:  11grhydroxfluxes
11 x 11Type: 11function

11

FluxTerms (conditional) x updatecalculation x calculate the update term from the fluxes x

11x11After: 11riemann
11 x 11Language:11fortran
11 x 11Type: 11function

FluxTerms (conditional) x grhydroadvanceloop x decrement the fluxxdirection variable x

11x11After: 11updatecalcul
11 x 11Language:11fortran
11 x 11Options: 11level
11 x 11Type: 11function

11

GRHydroRHS (conditional) x grhydroupdateatmospheremask x alter the update terms if inside the atmosphere region x

11x11After: 11fluxterms
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPostStep (conditional) x grhydroxpoststep x post step tasks for grhydro x

11x11Type:11group

11

MoLxPostStep (conditional) x grhydroxrefinementlevel x calculate current refinement level x

11x11Before: 11hydrobasexpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

FluxTerms (conditional) x grhydroxrefinementlevel x calculate current refinement level x

11x11Before: 11reconstruct
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexCon2Prim (conditional) x grhydroxsqrtspatialdeterminant x calculate sdetg

11x11Before: 11con2prim
11 x 11If:  11grhydro::executexmolxstep
11 x 11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTxRECOVERxVARIABLES (conditional) x grhydroxsqrtspatialdeterminant x calculate sdetg x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexInitial (conditional) x grhydroxsetupcoords x set up the coordinates for use with the comoving shift x

11x11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTSTEP (conditional) x grhydroxrefinementlevel x calculate current refinement level (for the check of the c2p mask) x

11x11Language:11fortran
11 x 11Type: 11function

11

CCTKxPOSTREGRIDINITIAL (conditional) x grhydroxrefinementlevel x calculate current refinement level x

11x11Language:11fortran
11 x 11Type: 11function

11

CCTKxINITIAL (conditional) x grhydroxrefinementlevel x calculate current refinement level x

11x11Before: 11hydrobasexinitial
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexCon2Prim (conditional) x conservative2primitivem x convert back to primitive variables (general) - mhd version

11x11If:  11grhydro::executexmolxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPrim2ConInitial (conditional) x primitive2conservativecellsm x convert initial data given in primive variables to conserved variables - mhd version x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexCon2Prim (conditional) x grhydroxbvecfromavec x populate bvec from avec x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexCon2Prim (conditional) x hydrobasexboundaries x call boundary conditions after magnetic field initial data setup x

11x11After:11grhydroxbvecfromavec
11 x 11Type:11group

11

HydroBasexCon2Prim (conditional) x conservative2primitiveam x convert back to primitive variables (general) - mhd with avec version x

11x11After: 11hydrobasexboundaries
11 x 11If:  11grhydro::executexmolxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

HydroBasexPrim2ConInitial (conditional) x primitive2conservativecellsam x convert initial data given in primive variables to conserved variables - mhd with avec version x

11x11Language:11fortran
11 x 11Type: 11function

11

HydroBasexCon2Prim (conditional) x conservative2primitive x convert back to primitive variables (general)

11x11If:  11grhydro::executexmolxpoststep
11 x 11Language:11fortran
11 x 11Type: 11function

11

Aliased Functions x

11Alias Name: xxxxxxx  11Function Name:
11ApplyBCs  11GRHydroxApplyDivBBCs
11Conservative2Primitive  11Con2Prim
11Conservative2PrimitiveAM  11Con2Prim
11Conservative2PrimitiveM  11Con2Prim
11Conservative2PrimitivePolytype 11Con2Prim
11Conservative2PrimitivePolytypeAM11Con2Prim
11Conservative2PrimitivePolytypeM 11Con2Prim
11GRHydroxBoundaries  11GRHydroxBound
11GRHydroxSplitFlux  11Reconstruct
11Reconstruction  11Reconstruct
11ReconstructionPolytype  11Reconstruct
11Reconstructionxcxx  11Reconstruct
11RiemannSolve  11Riemann
11RiemannSolveAM  11Riemann
11RiemannSolveM  11Riemann
11RiemannSolvePolytype  11Riemann
11UpdateCalculation  11UpdateCalcul