17 #include <deal.II/base/polynomials_p.h> 19 DEAL_II_NAMESPACE_OPEN
25 Polynomials::Monomial<double>::generate_complete_basis(p))
28 std::vector<unsigned int>
index_map(this->
n());
37 std::vector<unsigned int> &index_map)
const 39 Assert(index_map.size() == this->n(),
43 for (
unsigned int i = 0; i < this->n(); ++i)
50 const unsigned int imap2[6][21] = {
54 {0, 1, 4, 5, 2, 7, 6, 8, 3, 9},
55 {0, 1, 5, 6, 2, 9, 7, 10, 3, 12, 11, 8, 13, 4, 14},
56 {0, 1, 6, 7, 2, 11, 8, 12, 3, 15, 13, 9, 16, 4, 18, 14, 17, 10, 19, 5, 20}};
62 std::vector<unsigned int> &index_map)
const 64 Assert(index_map.size() == this->n(),
74 for (
unsigned int i = 0; i < this->n(); ++i)
75 index_map[i] = imap2[p][i];
81 const unsigned int imap3[4][20] = {{0},
83 {0, 1, 3, 6, 4, 7, 8, 2, 5, 9},
84 {0, 1, 4, 10, 5, 11, 13, 2, 7, 16,
85 14, 6, 12, 8, 15, 17, 18, 3, 9, 19}};
91 std::vector<unsigned int> &index_map)
const 93 Assert(index_map.size() == this->n(),
103 for (
unsigned int i = 0; i < this->n(); ++i)
104 index_map[i] = imap3[p][i];
113 DEAL_II_NAMESPACE_CLOSE
void create_polynomial_ordering(std::vector< unsigned int > &index_map) const
void set_numbering(const std::vector< unsigned int > &renumber)
#define Assert(cond, exc)
static ::ExceptionBase & ExcDimensionMismatch(std::size_t arg1, std::size_t arg2)
static ::ExceptionBase & ExcNotImplemented()
std::vector< unsigned int > index_map
PolynomialsP(const unsigned int p)