Rodin::Geometry::ConnectivityBase class

Abstract base class for mesh connectivity.

Defines the interface for accessing mesh topology and incidence relations between polytopes of different dimensions.

Derived classes

template<>
class Connectivity<Context::Local> final
Mesh connectivity for sequential (local) meshes.

Public functions

auto getGeometry(size_t d, Index idx) const -> Polytope::Type pure virtual
Gets the geometry type of a polytope.
auto getPolytope(size_t d, Index idx) const -> const Array<Index>& pure virtual
Gets the vertex indices defining a polytope.
auto getCount(size_t dim) const -> size_t pure virtual
Gets the count of polytopes in a dimension.
auto getCount(Polytope::Type g) const -> size_t pure virtual
Gets the count of polytopes of a specific geometry.
auto getDimension() const -> size_t pure virtual
Gets the topological dimension of the mesh.
auto getIncidence(size_t d, size_t dp) const -> const Incidence& pure virtual
Gets the full incidence relation $ d \rightarrow d' $ .
auto getIncidence(const std::pair<size_t, size_t> p, Index idx) const -> const IndexVector& pure virtual
Gets incident polytopes for a specific polytope.

Function documentation

Polytope::Type Rodin::Geometry::ConnectivityBase::getGeometry(size_t d, Index idx) const pure virtual

Gets the geometry type of a polytope.

Parameters
in Dimension of the polytope
idx in Index of the polytope
Returns Geometry type (Triangle, Tetrahedron, etc.)

const Array<Index>& Rodin::Geometry::ConnectivityBase::getPolytope(size_t d, Index idx) const pure virtual

Gets the vertex indices defining a polytope.

Parameters
in Dimension of the polytope
idx in Index of the polytope
Returns Array of vertex indices

size_t Rodin::Geometry::ConnectivityBase::getCount(size_t dim) const pure virtual

Gets the count of polytopes in a dimension.

Parameters
dim in Dimension
Returns Number of polytopes of dimension dim

size_t Rodin::Geometry::ConnectivityBase::getCount(Polytope::Type g) const pure virtual

Gets the count of polytopes of a specific geometry.

Parameters
in Geometry type
Returns Number of polytopes of type g

size_t Rodin::Geometry::ConnectivityBase::getDimension() const pure virtual

Gets the topological dimension of the mesh.

Returns Maximal dimension $ D $ of polytopes in the mesh

const Incidence& Rodin::Geometry::ConnectivityBase::getIncidence(size_t d, size_t dp) const pure virtual

Gets the full incidence relation $ d \rightarrow d' $ .

Parameters
in Source dimension
dp in Target dimension
Returns Incidence relation data structure

const IndexVector& Rodin::Geometry::ConnectivityBase::getIncidence(const std::pair<size_t, size_t> p, Index idx) const pure virtual

Gets incident polytopes for a specific polytope.

Parameters
in Pair (d, idx) specifying the polytope
idx in Index of the polytope
Returns Vector of incident polytope indices