Note: this is documentation for an old release. View the latest documentation at docs.fenicsproject.org/basix/v0.9.0/cpp/moments_8h_source.html
Home Installation C++ docs Python docs
moments.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 <xtensor/xtensor.hpp>
9 
10 namespace basix
11 {
12 
13 class FiniteElement;
14 
18 namespace moments
19 {
20 
40 xt::xtensor<double, 3>
42 
60 xt::xtensor<double, 3>
62 
79 xt::xtensor<double, 3>
81 
97 xt::xtensor<double, 3>
99 
113 std::pair<std::vector<xt::xtensor<double, 2>>,
114  std::vector<xt::xtensor<double, 3>>>
115 make_integral_moments(const FiniteElement& moment_space, cell::type celltype,
116  std::size_t value_size, int q_deg);
117 
135 std::pair<std::vector<xt::xtensor<double, 2>>,
136  std::vector<xt::xtensor<double, 3>>>
138  std::size_t value_size, int q_deg);
139 
151 std::pair<std::vector<xt::xtensor<double, 2>>,
152  std::vector<xt::xtensor<double, 3>>>
154  std::size_t value_size, int q_deg);
155 
167 std::pair<std::vector<xt::xtensor<double, 2>>,
168  std::vector<xt::xtensor<double, 3>>>
170  std::size_t value_size, int q_deg);
171 
172 } // namespace moments
173 } // namespace basix
basix::moments::make_integral_moments
std::pair< std::vector< xt::xtensor< double, 2 > >, std::vector< xt::xtensor< double, 3 > > > make_integral_moments(const FiniteElement &moment_space, cell::type celltype, std::size_t value_size, int q_deg)
Definition: moments.cpp:311
basix::moments::make_tangent_integral_moments
std::pair< std::vector< xt::xtensor< double, 2 > >, std::vector< xt::xtensor< double, 3 > > > make_tangent_integral_moments(const FiniteElement &V, cell::type celltype, std::size_t value_size, int q_deg)
Definition: moments.cpp:447
basix::cell::type
type
Cell type.
Definition: cell.h:16
basix::moments::make_normal_integral_moments
std::pair< std::vector< xt::xtensor< double, 2 > >, std::vector< xt::xtensor< double, 3 > > > make_normal_integral_moments(const FiniteElement &V, cell::type celltype, std::size_t value_size, int q_deg)
Definition: moments.cpp:504
basix::moments::create_moment_dof_transformations
xt::xtensor< double, 3 > create_moment_dof_transformations(const FiniteElement &moment_space)
Definition: moments.cpp:237
basix::moments::create_tangent_moment_dof_transformations
xt::xtensor< double, 3 > create_tangent_moment_dof_transformations(const FiniteElement &moment_space)
Definition: moments.cpp:296
basix::moments::create_normal_moment_dof_transformations
xt::xtensor< double, 3 > create_normal_moment_dof_transformations(const FiniteElement &moment_space)
Definition: moments.cpp:285
basix::FiniteElement
Definition: finite-element.h:194
basix
Placeholder.
Definition: brezzi-douglas-marini.h:9
basix::moments::make_dot_integral_moments
std::pair< std::vector< xt::xtensor< double, 2 > >, std::vector< xt::xtensor< double, 3 > > > make_dot_integral_moments(const FiniteElement &V, cell::type celltype, std::size_t value_size, int q_deg)
Definition: moments.cpp:386
basix::moments::create_dot_moment_dof_transformations
xt::xtensor< double, 3 > create_dot_moment_dof_transformations(const FiniteElement &moment_space)
Definition: moments.cpp:91