SpECTRE
v2025.03.17
|
Actions related to elliptic discontinuous Galerkin schemes. More...
Classes | |
struct | DgOperator |
Apply the DG operator to the PrimalFieldsTag and write the result to the OperatorAppliedToFieldsTag More... | |
struct | ImposeInhomogeneousBoundaryConditionsOnSource |
For linear systems, impose inhomogeneous boundary conditions as contributions to the fixed sources (i.e. the RHS of the equations). More... | |
struct | InitializeDomain |
Initialize items related to the basic structure of the element. More... | |
Typedefs | |
template<typename System , typename BackgroundTag = void> | |
using | initialize_operator = implementation defined |
Initialize geometric and background quantities for the elliptic DG operator. More... | |
template<typename System , typename BackgroundTag = void> | |
using | amr_projectors = implementation defined |
AMR projectors for the tags added by initialize_operator | |
Actions related to elliptic discontinuous Galerkin schemes.
using elliptic::dg::Actions::initialize_operator = typedef tmpl::list< detail::InitializeFacesMortarsAndBackground<System, BackgroundTag> > |
Initialize geometric and background quantities for the elliptic DG operator.
The geometric and background quantities are initialized together because the geometry depends on the background metric through the normalization of face normals. Other examples for background fields are curvature quantities associated with the background metric, or matter sources such as a mass-density in the XCTS equations. All System::background_fields
are retrieved from the BackgroundTag
together, to enable re-using cached temporary quantities in the computations. The variables
function is invoked on the BackgroundTag
with the inertial coordinates, the element's Mesh
and the element's inverse Jacobian. These arguments allow computing numeric derivatives, if necessary. The BackgroundTag
can be set to void
(default) if the System
has no background fields.
DataBox:
domain::Tags::InitialExtents<Dim>
BackgroundTag
Tags::Mortars<domain::Tags::Mesh<Dim - 1>, Dim>
Tags::Mortars<::Tags::MortarSize<Dim - 1>, Dim>
Tags::Variables<background_fields>
domain::Tags::Coordinates<Dim, Frame::Inertial>
Tags::Normalized<domain::Tags::UnnormalizedFaceNormal<Dim>>
Tags::Magnitude<domain::Tags::UnnormalizedFaceNormal<Dim>>
Tags::Variables<background_fields>