Home Installation Demos C++ docs Python docs
basix::doftransforms Namespace Reference
Functions to transform DOFs in high degree Lagrange spaces. The functions in this namespace calculate the permutations that can be used to rotate and reflect DOF points in Lagrange spaces. More...
Functions | |
template<std::floating_point T> | |
std::map< cell::type, std::pair< std::vector< T >, std::array< std::size_t, 3 > > > | compute_entity_transformations (cell::type cell_type, std::array< std::vector< MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents< std::size_t, 2 >>>, 4 > x, std::array< std::vector< MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents< std::size_t, 4 >>>, 4 > M, MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents< std::size_t, 2 >> coeffs, int degree, std::size_t vs, maps::type map_type, polyset::type ptype) |
Compute the entity DOF transformations for an element. More... | |
Detailed Description
Functions to transform DOFs in high degree Lagrange spaces. The functions in this namespace calculate the permutations that can be used to rotate and reflect DOF points in Lagrange spaces.
Function Documentation
◆ compute_entity_transformations()
template<std::floating_point T>
std::map< cell::type, std::pair< std::vector< T >, std::array< std::size_t, 3 > > > basix::doftransforms::compute_entity_transformations | ( | cell::type | cell_type, |
std::array< std::vector< MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents< std::size_t, 2 >>>, 4 > | x, | ||
std::array< std::vector< MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents< std::size_t, 4 >>>, 4 > | M, | ||
MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents< std::size_t, 2 >> | coeffs, | ||
int | degree, | ||
std::size_t | vs, | ||
maps::type | map_type, | ||
polyset::type | ptype | ||
) |
Compute the entity DOF transformations for an element.
- Parameters
-
[in] cell_type The cell type [in] x Interpolation points for the element. Indices are (tdim, entity index, point index, dim) [in] M Interpolation matrix for the element. Indices are (tdim, entity index, dof, vs, point_index, derivative) [in] coeffs The coefficients that define the basis functions of the element in terms of the orthonormal basis. Shape is (dim(Legendre polynomials), dim(finite element polyset)) [in] degree The degree of the element [in] vs The value size of the element [in] map_type The map type used by the element [in] ptype The polyset type used by the element
- Returns
- Entity transformations. For each cell, the shape is (ntransformation, ndofs, ndofs)