SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
Xcts::FirstOrderSystem< EnabledEquations, ConformalGeometry, ConformalMatterScale > Struct Template Reference

The Extended Conformal Thin Sandwich (XCTS) decomposition of the Einstein constraint equations, formulated as a set of coupled first-order partial differential equations. More...

#include <FirstOrderSystem.hpp>

Public Types

using primal_fields
using primal_fluxes
using background_fields
using inv_metric_tag
using fluxes_computer = Fluxes<EnabledEquations, ConformalGeometry>
using sources_computer
using sources_computer_linearized
using boundary_conditions_base
using modify_boundary_data = void

Static Public Attributes

static constexpr Equations enabled_equations = EnabledEquations
static constexpr Geometry conformal_geometry = ConformalGeometry
static constexpr int conformal_matter_scale = ConformalMatterScale
static constexpr size_t volume_dim = 3

Detailed Description

template<Equations EnabledEquations, Geometry ConformalGeometry, int ConformalMatterScale>
struct Xcts::FirstOrderSystem< EnabledEquations, ConformalGeometry, ConformalMatterScale >

The Extended Conformal Thin Sandwich (XCTS) decomposition of the Einstein constraint equations, formulated as a set of coupled first-order partial differential equations.

See Xcts for details on the XCTS equations. The system can be formulated in terms of these fluxes and sources (see elliptic::protocols::FirstOrderSystem):

\begin{align}F^i_\psi ={} &\bar{\gamma}^{ij} \partial_j \psi \\ S_\psi ={} &-\bar{\Gamma}^i_{ij} F^j_\psi + \frac{1}{8}\psi\bar{R} + \frac{1}{12}\psi^5 K^2 - \frac{1}{8}\psi^{-7}\bar{A}^2 - 2\pi\psi^5\rho \end{align}

for the Hamiltonian constraint,

\begin{align}F^i_{\alpha\psi} ={} &\bar{\gamma}^{ij} \partial_j \alpha\psi \\ S_{\alpha\psi} ={} &-\bar{\Gamma}^i_{ij} F^j_{\alpha\psi} + \alpha\psi \left(\frac{7}{8}\psi^{-8} \bar{A}^2 + \frac{5}{12} \psi^4 K^2 + \frac{1}{8}\bar{R} + 2\pi\psi^4\left(\rho + 2S\right) \right) \\ &- \psi^5\partial_t K + \psi^5\left(\beta^i\bar{D}_i K + \beta_\mathrm{background}^i\bar{D}_i K\right) \end{align}

for the lapse equation, and

\begin{align}F^{ij}_\beta ={} &\left(\bar{L}\beta\right)^{ij} = \bar{\nabla}^i \beta^j + \bar{\nabla}^j \beta^i - \frac{2}{3} \bar{\gamma}^{ij} \bar{\nabla}_k \beta^k \\ S^i_\beta ={} &-\bar{\Gamma}^j_{jk} F^{ik}_\beta - \bar{\Gamma}^i_{jk} F^{jk}_\beta + \left(F^{ij}_\beta + \left(\bar{L}\beta_\mathrm{background}\right)^{ij} - \bar{u}^{ij}\right) \bar{\gamma}_{jk} \left(\frac{F^k_{\alpha\psi}}{\alpha\psi} - 7 \frac{F^k_\psi}{\psi}\right) \\ &- \bar{D}_j\left(\left(\bar{L}\beta_\mathrm{background}\right)^{ij} - \bar{u}^{ij}\right) + \frac{4}{3}\frac{\alpha\psi}{\psi}\bar{D}^i K + 16\pi\left(\alpha\psi\right)\psi^3 S^i \end{align}

for the momentum constraint, with

\begin{align}\bar{A}^{ij} ={} &\frac{\psi^7}{2\alpha\psi}\left( \left(\bar{L}\beta\right)^{ij} + \left(\bar{L}\beta_\mathrm{background}\right)^{ij} - \bar{u}^{ij} \right) \end{align}

and all \(f_\alpha=0\).

Note that the symbol \(\beta\) in the equations above means \(\beta_\mathrm{excess}\). The full shift is \(\beta_\mathrm{excess} + \beta_\mathrm{background}\). See Xcts::Tags::ShiftBackground and Xcts::Tags::ShiftExcess for details on this split. Also note that the background shift is degenerate with \(\bar{u}\) so we treat the quantity \(\left(\bar{L}\beta_\mathrm{background}\right)^{ij} - \bar{u}^{ij}\) as a single background field (see Xcts::Tags::LongitudinalShiftBackgroundMinusDtConformalMetric). The covariant divergence of this quantity w.r.t. the conformal metric is also a background field.

Solving a subset of equations:
This system allows you to select a subset of Xcts::Equations so you don't have to solve for all variables if some are analytically known. Specify the set of enabled equations as the first template parameter. The set of required background fields depends on your choice of equations.
Conformal background geometry:
The equations simplify significantly if the conformal metric is flat ("conformal flatness") and in Cartesian coordinates. In this case you can specify Xcts::Geometry::FlatCartesian as the second template parameter so computations are optimized for a flat background geometry and you don't have to supply geometric background fields. Else, specify Xcts::Geometry::Curved.
Conformal matter scale:
The matter source terms in the XCTS equations have the known defect that they can spoil uniqueness of the solutions. See e.g. [16] for a detailed study. To cure this defect one can conformally re-scale the matter source terms as \(\bar{\rho}=\psi^n\rho\), \(\bar{S}=\psi^n S\) and \(\bar{S^i}=\psi^n S^i\) and treat the re-scaled fields as freely-specifyable background data for the XCTS equations. You can select the ConformalMatterScale \(n\) as the third template parameter. Common choices are \(n=0\) for vacuum systems where the matter sources are irrelevant, \(n=6\) as suggested in [79] or \(n=8\) as suggested in [16].

Member Typedef Documentation

◆ boundary_conditions_base

template<Equations EnabledEquations, Geometry ConformalGeometry, int ConformalMatterScale>
using Xcts::FirstOrderSystem< EnabledEquations, ConformalGeometry, ConformalMatterScale >::boundary_conditions_base
Initial value:
Base class for boundary conditions for elliptic systems.
Definition BoundaryCondition.hpp:91

◆ inv_metric_tag

template<Equations EnabledEquations, Geometry ConformalGeometry, int ConformalMatterScale>
using Xcts::FirstOrderSystem< EnabledEquations, ConformalGeometry, ConformalMatterScale >::inv_metric_tag
Initial value:
tmpl::conditional_t<
ConformalGeometry == Geometry::FlatCartesian, void,
@ FlatCartesian
Euclidean (flat) manifold with Cartesian coordinates, i.e. the metric has components in these coordi...
Definition Geometry.hpp:12
gr::Tags::Conformal< gr::Tags::InverseSpatialMetric< DataType, Dim, Frame >, 4 > InverseConformalMetric
The conformally scaled inverse spatial metric , where is the Xcts::Tags::ConformalFactor and is the...
Definition Tags.hpp:53

◆ primal_fields

template<Equations EnabledEquations, Geometry ConformalGeometry, int ConformalMatterScale>
using Xcts::FirstOrderSystem< EnabledEquations, ConformalGeometry, ConformalMatterScale >::primal_fields
Initial value:
tmpl::flatten<tmpl::list<
tmpl::conditional_t<
EnabledEquations == Equations::HamiltonianAndLapse or
tmpl::conditional_t<
@ HamiltonianAndLapse
Both the Hamiltonian constraint and the lapse equation, solved for and .
Definition FluxesAndSources.hpp:30
@ HamiltonianLapseAndShift
The full XCTS equations, solved for , and .
Definition FluxesAndSources.hpp:33
The conformal factor minus one . Useful as dynamic variable in formulations of the XCTS equations bec...
Definition Tags.hpp:32
The lapse times the conformal factor minus one .
Definition Tags.hpp:74
The dynamic part of the shift .
Definition Tags.hpp:104

◆ primal_fluxes

template<Equations EnabledEquations, Geometry ConformalGeometry, int ConformalMatterScale>
using Xcts::FirstOrderSystem< EnabledEquations, ConformalGeometry, ConformalMatterScale >::primal_fluxes
Initial value:
tmpl::flatten<tmpl::list<
tmpl::conditional_t<
EnabledEquations == Equations::HamiltonianAndLapse or
tmpl::size_t<3>, Frame::Inertial>,
tmpl::list<>>,
tmpl::conditional_t<
tmpl::list<>>>>
Definition IndexType.hpp:46
Prefix indicating a flux.
Definition Prefixes.hpp:114
The conformal longitudinal operator applied to the shift excess .
Definition Tags.hpp:149

◆ sources_computer

template<Equations EnabledEquations, Geometry ConformalGeometry, int ConformalMatterScale>
using Xcts::FirstOrderSystem< EnabledEquations, ConformalGeometry, ConformalMatterScale >::sources_computer
Initial value:
The sources for the first-order formulation of the XCTS equations.
Definition FluxesAndSources.hpp:210

◆ sources_computer_linearized

template<Equations EnabledEquations, Geometry ConformalGeometry, int ConformalMatterScale>
using Xcts::FirstOrderSystem< EnabledEquations, ConformalGeometry, ConformalMatterScale >::sources_computer_linearized
Initial value:
LinearizedSources<EnabledEquations, ConformalGeometry,
ConformalMatterScale>
The linearization of the sources for the first-order formulation of the XCTS equations.
Definition FluxesAndSources.hpp:416

The documentation for this struct was generated from the following file:
  • src/Elliptic/Systems/Xcts/FirstOrderSystem.hpp