2D specfem::assembly::mesh_impl::control_nodes

template<>
struct control_nodes<specfem::dimension::type::dim2>

2D control node data structure optimized for computational assembly.

The control nodes define the geometry of each spectral element and are used for coordinate transformations and shape function evaluations.

Template Parameters:

specfem::dimension::type::dim2 – Template parameter specializing for 2D.

Subclassed by specfem::assembly::mesh< specfem::dimension::type::dim2 >

Public Types

using ControlNodeIndexView = Kokkos::View<int**, Kokkos::LayoutLeft, Kokkos::DefaultExecutionSpace>

Kokkos view type for integer index mappings.

using ControlNodeCoordinatesView = Kokkos::View<type_real***, Kokkos::LayoutLeft, Kokkos::DefaultExecutionSpace>

Kokkos view type for real-valued coordinate data.

Public Functions

control_nodes(const specfem::assembly::mesh_impl::mesh_to_compute_mapping<specfem::dimension::type::dim2> &mapping, const specfem::mesh::control_nodes<specfem::dimension::type::dim2> &control_nodes)

Construct control nodes in from mesh control nodes.

Parameters:
  • mapping – Mapping object providing mesh-to-compute element reordering

  • control_nodes – Original mesh control node data in mesh ordering

control_nodes() = default

Default constructor.

Public Members

int nspec

Number of spectral elements in the mesh.

int ngnod

Number of control nodes per spectral element.

ControlNodeIndexView control_node_mapping

Device view containing control node indices in compute ordering.

Dimensions: [nspec, ngnod]. Maps from compute-ordered spectral elements to global control node indices.

ControlNodeCoordinatesView control_node_coord

Device view containing control node coordinates.

Dimensions: [ndim, nspec, ngnod] where ndim=2 for 2D problems. Stores (x, z) coordinates for each control node of each spectral element.

ControlNodeIndexView::HostMirror h_control_node_mapping

Host mirror view of control node index mapping.

ControlNodeCoordinatesView::HostMirror h_control_node_coord

Host mirror view of control node coordinates.