![]() |
Bimetric 3+1 toolkit for spherical symmetry
|
BimetricEvolve encapsulates a 3+1 evolution solver for bimetric spacetimes. More...
Public Member Functions | |
BimetricEvolve (Parameters ¶ms, UniformGrid &ug, GridOutputWriter &output, MoL &integ) | |
Creates and configures the bimetric solver from the given parameters. | |
Private Types | |
enum | Slicing { SLICE_CONSTG = 0, SLICE_CONSTGF = 1, SLICE_MS2 = 2, SLICE_MS4 = 3, SLICE_MS2OPT = 4, SLICE_BM = 5 } |
< Known slicing methods More... | |
Private Member Functions | |
Real & | gA (Real m, Real n) |
Real & | gA_t (Real m, Real n) |
Real & | fA (Real m, Real n) |
Real & | fA_t (Real m, Real n) |
Real & | gB (Real m, Real n) |
Real & | gB_t (Real m, Real n) |
Real & | fB (Real m, Real n) |
Real & | fB_t (Real m, Real n) |
Real & | gK (Real m, Real n) |
Real & | gK_t (Real m, Real n) |
Real & | fK (Real m, Real n) |
Real & | fK_t (Real m, Real n) |
Real & | gKD (Real m, Real n) |
Real & | gKD_t (Real m, Real n) |
Real & | fKD (Real m, Real n) |
Real & | fKD_t (Real m, Real n) |
Real & | gDA (Real m, Real n) |
Real & | gDA_t (Real m, Real n) |
Real & | fDA (Real m, Real n) |
Real & | fDA_t (Real m, Real n) |
Real & | gDB (Real m, Real n) |
Real & | gDB_t (Real m, Real n) |
Real & | fDB (Real m, Real n) |
Real & | fDB_t (Real m, Real n) |
Real & | gSig (Real m, Real n) |
Real & | gSig_t (Real m, Real n) |
Real & | fSig (Real m, Real n) |
Real & | fSig_t (Real m, Real n) |
Real & | p (Real m, Real n) |
Real & | p_g (Real m, Real n) |
Real & | p_f (Real m, Real n) |
Real & | p_t (Real m, Real n) |
Real & | q (Real m, Real n) |
Real & | gAlp (Real m, Real n) |
Real & | gAlp_t (Real m, Real n) |
Real & | gDAlp (Real m, Real n) |
Real & | gDAlp_t (Real m, Real n) |
Real & | fAlp (Real m, Real n) |
Real & | fDAlp (Real m, Real n) |
Real & | gW (Real m, Real n) |
Real & | fW (Real m, Real n) |
Real & | cW (Real m, Real n) |
Real & | g_rho (Real m, Real n) |
Real & | f_rho (Real m, Real n) |
Real & | g_JK1 (Real m, Real n) |
Real & | f_JK1 (Real m, Real n) |
Real & | g_JK2 (Real m, Real n) |
Real & | f_JK2 (Real m, Real n) |
Real & | pfD (Real m, Real n) |
Real & | pfD_t (Real m, Real n) |
Real & | pfS (Real m, Real n) |
Real & | pfS_t (Real m, Real n) |
Real & | pftau (Real m, Real n) |
Real & | pftau_t (Real m, Real n) |
Real & | pfv (Real m, Real n) |
Real & | pfv_r (Real m, Real n) |
Real & | C_1 (Real m, Real n) |
Real & | C_2 (Real m, Real n) |
Real & | C_3 (Real m, Real n) |
Real & | C_4 (Real m, Real n) |
Real & | gHorz (Real m, Real n) |
Real & | fHorz (Real m, Real n) |
Real & | Lt (Real m, Real n) |
Real & | R (Real m, Real n) |
Real | gA_r (Real m, Real n) |
Real | fA_r (Real m, Real n) |
Real | gB_r (Real m, Real n) |
Real | fB_r (Real m, Real n) |
Real | gK_r (Real m, Real n) |
Real | fK_r (Real m, Real n) |
Real | gKD_r (Real m, Real n) |
Real | fKD_r (Real m, Real n) |
Real | gDA_r (Real m, Real n) |
Real | fDA_r (Real m, Real n) |
Real | gDB_r (Real m, Real n) |
Real | fDB_r (Real m, Real n) |
Real | p_r (Real m, Real n) |
Real | q_r (Real m, Real n) |
Real | gAlp_r (Real m, Real n) |
Real | fAlp_r (Real m, Real n) |
Real | gDAlp_r (Real m, Real n) |
Real | fDAlp_r (Real m, Real n) |
Real | pfD_r (Real m, Real n) |
Real | pfS_r (Real m, Real n) |
Real | pftau_r (Real m, Real n) |
Real | p_rr (Real m, Real n) |
Real | q_rr (Real m, Real n) |
Real | fAlp_rr (Real m, Real n) |
Real | gK1 (Int m, Int n) |
Real | gK2 (Int m, Int n) |
Real | fK1 (Int m, Int n) |
Real | fK2 (Int m, Int n) |
Real | eq_pr_r (Real m, Real n) |
Real | eq_qr_r (Real m, Real n) |
Real | eq_BM_gAlp_t (Int m, Int n) |
Real | eq_BM_gDAlp_t (Int m, Int n) |
Real | eq_gA_t (Int m, Int n) |
Real | eq_fA_t (Int m, Int n) |
Real | eq_gB_t (Int m, Int n) |
Real | eq_fB_t (Int m, Int n) |
Real | eq_gDA_t (Int m, Int n) |
Real | eq_fDA_t (Int m, Int n) |
Real | eq_gDB_t (Int m, Int n) |
Real | eq_fDB_t (Int m, Int n) |
Real | eq_gSig_t (Int m, Int n) |
Real | eq_fSig_t (Int m, Int n) |
Real | eq_base_gK_t (Int m, Int n) |
Real | eq_invr_gK_t (Int m, Int n) |
Real | eq_gK_t (Int m, Int n) |
Real | eq_base_gKD_t (Int m, Int n) |
Real | eq_invr_gKD_t (Int m, Int n) |
Real | eq_gKD_t (Int m, Int n) |
Real | eq_base_fK_t (Int m, Int n) |
Real | eq_invr_fK_t (Int m, Int n) |
Real | eq_fK_t (Int m, Int n) |
Real | eq_base_fKD_t (Int m, Int n) |
Real | eq_invr_fKD_t (Int m, Int n) |
Real | eq_fKD_t (Int m, Int n) |
Real | eq_base_gK1_t (Int m, Int n) |
Real | eq_invr_gK1_t (Int m, Int n) |
Real | eq_base_gK2_t (Int m, Int n) |
Real | eq_invr_gK2_t (Int m, Int n) |
Real | eq_base_fK1_t (Int m, Int n) |
Real | eq_invr_fK1_t (Int m, Int n) |
Real | eq_base_fK2_t (Int m, Int n) |
Real | eq_invr_fK2_t (Int m, Int n) |
Real | eq_p_t (Int m, Int n) |
Real | eq_p1_t (Int m, Int n) |
Real | eq_base_p_g (Int m, Int n) |
Real | eq_invr_p_g (Int m, Int n) |
Real | eq_p_g (Int m, Int n) |
Real | eq_base_p_f (Int m, Int n) |
Real | eq_invr_p_f (Int m, Int n) |
Real | eq_p_f (Int m, Int n) |
Real | eq_gC_rho (Int m, Int n) |
Real | eq_fC_rho (Int m, Int n) |
Real | eq_gC_j (Int m, Int n) |
Real | eq_fC_j (Int m, Int n) |
Real | eq_C_bimConsLaw (Int m, Int n) |
Real | eq_j_over_p (Int m, Int n) |
Real | eq_C_1 (Int m, Int n) |
Real | eq_C_2 (Int m, Int n) |
Real | eq_C_3 (Int m, Int n) |
Real | eq_C_4 (Int m, Int n) |
Real | eq_g_rho (Int m, Int n) |
Real | eq_f_rho (Int m, Int n) |
Real | eq_g_j (Int m, Int n) |
Real | eq_f_j (Int m, Int n) |
Real | eq_g_JK1 (Int m, Int n) |
Real | eq_f_JK1 (Int m, Int n) |
Real | eq_g_JK2 (Int m, Int n) |
Real | eq_f_JK2 (Int m, Int n) |
Real | eq_pf_D (Int m, Int n) |
Real | eq_pf_S (Int m, Int n) |
Real | eq_pf_tau (Int m, Int n) |
Real | eq_pf_v (Int m, Int n) |
Real | eq_pf_v_r (Int m, Int n) |
Real | eq_pf_D_t (Int m, Int n) |
Real | eq_pf_S_t (Int m, Int n) |
Real | eq_pf_tau_t (Int m, Int n) |
Real | eq_pf_rho (Int m, Int n) |
Real | eq_pf_j (Int m, Int n) |
Real | eq_pf_J1 (Int m, Int n) |
Real | eq_pf_J2 (Int m, Int n) |
Real | eq_q (Int m, Int n) |
Real | eq_gAlp (Int m, Int n) |
Real | eq_gW (Int m, Int n) |
Real | eq_fW (Int m, Int n) |
Real | eq_cW (Int m, Int n) |
Real | eq_fAlp (Int m, Int n) |
Real | eq_gHorz (Int m, Int n) |
Real | eq_fHorz (Int m, Int n) |
Real | eq_gBet (Int m, Int n) |
Real | eq_gBet_r (Int m, Int n) |
Real | eq_gBetr_r (Int m, Int n) |
Real | eq_fBet (Int m, Int n) |
Real | eq_fBet_r (Int m, Int n) |
Real | eq_fBetr_r (Int m, Int n) |
void | maximalSlice_2 (Int m, Int N, Real gAlp_at_N) |
Finds the maximal slice using a second-order accurate finite difference scheme. | |
void | maximalSlice_4 (Int m, Int N, Real gAlp_at_N) |
Finds the maximal slice using a fourth-order accurate finite difference scheme. | |
void | maximalSlice_2opt (Int m, Int N, Real gAlp_at_N) |
Finds the maximal slice using a second-order accurate finite difference scheme. | |
void | maximalSlice_PostSteps (Int m, Int N) |
Additional steps for gAlp and gDAlp (like fixing boundary conditions.) | |
void | calculateDerivedVariables (Int m, Int n) |
Calculate the derived variables R, Lt, and pfv. | |
void | determineGaugeFunctions (Int m) |
Determine gAlp (e.g. | |
void | applySommerfeldBC (Int m, Int n, Int m_old, Int gf, Real background=0.0, Int fall_off=1) |
Sommerfeld outgoing (radiative) wave condition on a variable. | |
virtual void | integStep_Prepare (Int m) |
Calculate the dependent variables from the prime state variables which are needed for the integration. | |
virtual void | integStep_CalcEvolutionRHS (Int m) |
Prepare the right-hand side of the evolution equations. | |
virtual void | integStep_Finalize (Int mNext, Int mPrev) |
Perform the additional steps after each integration step. | |
virtual bool | integStep_Diagnostics (Int m, Int chkNaNs_nFrom, Int chkNaNs_nTo) |
At each checkpoint calculate diagnostics variables and check for eventual NaNs. | |
virtual void | applyLeftBoundaryCondition (Int m) |
Fix the state variables at the left boundary. | |
virtual void | applyRightBoundaryCondition (Int m) |
Fix the state variables at the right boundary. | |
Private Attributes | |
Int | slicing |
Select the slicing: maximal, Bona-Masso, ... | |
Int | lin2n |
Left grid-zone linear smoothing (default: nGhost ) | |
Int | cub2n |
Left grid-zone cubic spline smoothing (default: 5*nGhost/2+6 ) | |
Real | delta_t |
The integration step (obtained from the integrator) | |
Int | smooth |
Smooth the fields (level of smoothness) |
BimetricEvolve encapsulates a 3+1 evolution solver for bimetric spacetimes.
EvolvedBy f, f_t --> add dissipation here?
Implement PIRK?
Definition at line 233 of file bim-solver.cpp.
enum BimetricEvolve::Slicing [private] |
< Known slicing methods
Definition at line 238 of file bim-solver.cpp.
{ SLICE_CONSTG = 0, // Constant slice in g (f calculated) SLICE_CONSTGF = 1, // Constant slice in both g and f SLICE_MS2 = 2, // Maximal slicing, 2nd order FD SLICE_MS4 = 3, // Maximal slicing, 4th order FD SLICE_MS2OPT = 4, // Maximal slicing, 2nd order FD, optimized algorithm SLICE_BM = 5 // Bona-Masso slicing };
Int BimetricEvolve::cub2n [private] |
Left grid-zone cubic spline smoothing (default: 5*nGhost/2+6
)
Definition at line 250 of file bim-solver.cpp.
Real BimetricEvolve::delta_t [private] |
The integration step (obtained from the integrator)
Definition at line 251 of file bim-solver.cpp.
Int BimetricEvolve::lin2n [private] |
Left grid-zone linear smoothing (default: nGhost
)
Definition at line 249 of file bim-solver.cpp.
Int BimetricEvolve::slicing [private] |
Select the slicing: maximal, Bona-Masso, ...
Definition at line 248 of file bim-solver.cpp.
Int BimetricEvolve::smooth [private] |
Smooth the fields (level of smoothness)
Definition at line 252 of file bim-solver.cpp.