SpECTRE  v2025.03.17
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
ScalarTensor::System Struct Reference

Scalar Tensor system obtained from combining the CurvedScalarWave and gh systems. More...

#include <System.hpp>

Public Types

using boundary_conditions_base = BoundaryConditions::BoundaryCondition
 
using boundary_correction_base = BoundaryCorrections::BoundaryCorrection
 
using gh_system = gh::System< 3_st >
 
using scalar_system = CurvedScalarWave::System< 3_st >
 
using variables_tag = ::Tags::Variables< tmpl::append< typename gh_system::variables_tag::tags_list, typename scalar_system::variables_tag::tags_list > >
 
using flux_variables = implementation defined
 
using gradient_variables = implementation defined
 
using gradients_tags = gradient_variables
 
using compute_largest_characteristic_speed = Tags::ComputeLargestCharacteristicSpeed<>
 
using compute_volume_time_derivative_terms = ScalarTensor::TimeDerivative
 
using inverse_spatial_metric_tag = typename gh_system::inverse_spatial_metric_tag
 

Static Public Attributes

static constexpr bool has_primitive_and_conservative_vars = false
 
static constexpr size_t volume_dim = 3
 
static constexpr bool is_in_flux_conservative_form = false
 

Detailed Description

Scalar Tensor system obtained from combining the CurvedScalarWave and gh systems.

Details

The evolution equations follow from

Rab=8πTab(Ψ,TR) ,Ψ=0 ,

where Ψ is the scalar field and the trace-reversed stress-energy tensor of the scalar field is given by

Tab(Ψ,TR)Tab(Ψ)12gabgcdTcd(Ψ)=aΨbΨ .

Both systems are recast as first-order systems in terms of the variables

gab ,Πab=1α(tgabβkkgab) ,Φiab=igab ,Ψ ,Π=1α(tΨβkkΨ) ,Φi=iΨ ,

where α and βk are the lapse and shift.

The computation of the evolution equations is implemented in each system in gh::TimeDerivative and CurvedScalarWave::TimeDerivative, respectively. We take the additional step of adding the contribution of the trace-reversed stress-energy tensor to the evolution equations of the metric.

Note
Although both systems are templated in the spatial dimension, we only implement this system in three spatial dimensions.

The documentation for this struct was generated from the following file: