Note: this is documentation for an old release. View the latest documentation at docs.fenicsproject.org/dolfinx/v0.9.0/cpp/doxygen/d8/dfb/classdolfinx_1_1mesh_1_1Geometry.html
DOLFINx 0.7.3
DOLFINx C++ interface
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Geometry< T > Class Template Reference

Geometry stores the geometry imposed on a mesh. More...

#include <Geometry.h>

Public Types

using value_type = T
 Value type.
 

Public Member Functions

template<typename U , typename V , typename W >
requires std::is_convertible_v<std::remove_cvref_t<U>, std::vector<std::int32_t>>
and std::is_convertible_v< std::remove_cvref_t< V >, std::vector< T > > and std::is_convertible_v< std::remove_cvref_t< W >, std::vector< std::int64_t > > Geometry (std::shared_ptr< const common::IndexMap > index_map, U &&dofmap, const std::vector< fem::CoordinateElement< typename std::remove_reference_t< typename V::value_type > > > &elements, V &&x, int dim, W &&input_global_indices)
 Constructor of object that holds mesh geometry data.
 
 Geometry (const Geometry &)=default
 Copy constructor.
 
 Geometry (Geometry &&)=default
 Move constructor.
 
 ~Geometry ()=default
 Destructor.
 
Geometryoperator= (const Geometry &)=delete
 Copy Assignment.
 
Geometryoperator= (Geometry &&)=default
 Move Assignment.
 
int dim () const
 Return Euclidean dimension of coordinate system.
 
MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const std::int32_t, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents< std::size_t, 2 > > dofmap () const
 DOF map.
 
std::shared_ptr< const common::IndexMapindex_map () const
 Index map.
 
std::span< const value_typex () const
 Access geometry degrees-of-freedom data (const version).
 
std::span< value_typex ()
 Access geometry degrees-of-freedom data (non-const version).
 
const std::vector< fem::CoordinateElement< value_type > > & cmaps () const
 The elements that describes the geometry maps.
 
const std::vector< std::int64_t > & input_global_indices () const
 Global user indices.
 

Detailed Description

template<std::floating_point T>
class dolfinx::mesh::Geometry< T >

Geometry stores the geometry imposed on a mesh.

Constructor & Destructor Documentation

◆ Geometry()

template<std::floating_point T>
template<typename U , typename V , typename W >
requires std::is_convertible_v<std::remove_cvref_t<U>, std::vector<std::int32_t>>
and std::is_convertible_v< std::remove_cvref_t< V >, std::vector< T > > and std::is_convertible_v< std::remove_cvref_t< W >, std::vector< std::int64_t > > Geometry ( std::shared_ptr< const common::IndexMap index_map,
U &&  dofmap,
const std::vector< fem::CoordinateElement< typename std::remove_reference_t< typename V::value_type > > > &  elements,
V &&  x,
int  dim,
W &&  input_global_indices 
)
inline

Constructor of object that holds mesh geometry data.

Parameters
[in]index_mapIndex map associated with the geometry dofmap
[in]dofmapThe geometry (point) dofmap. For a cell, it gives the position in the point array of each local geometry node
[in]elementsThe elements that describes the cell geometry maps
[in]xThe point coordinates. The shape is (num_points, 3) and the storage is row-major.
[in]dimThe geometric dimension (0 < dim <= 3).
[in]input_global_indicesThe 'global' input index of each point, commonly from a mesh input file.

Member Function Documentation

◆ cmaps()

template<std::floating_point T>
const std::vector< fem::CoordinateElement< value_type > > & cmaps ( ) const
inline

The elements that describes the geometry maps.

Returns
The coordinate/geometry elements

◆ x() [1/2]

template<std::floating_point T>
std::span< value_type > x ( )
inline

Access geometry degrees-of-freedom data (non-const version).

Returns
The flattened row-major geometry data, where the shape is (num_points, 3)

◆ x() [2/2]

template<std::floating_point T>
std::span< const value_type > x ( ) const
inline

Access geometry degrees-of-freedom data (const version).

Returns
The flattened row-major geometry data, where the shape is (num_points, 3)

The documentation for this class was generated from the following files: