SpECTRE  v2026.04.01
Loading...
Searching...
No Matches
Element< VolumeDim > Class Template Reference

A spectral element with knowledge of its neighbors. More...

#include <Element.hpp>

Public Types

using Neighbors_t = DirectionMap<VolumeDim, Neighbors<VolumeDim>>

Public Member Functions

 Element (ElementId< VolumeDim > id, Neighbors_t neighbors, std::array< domain::Topology, VolumeDim > topologies=make_array< VolumeDim >(domain::Topology::I1))
 Constructor.
 Element ()=default
 Default needed for serialization.
 Element (const Element< VolumeDim > &)=default
 Element (Element< VolumeDim > &&)=default
Element< VolumeDim > & operator= (const Element< VolumeDim > &)=default
Element< VolumeDim > & operator= (Element< VolumeDim > &&)=default
const std::unordered_set< Direction< VolumeDim > > & external_boundaries () const
 The directions of the faces of the Element that are external boundaries.
const std::unordered_set< Direction< VolumeDim > > & internal_boundaries () const
 The directions of the faces of the Element that are internal boundaries.
const ElementId< VolumeDim > & id () const
 A unique ID for the Element.
const Neighbors_tneighbors () const
 Information about the neighboring Elements.
size_t number_of_neighbors () const
 The number of neighbors this element has.
const std::array< domain::Topology, VolumeDim > & topologies () const
 The topology in each dimensio of this Element.
const DirectionMap< VolumeDim, domain::FaceType > & face_types () const
 The FaceType in each direction.
void pup (PUP::er &p)

Detailed Description

template<size_t VolumeDim>
class Element< VolumeDim >

A spectral element with knowledge of its neighbors.

Template Parameters
VolumeDimthe volume dimension.

Constructor & Destructor Documentation

◆ Element()

template<size_t VolumeDim>
Element< VolumeDim >::Element ( ElementId< VolumeDim > id,
Neighbors_t neighbors,
std::array< domain::Topology, VolumeDim > topologies = make_array< VolumeDim >(domain::Topology::I1) )

Constructor.

Parameters
ida unique identifier for the Element.
neighborsinfo about the Elements that share an interface with this Element.
topologiesdomain::Topology in each dimension (default value is domain::Topology::I1)

The documentation for this class was generated from the following file:
  • src/Domain/Structure/Element.hpp