Seed_Magnetic_Fields_BNS is designed to seed a poloidal magnetic field to binary neutron star (BNS) initial data.
We provide a basic overview of the mathematical expressions implemented by this thorn, as well as key references.
We seed a poloidal magnetic field in the interior of the two neutron stars (NSs) following the prescription described in Appendix C of [1], namely \begin {align} A_{x} &= -yA_{\rm b}\max \left (P-P_{\rm cut},0\right )\;,\\ A_{y} &= +xA_{\rm b}\max \left (P-P_{\rm cut},0\right )\;,\\ A_{z} &= 0\;. \end {align}
It is recommended to set \(P_{\rm cut}\) to about 4% of the initial maximum pressure. Furthermore, \(A_{\rm b}\) should be adjusted in order to obtain the desired initial magnetic-to-gas pressure ratio.
We seed a dipolar magnetic field onto the BNS system by extending the prescription of [2] from one to two NSs. Namely, we consider that each neutron star contributes the following term to the vector potential \(\vec {A}\) in spherical basis: \begin {equation} A^{\phi ,n} = \frac {\pi r_{0,n}^{2}I_{0,n}\varpi ^{2}}{\left (r_{0,n}^{2} + r_{n}^{2}\right )^{3/2}} \left [1 + \frac {15}{8}\frac {r_{0,n}^{2}\left (r_{0,n}^{2} + \varpi _{n}^{2}\right )}{\left (r_{0,n}^{2}+r_{n}^{2}\right )}\right ]\;, \end {equation} where \(n=1,2\) identifies the neutron star, \(r_{0,n}^{2} \equiv r^{\mathrm {NS}}_{n}r^{\mathrm {NS}}_{0,n}\), where \(r^{\mathrm {NS}}_{n}\) are the NS radii and \(r^{\mathrm {NS}}_{0,n}\) the radii of the current loops, \(r_{n}^{2} = \left (x-x^{\mathrm {NS}}_{n}\right )^{2}+y^{2}+z^{2}\), \(x^{\mathrm {NS}}_{n}\) is the position of each neutron star (assumed to be in the \(x\)-axis), and \(\varpi _{n}^{2} = \left (x-x_{n}\right )^{2}+y^{2}\).
We then set the vector potential in the Cartesian basis using the standard formulae \begin {align} A^{x} &= -\left (y+\frac {\Delta y}{2}\right )\left (A^{\phi ,1} + A^{\phi ,2}\right )\;,\\ A^{y} &= \left (x_{1}+\frac {\Delta x}{2}\right )A^{\phi ,1} + \left (x_{2}+\frac {\Delta x}{2}\right )A^{\phi ,2}\;. \end {align}
Note that the behavior described above is valid when using staggered vector potentials (see Table 1 for details).
Variable | Storage location |
Non-staggered | \(\left (x_{i},y_{j},z_{k}\right )\) |
\(A^{x}\) | \(\left (x_{i},y_{j}+\frac {\Delta y}{2},z_{k}+\frac {\Delta z}{2}\right )\) |
\(A^{y}\) | \(\left (x_{i}+\frac {\Delta x}{2},y_{j},z_{k}+\frac {\Delta z}{2}\right )\) |
\(A^{z}\) | \(\left (x_{i}+\frac {\Delta x}{2},y_{j}+\frac {\Delta y}{2},z_{k}\right )\) |
The following lines provide an example of how to use this thorn to use this thorn to seed a poloidal magnetic field to the interior of two stars located at \(x=\pm 15\) (in code units). The star radii are not specified explicitly, and we use the default radius \(13.5\) as a good enough estimate.
ActiveThorns = "Seed_Magnetic_Fields_BNS" Seed_Magnetic_Fields_BNS::enable_IllinoisGRMHD_staggered_A_fields = "yes" Seed_Magnetic_Fields_BNS::A_field_type = "poloidal_A_interior" Seed_Magnetic_Fields_BNS::have_two_NSs_along_x_axis = "yes" Seed_Magnetic_Fields_BNS::x_c1 = +15 Seed_Magnetic_Fields_BNS::x_c2 = -15 Seed_Magnetic_Fields_BNS::A_b = 49529.954 Seed_Magnetic_Fields_BNS::n_s = 2.0 # Set to 4% initial max pressure, which is 0.000113824867150113*0.04 = .00000455299468600452 Seed_Magnetic_Fields_BNS::P_cut = 0.00000455299468600452
[1] Z. B. Etienne, V. Paschalidis, R. Haas, P. Mösta, & S. L. Shapiro, IllinoisGRMHD: an open-source, user-friendly GRMHD code for dynamical spacetimes, Classical and Quantum Gravity, 32(17), 175009 (2015).
[2] V. Paschalidis, Z. B. Etienne, & S. L. Shapiro, General-relativistic simulations of binary black hole-neutron stars: precursor electromagnetic signals, Physical Review D, 88(2), 021504 (2013).
a_b | Scope: restricted | REAL |
Description: Magnetic field strength parameter.
| ||
Range | Default: 1e-3 | |
*:* | Any real
| |
a_field_type | Scope: restricted | KEYWORD |
Description: Which field structure to use.
| ||
Range | Default: poloidal_A_interior | |
see [1] below | Dipole magnetic field, interior to the star
| |
see [1] below | Dipole magnetic field everywhere
| |
[1]
poloidal\_A\_interior
[1]
dipolar\_A\_everywhere
enable_illinoisgrmhd_staggered_a_fields | Scope: restricted | BOOLEAN |
Description: Define A fields on an IllinoisGRMHD staggered grid
| ||
Default: no | ||
have_two_nss_along_x_axis | Scope: restricted | BOOLEAN |
Description: Do we have two NSs centered along x-axis?
| ||
Default: no | ||
i_zero_ns1 | Scope: restricted | REAL |
Description: Magnetic field loop current of NS1.
| ||
Range | Default: 0.0 | |
0.0:*) | ||
i_zero_ns2 | Scope: restricted | REAL |
Description: Magnetic field loop current of NS2.
| ||
Range | Default: 0.0 | |
0.0:*) | ||
n_s | Scope: restricted | REAL |
Description: Magnetic field strength pressure exponent.
| ||
Range | Default: 1.0 | |
*:* | Any real
| |
p_cut | Scope: restricted | REAL |
Description: Cutoff pressure, below which vector potential is set to zero. Typically set to 4% of
the maximum initial pressure.
| ||
Range | Default: 1e-5 | |
0:* | Positive
| |
r_ns1 | Scope: restricted | REAL |
Description: Radius of NS1. Does not have to be perfect, but must not overlap other star.
| ||
Range | Default: 13.5 | |
0:* | Any positive
| |
r_ns2 | Scope: restricted | REAL |
Description: Radius of NS2. Does not have to be perfect, but must not overlap other star.
| ||
Range | Default: 13.5 | |
0:* | Any positive
| |
r_zero_ns1 | Scope: restricted | REAL |
Description: Current loop radius of NS1.
| ||
Range | Default: 1.0 | |
0.0:*) | ||
r_zero_ns2 | Scope: restricted | REAL |
Description: Current loop radius of NS2.
| ||
Range | Default: 1.0 | |
0.0:*) | ||
x_c1 | Scope: restricted | REAL |
Description: x coordinate of NS1 center
| ||
Range | Default: -15.2 | |
*:* | Any real
| |
x_c2 | Scope: restricted | REAL |
Description: x coordinate of NS2 center
| ||
Range | Default: 15.2 | |
*:* | Any real
| |
Implements:
seed_magnetic_fields_privt
Inherits:
grid
admbase
hydrobase
This section lists all the variables which are assigned storage by thorn WVUThorns_Diagnostics/Seed_Magnetic_Fields_BNS. 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.
Always: | |
HydroBase::rho[1] HydroBase::press[1] HydroBase::eps[1] HydroBase::vel[1] HydroBase::Bvec[1] HydroBase::Avec[1] HydroBase::Aphi[1] | |
HydroBase_Initial
seed_magnetic_fields_privt
set up binary neutron star seed magnetic fields.
After: | meudon_bin_ns_initialise | |
Before: | illinoisgrmhd_id_converter | |
Language: | c | |
Type: | function | |