xx GRHayLID

GRHayLID

Samuel Cupp Leonardo Rosa Werneck

Date

Abstract

Provides simple magnetohydrodynamic (MHD) initial data for testing, as well as functionality for imposing beta equilibrium on initial hydrodynamic data and computing the initial entropy. The test data includes the Balsara tests, a cylindrical explosion, etc. While some initial data requires EOS information provided by GRHayLib, the data can then be used by any evolution thorn so long as their EOS framework is set up to match GRHayLib.

1 Introduction

This thorn provides a variety of initial data setups for testing GRMHD evolution codes. For 1D, this includes all five Balsara tests, equilibrium initial data, a sound wave, and a shock tube. For 3D, we provide isotropic gas and constant-density sphere initial data. We also provide the option to impose beta-equilibrium on provided initial data.

The initial data is separated into magnetic and hydrodynamic parts, so the magnetic initial data can be turned off if desired. All settings use the HydroBase variables for compatibility with other thorns, but only Avec is set. The Aphi or B variables are not set by this thorn.

2 Parameters

The parameters are mostly self-explanatory or just extensions of HydroBase keywords. The param.ccl is divided into sections based on which tests the parameters are for, but we explain them here. The type of test is controlled by initialxhydro from HydroBase. All the options for these parameters are explicitly listed by the autogenerated parameter documentation below.

Note that neither beta equilibrium nor entropy calculation are tied to initialxhydro, so they can be used even if the actual initial data is set by another thorn. Beta equilibrium is controlled by the imposexbetaxequilibrium parameter, and entropy calculation controlled by the computexentropy parameter.

Some initial data is only valid for tabulated or hybrid EOS, and these check the EOS parameter from GRHayLib. If it is set incorrectly, the run will end with an error message stating the incompatibility. They will also check if HydroBase parameters are set in a compatible fashion (such as HydroBase::initialxtemperature) and will also error out if these are set incorrectly.

2.1 HydroTest1D

This option is used for all the 1D tests we provide. The initialxdatax1D parameter chooses the specific test and defaults to the Balsara1 test. For shocks and waves, the shockxdirection parameter changes the direction of the shock, and the discontinuityxposition parameter changes the location of the shock front. For the sound wave test, the amplitude can be set with wavexamplitude.

2.2 IsotropicGas

This option sets the hydrodynamic variables to an isotropic gas using the tabulated equation of state and does not work with other EOS settings. It does not set magnetic quantities. The thorn checks to ensure parameters are set correctly in GRHayLiband HydroBaseso that the initial data works, and the run will end with an error message if the core parameters are misconfigured.

Specifically, the thorn checks the following parameters:

11 Thorn & Parameter  11 Correct Setting

11 GRHayLib::EOSxtype             11 ”tabulated”
11 HydroBase::initialxYxe         11 ”GRHayLID”
11 HydroBase::initialxtemperature 11 ”GRHayLID”

2.3 ConstantDensitySphere

This option sets the hydrodynamic variables to a sphere of constant density using the tabulated equation of state and does not work with other EOS settings. It does not set magnetic quantities. The thorn checks to ensure parameters are set correctly in GRHayLiband HydroBaseso that the initial data works, and the run will end with an error message if the core parameters are misconfigured.

Specifically, the thorn checks the following parameters:

11 Thorn & Parameter  11 Correct Setting

11 GRHayLib::EOSxtype             11 ”tabulated”
11 HydroBase::initialxYxe         11 ”GRHayLID”
11 HydroBase::initialxtemperature 11 ”GRHayLID”

3 Parameters

11 beqxtemperature 10 Scope: restricted01 REAL

11 Description: Temperature used to impose beta-equilibrium

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 constantdensityspherexrhoxexterior 10 Scope: restricted01  REAL

11 Description: Exterior density in geometrized units

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 constantdensityspherexrhoxinterior 10 Scope: restricted01  REAL

11 Description: Interior density in geometrized units

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11 constantdensityspherexspherexradius10 Scope: restricted01  REAL

11 Description: Sphere radius in geometrized units

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 constantdensityspherextxexterior 10 Scope: restricted01  REAL

11 Description: Exterior temperature in MeV

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 constantdensityspherextxinterior 10 Scope: restricted01  REAL

11 Description: Interior temperature in MeV

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 constantdensityspherexvxxinterior 10 Scope: restricted01  REAL

11 Description: Interior x-velocity

11 Range 10 01 Default: (none)
11 *:*  10 Anything goes

11

11 constantdensityspherexvyxinterior 10 Scope: restricted01  REAL

11 Description: Interior y-velocity

11 Range 10 01 Default: (none)
11 *:*  10 Anything goes

11

11 constantdensityspherexvzxinterior 10 Scope: restricted01  REAL

11 Description: Interior z-velocity

11 Range 10 01 Default: (none)
11 *:*  10 Anything goes

11

11 constantdensityspherexyxexexterior 10 Scope: restricted01  REAL

11 Description: Exterior electron fraction (dimensionless)

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 constantdensityspherexyxexinterior 10 Scope: restricted01  REAL

11 Description: Interior electron fraction (dimensionless)

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11 discontinuityxposition  10 Scope: restricted01  REAL

11 Description: Set location of the shock discontinuity

11  Range  10                01  Default: 0.0

11 *:*  10

11

11 imposexbetaxequilibrium  10 Scope: restricted01  BOOLEAN

11 Description: Impose beta-equilibrium on initial data

11                                10                01  Default: no

11

11 initialxdatax1d  10 Scope: restricted01  KEYWORD

11 Description: Set initial data type for 1D tests

11 Range 10 01 Default: Balsara1
11 equilibrium  10 initial data for the equilibrium test
11 sound wave  10 initial data for the sound wave test
11 shock tube  10 initial data for the shock tube test
11 Balsara1  10 initial data for the Balsara1 test
11 Balsara2  10 initial data for the Balsara2 test
11 Balsara3  10 initial data for the Balsara3 test
11 Balsara4  10 initial data for the Balsara4 test
11 Balsara5  10 initial data for the Balsara5 test

11

11 initializexmagneticxquantities  10 Scope: restricted01  BOOLEAN

11 Description: Set whether Avec should be initialized

11                                10                01  Default: yes

11

11 isotropicgasxrho  10 Scope: restricted01  REAL

11 Description: Gas density in geometrized units

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 isotropicgasxtemperature  10 Scope: restricted01  REAL

11 Description: Gas temperature in MeV

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 isotropicgasxyxe  10 Scope: restricted01  REAL

11 Description: Gas electron fraction (dimensionless)

11 Range 10 01 Default: -1
11 0:*  10 Non-negative values
11 -1  10 Forbidden value

11

11 shockxdirection  10 Scope: restricted01  KEYWORD

11 Description: Set direction for shock in test data

11 Range 10 01 Default: x
11 x  10 Test data will have discontinuities along x direction
11 y  10 Test data will have discontinuities along y direction
11 z  10 Test data will have discontinuities along z direction

11 staggerxaxfields  10 Scope: restricted01  BOOLEAN

11 Description: Sets whether Avec is staggered to +1/2 (following IllinoisGRMHD convention)

11                                10                01  Default: yes

11

11 wavexamplitude  10 Scope: restricted01  REAL

11 Description: Wave amplitude for sound wave initial data

11 Range 10 01 Default: 1.0e-3
11 0.0:*  10

11

11 initialxavec  10 Scope: shared from HYDROBASE01  KEYWORD

11 Extends ranges:

11 GRHayLID  10 Initial vector potential set by GRHayLID

11

11 initialxbvec  10 Scope: shared from HYDROBASE01  KEYWORD

11 Extends ranges:

11 GRHayLID  10 Initial magnetic fields set by GRHayLID

11

11 initialxentropy  10 Scope: shared from HYDROBASE01  KEYWORD

11 Extends ranges:

11 GRHayLID  10 Initial entropy set by GRHayLID

11

11 initialxhydro  10 Scope: shared from HYDROBASE01  KEYWORD

11 Extends ranges:

11 HydroTest1D  10 ”Initial data set by 1D test; see testx1Dxinitialxdata parameter for options”
11 IsotropicGas  10 Initial data set to isotropic gas
11 see [1] below  10 Initial data set to constant density sphere

11

ConstantDensitySphere

11 initialxtemperature  10 Scope: shared from HYDROBASE01  KEYWORD

11 Extends ranges:

11 GRHayLID  10 Initial temperature set by GRHayLID

11

11 initialxyxe  10 Scope: shared from HYDROBASE01  KEYWORD

11 Extends ranges:

11 GRHayLID  10 Initial Yxe set by GRHayLID

11

4 Interfaces

General Implements: grhaylid

Inherits: grhaylib grid hydrobase

Uses header: GRHayLib.h

5 Schedule This section lists all the variables which are assigned storage by thorn GRHayLET/GRHayLID. 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 NONE

Scheduled Functions

HydroBasexInitial (conditional) x grhaylidx1dxtestsxhydroxdata x set initial hydrodynamic data for 1d test x

11 x 11 Language: 11 c
11 x 11 Reads:  11 grid::coordinates
11 x 11 Type:  11 function
11 x 11 Writes: 11 hydrobase::rho(everywhere)
11 x 11 x  11 hydrobase::press(everywhere)
11 x 11 x  11 hydrobase::eps(everywhere)
11 x 11 x  11 hydrobase::vel(everywhere)

11

HydroBasexInitial (conditional) x grhaylidx1dxtestsxmagneticxdata x set initial magnetic data for 1d test x

11 x 11 After:  11 grhaylidx1dxtestsxhydroxdata
11 x 11 Language: 11 c
11 x 11 Reads:  11 grid::coordinates
11 x 11 Type:  11 function
11 x 11 Writes: 11 hydrobase::avec(everywhere)
11 x 11 x  11 hydrobase::bvec(everywhere)

11

HydroBasexInitial (conditional) x grhaylidxisotropicgas x set initial hydrodynamic data for 1d test x

11 x 11 Language: 11 c
11 x 11 Reads:  11 grid::coordinates
11 x 11 Type:  11 function
11 x 11 Writes: 11 hydrobase::rho(everywhere)
11 x 11 x  11 hydrobase::press(everywhere)
11 x 11 x  11 hydrobase::eps(everywhere)
11 x 11 x  11 hydrobase::vel(everywhere)
11 x 11 x  11 hydrobase::yxe(everywhere)
11 x 11 x  11 hydrobase::temperature(everywhere)

HydroBasexInitial (conditional) x grhaylidxconstantdensitysphere x set initial hydrodynamic data for 1d test x

11 x 11 Language: 11 c
11 x 11 Reads:  11 grid::coordinates
11 x 11 Type:  11 function
11 x 11 Writes: 11 hydrobase::rho(everywhere)
11 x 11 x  11 hydrobase::press(everywhere)
11 x 11 x  11 hydrobase::eps(everywhere)
11 x 11 x  11 hydrobase::vel(everywhere)
11 x 11 x  11 hydrobase::yxe(everywhere)
11 x 11 x  11 hydrobase::temperature(everywhere)

11

CCTKxINITIAL (conditional) x grhaylidxbetaequilibrium x set yxe, temperature, entropy, press, eps in neutrino free beta-equilibrium x

11 x 11 After:  11 hydrobasexinitial
11 x 11 Before: 11 hydrobasexprim2coninitial
11 x 11 Language: 11 c
11 x 11 Reads:  11 hydrobase::rho
11 x 11 Type:  11 function
11 x 11 Writes: 11 hydrobase::press(everywhere)
11 x 11 x  11 hydrobase::eps(everywhere)
11 x 11 x  11 hydrobase::yxe(everywhere)
11 x 11 x  11 hydrobase::temperature(everywhere)

11

CCTKxINITIAL (conditional) x grhaylidxcomputexentropyxhybrid x computes entropy from density and pressure using hybrid eos x

11 x 11 After:  11 hydrobasexinitial
11 x 11 x  11 imposexbetaxequilibrium
11 x 11 Before: 11 hydrobasexprim2coninitial
11 x 11 Language: 11 c
11 x 11 Reads:  11 hydrobase::rho
11 x 11 x  11 hydrobase::press
11 x 11 Type:  11 function
11 x 11 Writes: 11 hydrobase::entropy(everywhere)

11

CCTKxINITIAL (conditional) x grhaylidxcomputexentropyxtabulated x computes entropy from density, yxe, and temperature using tabulated eos

11 x 11 After:  11 hydrobasexinitial
11 x 11 x  11 imposexbetaxequilibrium
11 x 11 Before: 11 hydrobasexprim2coninitial
11 x 11 Language: 11 c
11 x 11 Reads:  11 hydrobase::rho
11 x 11 x  11 hydrobase::yxe
11 x 11 x  11 hydrobase::temperature
11 x 11 Type:  11 function
11 x 11 Writes: 11 hydrobase::rho(everywhere)
11 x 11 x  11 hydrobase::press(everywhere)
11 x 11 x  11 hydrobase::eps(everywhere)
11 x 11 x  11 hydrobase::entropy(everywhere)
11 x 11 x  11 hydrobase::yxe(everywhere)
11 x 11 x  11 hydrobase::temperature(everywhere)

11

Aliased Functions x

11 Alias Name: xxxxxxx  11 Function Name:
11 GRHayLIDxBetaEquilibrium 11 imposexbetaxequilibrium