SpECTRE  v2024.03.19
elliptic::dg::InitializeGeometry< Dim > Struct Template Reference

Initialize the background-independent geometry for the elliptic DG operator. More...

#include <Initialization.hpp>

Public Types

using return_tags = tmpl::list< domain::Tags::Mesh< Dim >, domain::Tags::Element< Dim >, domain::Tags::NeighborMesh< Dim >, domain::Tags::ElementMap< Dim >, domain::Tags::Coordinates< Dim, Frame::ElementLogical >, domain::Tags::Coordinates< Dim, Frame::Inertial >, domain::Tags::InverseJacobian< Dim, Frame::ElementLogical, Frame::Inertial >, domain::Tags::DetInvJacobian< Frame::ElementLogical, Frame::Inertial >, domain::Tags::DetJacobian< Frame::ElementLogical, Frame::Inertial >, domain::Tags::DetTimesInvJacobian< Dim, Frame::ElementLogical, Frame::Inertial > >
 
using argument_tags = tmpl::list< domain::Tags::InitialExtents< Dim >, domain::Tags::InitialRefinementLevels< Dim >, domain::Tags::Domain< Dim >, domain::Tags::FunctionsOfTime, elliptic::dg::Tags::Quadrature >
 
using volume_tags = argument_tags
 

Static Public Member Functions

static void apply (gsl::not_null< Mesh< Dim > * > mesh, gsl::not_null< Element< Dim > * > element, gsl::not_null< DirectionalIdMap< Dim, Mesh< Dim > > * > neighbor_meshes, gsl::not_null< ElementMap< Dim, Frame::Inertial > * > element_map, gsl::not_null< tnsr::I< DataVector, Dim, Frame::ElementLogical > * > logical_coords, gsl::not_null< tnsr::I< DataVector, Dim, Frame::Inertial > * > inertial_coords, gsl::not_null< InverseJacobian< DataVector, Dim, Frame::ElementLogical, Frame::Inertial > * > inv_jacobian, gsl::not_null< Scalar< DataVector > * > det_inv_jacobian, gsl::not_null< Scalar< DataVector > * > det_jacobian, gsl::not_null< InverseJacobian< DataVector, Dim, Frame::ElementLogical, Frame::Inertial > * > det_times_inv_jacobian, const std::vector< std::array< size_t, Dim > > &initial_extents, const std::vector< std::array< size_t, Dim > > &initial_refinement, const Domain< Dim > &domain, const domain::FunctionsOfTimeMap &functions_of_time, Spectral::Quadrature quadrature, const ElementId< Dim > &element_id)
 

Detailed Description

template<size_t Dim>
struct elliptic::dg::InitializeGeometry< Dim >

Initialize the background-independent geometry for the elliptic DG operator.

Geometric aliasing

The geometric quantities such as Jacobians are evaluated on the DG grid. Since we know them analytically, we could also evaluate them on a higher-order grid or with a stronger quadrature (Gauss instead of Gauss-Lobatto) to combat geometric aliasing. See discussions in [182] and [63] .


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