This thorn evolves the Proca equations in generic spacetimes, as outlined in [1]. When setting the mass of the vector field \(\mu \) (parameter mu from thorn ProcaBase) to zero, the system reduces to the Maxwell equations in the Lorenz gauge.
“Right-hand-side” variables rhs_Ai, rhs_Ei, rhs_Aphi and rhs_Zeta defined in interface.ccl are given by equations (2.12), (2.13), (2.15) and (2.16) respectively in [1].
[1] 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]].
chi_floor | Scope: private | REAL |
Description: Minimal value of abs(chi)
| ||
Range | Default: 1.0d-05 | |
*:* | Any value possible
| |
conf_fac_exponent | Scope: private | REAL |
Description: Exponent n for hgamma_ij = chi gamma_ij conformal decomposition
| ||
Range | Default: 1 | |
(*:*) | 1 or 2 are good choices
| |
derivs_order | Scope: private | INT |
Description: Order for derivatives
| ||
Range | Default: 4 | |
4 | 4th order stencils
| |
6 | 6th order stencils
| |
kappa | Scope: private | REAL |
Description: Damping parameter for Maxwell equations
| ||
Range | Default: 1 | |
0:* | non-negative
| |
use_advection_stencils | Scope: private | BOOLEAN |
Description: Use lop-sided stencils for advection derivs
| ||
Default: yes | ||
zeta_omega_fac | Scope: private | REAL |
Description: Set to zero to not evolve Zeta and Omega
| ||
Range | Default: 1 | |
*:* | zero or one
| |
procaevolve_maxnumconstrainedvars | Scope: restricted | INT |
Description: The maximum number of constrained variables used by ProcaEvolve
| ||
Range | Default: (none) | |
0:0 | none
| |
procaevolve_maxnumevolvedvars | Scope: restricted | INT |
Description: The maximum number of evolved variables used by ProcaEvolve
| ||
Range | Default: 8 | |
8:8 | Just 8: Eî, A_i, Aphi, Zeta
| |
procaevolve_maxnumsandrvars | Scope: restricted | INT |
Description: The maximum number of save and restore variables used by ProcaEvolve
| ||
Range | Default: 16 | |
16:16 | lapse, shift, metric, and extrinsic curvature
| |
a0 | Scope: shared from PROCABASE | REAL |
aphi0 | Scope: shared from PROCABASE | REAL |
e0 | Scope: shared from PROCABASE | REAL |
evolution_method | Scope: shared from PROCABASE | KEYWORD |
Extends ranges:
| ||
ProcaEvolve | Use ProcaEvolve to evolve Proca variables
| |
mu | Scope: shared from PROCABASE | REAL |
n_a | Scope: shared from PROCABASE | INT |
n_aphi | Scope: shared from PROCABASE | INT |
n_e | Scope: shared from PROCABASE | INT |
n_zeta | Scope: shared from PROCABASE | INT |
Implements:
procaevolve
Inherits:
admbase
tmunubase
procabase
boundary
Group Names | Variable Names | Details | |
rhs_ei | compact | 0 | |
rhs_Ex | description | right hand sides for Eî evolution equations | |
rhs_Ey | dimensions | 3 | |
rhs_Ez | distribution | DEFAULT | |
group type | GF | ||
tags | tensortypealias=”U” tensorweight=0 prolongation=”none” Checkpoint=”no” | ||
timelevels | 1 | ||
variable type | REAL | ||
rhs_ai | compact | 0 | |
rhs_Ax | description | right hand sides for A_i evolution equations | |
rhs_Ay | dimensions | 3 | |
rhs_Az | distribution | DEFAULT | |
group type | GF | ||
tags | tensortypealias=”D” tensorweight=0 prolongation=”none” Checkpoint=”no” | ||
timelevels | 1 | ||
variable type | REAL | ||
rhs_aphi | rhs_Aphi | compact | 0 |
description | right hand sides for Aphi evolution equation | ||
dimensions | 3 | ||
distribution | DEFAULT | ||
group type | GF | ||
tags | tensortypealias=”Scalar” tensorweight=0 prolongation=”none” Checkpoint=”no” | ||
timelevels | 1 | ||
variable type | REAL | ||
rhs_zeta | rhs_Zeta | compact | 0 |
description | right hand sides for Zeta evolution equation | ||
dimensions | 3 | ||
distribution | DEFAULT | ||
group type | GF | ||
tags | tensortypealias=”Scalar” tensorweight=0 prolongation=”none” Checkpoint=”no” | ||
timelevels | 1 | ||
variable type | REAL | ||
hmetric | compact | 0 | |
hxx | description | ∖tilde gamma_ij | |
hxy | dimensions | 3 | |
hxz | distribution | DEFAULT | |
hyy | group type | GF | |
hyz | tags | tensortypealias=”DD_sym” tensorweight=-0.66666666666666666667 prolongation=”none” Checkpoint=”no” | |
hzz | timelevels | 1 | |
variable type | REAL | ||
conf_fac_chi | compact | 0 | |
chi | description | conformal factor ∖chi | |
dimensions | 3 | ||
distribution | DEFAULT | ||
group type | GF | ||
tags | tensortypealias=”Scalar” tensorweight=-0.66666666666666666667 prolongation=”none” Checkpoint=”no” | ||
timelevels | 1 | ||
variable type | REAL | ||
Group Names | Variable Names | Details | |
trk | compact | 0 | |
tracek | description | Tr(K) | |
dimensions | 3 | ||
distribution | DEFAULT | ||
group type | GF | ||
tags | tensortypealias=”Scalar” tensorweight=0 prolongation=”none” Checkpoint=”no” | ||
timelevels | 1 | ||
variable type | REAL | ||
This section lists all the variables which are assigned storage by thorn Proca/ProcaEvolve. 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.
Conditional: | |
rhs_Ei rhs_Ai rhs_Aphi rhs_Zeta | |
hmetric conf_fac_chi trk | |
CCTK_BASEGRID (conditional)
proca_initsymbound
schedule symmetries
Language: | fortran | |
Options: | meta | |
Type: | function | |
CCTK_BASEGRID (conditional)
proca_zero_rhs
set all rhs functions to zero to prevent spurious nans
After: | proca_initsymbound | |
Language: | fortran | |
Type: | function | |
MoL_Register (conditional)
proca_registervars
register variables for mol
Language: | c | |
Options: | meta | |
Type: | function | |
MoL_CalcRHS (conditional)
proca_calc_rhs
mol rhs calculation for proca variables
Language: | fortran | |
Type: | function | |
MoL_CalcRHS (conditional)
proca_calc_rhs_bdry
mol boundary rhs calculation for proca variables
After: | proca_calcrhs | |
Language: | fortran | |
Type: | function | |
MoL_PostStep (conditional)
proca_boundaries
mol boundary enforcement for proca variables
Language: | fortran | |
Options: | level | |
Sync: | procabase::ei | |
procabase::ai | ||
procabase::aphi | ||
procabase::zeta | ||
Type: | function | |
MoL_PostStep (conditional)
applybcs
apply boundary conditions
After: | proca_boundaries | |
Type: | group | |
AddToTmunu (conditional)
proca_calc_tmunu
compute the energy-momentum tensor
Language: | fortran | |
Type: | function | |
Alias Name: | Function Name: |
ApplyBCs | Proca_ApplyBCs |
Proca_calc_Tmunu | Proca_AddToTmunu |
Proca_calc_rhs | Proca_CalcRHS |
Proca_calc_rhs_bdry | Proca_CalcRHS_Bdry |