Reference documentation for deal.II version 9.1.1
|
#include <deal.II/base/polynomials_p.h>
Public Member Functions | |
PolynomialsP (const unsigned int p) | |
unsigned int | degree () const |
std::array< unsigned int, dim > | directional_degrees (unsigned int n) const |
Public Member Functions inherited from PolynomialSpace< dim > | |
template<class Pol > | |
PolynomialSpace (const std::vector< Pol > &pols) | |
template<class StreamType > | |
void | output_indices (StreamType &out) const |
void | set_numbering (const std::vector< unsigned int > &renumber) |
void | compute (const Point< dim > &unit_point, std::vector< double > &values, std::vector< Tensor< 1, dim >> &grads, std::vector< Tensor< 2, dim >> &grad_grads, std::vector< Tensor< 3, dim >> &third_derivatives, std::vector< Tensor< 4, dim >> &fourth_derivatives) const |
double | compute_value (const unsigned int i, const Point< dim > &p) const |
template<int order> | |
Tensor< order, dim > | compute_derivative (const unsigned int i, const Point< dim > &p) const |
Tensor< 1, dim > | compute_grad (const unsigned int i, const Point< dim > &p) const |
Tensor< 2, dim > | compute_grad_grad (const unsigned int i, const Point< dim > &p) const |
unsigned int | n () const |
unsigned int | degree () const |
Static Public Attributes | |
static const unsigned int | dimension = dim |
Static Public Attributes inherited from PolynomialSpace< dim > | |
static const unsigned int | dimension = dim |
Private Member Functions | |
void | create_polynomial_ordering (std::vector< unsigned int > &index_map) const |
Private Attributes | |
const unsigned int | p |
Additional Inherited Members | |
Static Public Member Functions inherited from PolynomialSpace< dim > | |
static unsigned int | compute_n_pols (const unsigned int n) |
Protected Member Functions inherited from PolynomialSpace< dim > | |
std::array< unsigned int, dim > | compute_index (const unsigned int n) const |
This class implements the polynomial space of degree p
based on the monomials \({1,x,x^2,...}\). I.e. in d
dimensions it constructs all polynomials of the form \(\prod_{i=1}^d x_i^{n_i}\), where \(\sum_i n_i\leq p\). The base polynomials are given a specific ordering, e.g. in 2 dimensions: \({1,x,y,xy,x^2,y^2,x^2y,xy^2,x^3,y^3,...}\). The ordering of the monomials in \(P_k1\) matches the ordering of the monomials in \(P_k2\) for \(k2>k1\).
Definition at line 48 of file polynomials_p.h.
PolynomialsP< dim >::PolynomialsP | ( | const unsigned int | p | ) |
Constructor. Creates all basis functions of \(P_p\).
Definition at line 23 of file polynomials_p.cc.
|
inline |
Return the degree p
of the polynomial space P_p
.
Note, that this number is PolynomialSpace::degree()-1
, compare definition in PolynomialSpace.
Definition at line 99 of file polynomials_p.h.
|
inline |
For the n
th polynomial \(p_n(x,y,z)=x^i y^j z^k\) this function gives the degrees i,j,k in the x,y,z directions.
In 1d and 2d, obviously only i and i,j are returned.
Definition at line 107 of file polynomials_p.h.
|
private |
Fills the index_map
.
|
static |
Access to the dimension of this object, for checking and automatic setting of dimension in other classes.
Definition at line 55 of file polynomials_p.h.
|
private |
Degree p
of the polynomial space \(P_p\), i.e. the number p
which was given to the constructor.
Definition at line 92 of file polynomials_p.h.