Note: this is documentation for an old release. View the latest documentation at docs.fenicsproject.org/basix/v0.8.0/cpp/dof-transformations_8h_source.html

Basix 0.7.0

Home     Installation     Demos     C++ docs     Python docs

dof-transformations.h
1 // Copyright (c) 2020 Chris Richardson & Matthew Scroggs
2 // FEniCS Project
3 // SPDX-License-Identifier: MIT
4 
5 #pragma once
6 
7 #include "cell.h"
8 #include "maps.h"
9 #include "mdspan.hpp"
10 #include "polyset.h"
11 #include <array>
12 #include <concepts>
13 #include <map>
14 #include <utility>
15 #include <vector>
16 
22 {
23 
40 template <std::floating_point T>
41 std::map<cell::type, std::pair<std::vector<T>, std::array<std::size_t, 3>>>
43  cell::type cell_type,
44  const std::array<
45  std::vector<MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan<
46  const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents<std::size_t, 2>>>,
47  4>& x,
48  const std::array<
49  std::vector<MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan<
50  const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents<std::size_t, 4>>>,
51  4>& M,
52  MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan<
53  const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents<std::size_t, 2>>
54  coeffs,
55  int degree, std::size_t vs, maps::type map_type, polyset::type ptype);
56 
57 } // namespace basix::doftransforms
type
Cell type.
Definition: cell.h:21
Definition: dof-transformations.h:22
std::map< cell::type, std::pair< std::vector< T >, std::array< std::size_t, 3 > > > compute_entity_transformations(cell::type cell_type, const std::array< std::vector< MDSPAN_IMPL_STANDARD_NAMESPACE::mdspan< const T, MDSPAN_IMPL_STANDARD_NAMESPACE::dextents< std::size_t, 2 >>>, 4 > &x, const 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.
Definition: dof-transformations.cpp:421
type
Map type.
Definition: maps.h:38
type
Cell type.
Definition: polyset.h:136