Reference documentation for deal.II version 9.1.1
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
deal.II
base
polynomials_p.h
1
// ---------------------------------------------------------------------
2
//
3
// Copyright (C) 2004 - 2018 by the deal.II authors
4
//
5
// This file is part of the deal.II library.
6
//
7
// The deal.II library is free software; you can use it, redistribute
8
// it, and/or modify it under the terms of the GNU Lesser General
9
// Public License as published by the Free Software Foundation; either
10
// version 2.1 of the License, or (at your option) any later version.
11
// The full text of the license can be found in the file LICENSE.md at
12
// the top level directory of deal.II.
13
//
14
// ---------------------------------------------------------------------
15
16
#ifndef dealii_polynomials_P_h
17
#define dealii_polynomials_P_h
18
19
20
#include <deal.II/base/config.h>
21
22
#include <deal.II/base/exceptions.h>
23
#include <deal.II/base/point.h>
24
#include <deal.II/base/polynomial.h>
25
#include <deal.II/base/polynomial_space.h>
26
#include <deal.II/base/tensor.h>
27
28
#include <vector>
29
30
DEAL_II_NAMESPACE_OPEN
47
template
<
int
dim>
48
class
PolynomialsP
:
public
PolynomialSpace
<dim>
49
{
50
public
:
55
static
const
unsigned
int
dimension
= dim;
56
61
PolynomialsP
(
const
unsigned
int
p
);
62
69
unsigned
int
70
degree
()
const
;
71
78
std::array<unsigned int, dim>
79
directional_degrees
(
unsigned
int
n
)
const
;
80
81
private
:
85
void
86
create_polynomial_ordering
(std::vector<unsigned int> &
index_map
)
const
;
87
92
const
unsigned
int
p
;
93
};
94
97
template
<
int
dim>
98
inline
unsigned
int
99
PolynomialsP<dim>::degree
()
const
100
{
101
return
p;
102
}
103
104
105
template
<
int
dim>
106
inline
std::array<unsigned int, dim>
107
PolynomialsP<dim>::directional_degrees
(
unsigned
int
n)
const
108
{
109
return
this->compute_index(n);
110
}
111
112
DEAL_II_NAMESPACE_CLOSE
113
114
#endif
PolynomialsP::create_polynomial_ordering
void create_polynomial_ordering(std::vector< unsigned int > &index_map) const
PolynomialsP::directional_degrees
std::array< unsigned int, dim > directional_degrees(unsigned int n) const
Definition:
polynomials_p.h:107
PolynomialsP::degree
unsigned int degree() const
Definition:
polynomials_p.h:99
PolynomialsP::dimension
static const unsigned int dimension
Definition:
polynomials_p.h:55
PolynomialSpace::n
unsigned int n() const
Definition:
polynomial_space.h:292
PolynomialsP::p
const unsigned int p
Definition:
polynomials_p.h:92
PolynomialSpace::index_map
std::vector< unsigned int > index_map
Definition:
polynomial_space.h:245
PolynomialsP::PolynomialsP
PolynomialsP(const unsigned int p)
Definition:
polynomials_p.cc:23
PolynomialsP
Definition:
polynomials_p.h:48
PolynomialSpace
Definition:
polynomial_space.h:98
Generated by
1.8.16