TwoPunctures_KerrProca

Helvi Witek, Miguel Zilhão

October 26 2018

1 Notes

We modify the TwoPunctures thorn to generate initial data for a single rotating black hole coupled to a massive vector field. The conformal metric is related to Kerr in quasi-isotropic coordinates (see [1] and [2])), i.e., \(rBL = R ( 1 + rBL_{+} / (4R) )^{2} \). This construction can accommodate for Proca fields with the following initial angular distribution :\(A_{\phi } \sim Y_{00}\), \(A_{\phi } \sim Y_{10}\) (explored in [3]) and \(A_{\phi } \sim Y_{1-1} - Y_{11}\) (see [4]).

Note:

We are enabling the swapping parameter “swap_xz”, i.e., the x- and z-axis are simply exchanged because TwoPunctures uses coordinates such that \(x=R\cos \theta \). Therefore, the rotation axis is the x-axis, and one needs to specify par_S_plus[0].

The swapping is not a coordinate transformation! So, instead of going from \(x=R\cos \theta , y=R\sin \theta \cos \phi , z=R\sin \theta \sin \phi \) to \(x=R\sin \theta \cos \phi , y=R\sin \theta \sin \phi , z=R\cos \theta \) as one might expect, this operation only exchanges x-z. Hence, for a BH that in physical space is supposed to rotate along \(z\), in the direction of \(z\), needs to be specified with a minus sign.

As an example, say we want to set up a rotating BH with \(a/M = 0.9\), rotating in the z-direction. Then, we need

References

[1]   Y. T. Liu, Z. B. Etienne and S. L. Shapiro, “Evolution of near-extremal-spin black holes using the moving puncture technique,” Phys. Rev. D 80 (2009) 121503 doi:10.1103/PhysRevD.80.121503 [arXiv:1001.4077 [gr-qc]].

[2]   H. Okawa, H. Witek and V. Cardoso, “Black holes and fundamental fields in Numerical Relativity: initial data construction and evolution of bound states,” Phys. Rev. D 89 (2014) no.10, 104032 doi:10.1103/PhysRevD.89.104032 [arXiv:1401.1548 [gr-qc]].

[3]   M. Zilhão, H. Witek and V. Cardoso, “Nonlinear interactions between black holes and Proca fields,” Class. Quant. Grav. 32 (2015) 234003 doi:10.1088/0264-9381/32/23/234003 [arXiv:1505.00797 [gr-qc]].

[4]   M. Zilhão, H. Witek. To appear.

2 Parameters




c00
Scope: private REAL



Description: amplitude for monopolar term



Range Default: 0.
0:*
anything non-negative






c10
Scope: private REAL



Description: Y10 multipolar term



Range Default: 0.0
(*:*)






c11
Scope: private REAL



Description: Y11 multipolar term



Range Default: 0.0
(*:*)






r0_gaussian
Scope: private REAL



Description: centre for gaussian



Range Default: 2.
0:*
anything positive






w_gaussian
Scope: private REAL



Description: width of gaussian



Range Default: 1.
0:*
anything positive






adm_tol
Scope: restricted REAL



Description: Tolerance of ADM masses when give_bare_mass=no



Range Default: 1.0e-10
(0:*)






center_offset
Scope: restricted REAL



Description: offset b=0 to position (x,y,z)



Range Default: 0.0
(*:*)






do_initial_debug_output
Scope: restricted BOOLEAN



Description: Output debug information about initial guess



Default: no






do_residuum_debug_output
Scope: restricted BOOLEAN



Description: Output debug information about the residuum



Default: no






give_bare_mass
Scope: restricted BOOLEAN



Description: User provides bare masses rather than target ADM masses



Default: yes






grid_setup_method
Scope: restricted KEYWORD



Description: How to fill the 3D grid from the spectral grid



Range Default: Taylor expansion
Taylor expansion
use a Taylor expansion about the nearest collocation point (fast, but might be inaccurate)
evaluation
evaluate using all spectral coefficients (slow)






initial_lapse_psi_exponent
Scope: restricted REAL



Description: Exponent n for psiˆ-  n initial lapse profile



Range Default: -2.0
(*:*)
Should be negative






keep_u_around
Scope: restricted BOOLEAN



Description: Keep the variable u around after solving



Default: no






lambda
Scope: restricted REAL



Description: factor to adjust the resolution away from the punctures



Range Default: (none)
0:*
zero recovers the standard case






multiply_old_lapse
Scope: restricted BOOLEAN



Description: Multiply the old lapse with the new one



Default: no






newton_maxit
Scope: restricted INT



Description: Maximum number of Newton iterations



Range Default: 5
0:*






newton_tol
Scope: restricted REAL



Description: Tolerance for Newton solver



Range Default: 1.0e-10
(0:*)






npoints_a
Scope: restricted INT



Description: Number of coefficients in the compactified radial direction



Range Default: 30
4:*






npoints_b
Scope: restricted INT



Description: Number of coefficients in the angular direction



Range Default: 30
4:*






npoints_phi
Scope: restricted INT



Description: Number of coefficients in the phi direction



Range Default: 16
4:*:2






par_b
Scope: restricted REAL



Description: x coordinate of the m+ puncture



Range Default: 1.0
(0.0:*)






par_m_minus
Scope: restricted REAL



Description: mass of the m- puncture



Range Default: 1.0
0.0:*)






par_m_plus
Scope: restricted REAL



Description: mass of the m+ puncture



Range Default: 1.0
0.0:*)






par_p_minus
Scope: restricted REAL



Description: momentum of the m- puncture



Range Default: 0.0
(*:*)






par_p_plus
Scope: restricted REAL



Description: momentum of the m+ puncture



Range Default: 0.0
(*:*)






par_s_minus
Scope: restricted REAL



Description: spin of the m- puncture



Range Default: 0.0
(*:*)






par_s_plus
Scope: restricted REAL



Description: spin of the m+ puncture



Range Default: 0.0
(*:*)






rescale_sources
Scope: restricted BOOLEAN



Description: If sources are used - rescale them after solving?



Default: yes






schedule_in_admbase_initialdata
Scope: restricted BOOLEAN



Description: Schedule in (instead of after) ADMBase_InitialData



Default: yes






solve_momentum_constraint
Scope: restricted BOOLEAN



Description: Solve for momentum constraint?



Default: no






swap_xz
Scope: restricted BOOLEAN



Description: Swap x and z coordinates when interpolating, so that the black holes are separated in the z direction



Default: no






target_m_minus
Scope: restricted REAL



Description: target ADM mass for m-



Range Default: 0.5
0.0:*)






target_m_plus
Scope: restricted REAL



Description: target ADM mass for m+



Range Default: 0.5
0.0:*)






tp_epsilon
Scope: restricted REAL



Description: A small number to smooth out singularities at the puncture locations



Range Default: 0.0
0:*






tp_extend_radius
Scope: restricted REAL



Description: Radius of an extended spacetime instead of the puncture



Range Default: 0.0
0:*
anything positive, should be smaller than the horizon






tp_tiny
Scope: restricted REAL



Description: Tiny number to avoid nans near or at the pucture locations



Range Default: 0.0
0:*
anything positive, usually very small






use_external_initial_guess
Scope: restricted BOOLEAN



Description: Set initial guess by external function?



Default: no






use_sources
Scope: restricted BOOLEAN



Description: Use sources?



Default: no






verbose
Scope: restricted BOOLEAN



Description: Print screen output while solving



Default: no






conformal_storage
Scope: shared from STATICCONFORMALKEYWORD



3 Interfaces

General

Implements:

twopunctures_kerrproca

Inherits:

admbase

staticconformal

grid

procabase

Grid Variables

3.0.1 PRIVATE GROUPS





  Group Names     Variable Names   Details    




puncture_u puncture_u compact 0
dimensions 3
distribution DEFAULT
group type GF
tags prolongation=”none”
timelevels 1
variable type REAL




energy compact 0
E description ADM energy of the Bowen-York spacetime
dimensions 0
distribution CONSTANT
group type SCALAR
timelevels 1
variable type REAL




angular_momentum compact 0
J1 description Angular momentum of the Bowen-York spacetime
J2 dimensions 0
J3 distribution CONSTANT
group type SCALAR
timelevels 1
variable type REAL




3.0.2 PUBLIC GROUPS





  Group Names     Variable Names   Details    




bare_mass compact 0
mp description Bare masses of the punctures
mm dimensions 0
distribution CONSTANT
group type SCALAR
timelevels 1
variable type REAL




puncture_adm_mass compact 0
mp_adm description ADM masses of the punctures (measured at the other spatial infinities)
mm_adm dimensions 0
distribution CONSTANT
group type SCALAR
timelevels 1
variable type REAL




4 Schedule

This section lists all the variables which are assigned storage by thorn Proca/TwoPunctures_KerrProca. 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

 

  Conditional:
  energy angular_momentum puncture_adm_mass
  puncture_u bare_mass
   

Scheduled Functions

CCTK_PARAMCHECK (conditional)

  tpkp_twopunctures_paramcheck

  check parameters and thorn needs

 

  Language: c
  Type: function

ADMBase_InitialData (conditional)

  tpkp_twopunctures_group

  twopunctures initial data group

 

  Type: group

CCTK_INITIAL (conditional)

  tpkp_twopunctures_group

  twopunctures initial data group

 

  After: admbase_initialdata
    hydrobase_initial
  Before: admbase_postinitial
    settmunu
    hydrobase_prim2coninitial
  Type: group

TPKP_TwoPunctures_Group (conditional)

  tpkp_twopunctures

  create puncture black hole initial data

 

  Language: c
  Storage: puncture_u
    bare_mass
  Type: function

TPKP_TwoPunctures_Group (conditional)

  tpkp_twopunctures_metadata

  output twopunctures metadata

 

  After: tpkp_twopunctures
  Language: c
  Options: global
  Type: function