SpECTRE
v2024.05.11
|
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) |
Initialize the background-independent geometry for the elliptic DG operator.
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 [186] and [63] .