Defines Legendre polynomials in the specified dimension on reference elements. More...
#include <ptems/spaces/monomials.hpp>
Static Public Member Functions | |
| template<typename T = double> | |
| static Vector< DIM > | EstimateAnalyticity ([[maybe_unused]] const ReferenceElement< DIM > &refElement, [[maybe_unused]] std::size_t polydeg, [[maybe_unused]] T *coefficients) |
| Estimates the analyticity of a function with the current basis and specified coefficients. More... | |
| static T * | Polynomials (const ReferenceElement< DIM > &refElement, const Vector< DIM > &pt, T *result, std::size_t polydeg) |
| Computes the value of the first N hierarchical polynomials on the reference element, where N is the result of NumberDoFs(refElement, polydeg). More... | |
| static FuncAndGradData< DIM, T > * | Gradient (const ReferenceElement< DIM > &refElement, const Vector< DIM > &pt, FuncAndGradData< DIM, T > *result, std::size_t polydeg) |
| Computes the value of the first N hierarchical polynomials, and their first order derivatives, on the reference element, where N is the result of NumberDoFs(refElement, polydeg). More... | |
| static FuncGradAndHessianData< DIM, T > * | Hessian (const ReferenceElement< DIM > &refElement, const Vector< DIM > &pt, FuncGradAndHessianData< DIM, T > *result, std::size_t polydeg) |
| Computes the value of the first N hierarchical polynomials, and their first and second order derivatives, on the reference element, where N is the result of NumberDoFs(refElement, polydeg). More... | |
| static std::vector< std::size_t > | Indices (const ReferenceElement< DIM > &refElement, std::size_t originalPolydeg, std::size_t newPolydeg) |
Gets the indices of the subset of the basis for polynomial degree originalPolydeg which form the basis for polynomial degree newPolydeg. More... | |
Defines Legendre polynomials in the specified dimension on reference elements.
Defines the set of hierarchical monomials in the reference element of the form \(\prod_{i=1}^{DIM} x_i^\alpha_i\), for the multi-index \(\alpha\).
| DIM | The dimension the Legendre polynomials are in |
The properties of the multi-index depend on the type of reference element; e.g.,
|
inlinestatic |
Estimates the analyticity of a function with the current basis and specified coefficients.
| T | The type of the coefficients (default=double) |
| refElement | The reference element |
| polydeg | The polynomial degree of the function |
| coefficients | Array of coefficients for each basis. Must be length of NumberDoFs |
|
inlinestaticinherited |
Computes the value of the first N hierarchical polynomials, and their first order derivatives, on the reference element, where N is the result of NumberDoFs(refElement, polydeg).
| T | The type of the result |
| refElement | Reference element - either the reference square or triangle |
| pt | The point to compute the values of the hierarchical polynomial at |
| result | Array of at least NumberDoFs(refElement, polydeg) entries, to store the result into |
| polydeg | The polynomial degree of the hierarchical basis functions |
=result+N where N is the number of basis functions depending on the reference element)
|
inlinestaticinherited |
Computes the value of the first N hierarchical polynomials, and their first and second order derivatives, on the reference element, where N is the result of NumberDoFs(refElement, polydeg).
| T | The type of the result |
| refElement | Reference element - either the reference square or triangle |
| pt | The point to compute the values of the hierarchical polynomial at |
| result | Array of at least NumberDoFs(refElement, polydeg) entries, to store the result into |
| polydeg | The polynomial degree of the hierarchical basis functions |
=result+N where N is the number of basis functions depending on the reference element)
|
inlinestaticinherited |
Gets the indices of the subset of the basis for polynomial degree originalPolydeg which form the basis for polynomial degree newPolydeg.
newPolydeg are contained within the set of polynomials of order originalPolydeg| std::invalid_argument | If newPolydeg > originalPolydeg |
| refElement | The reference element the bases are defined on |
| originalPolydeg | The polynomial degree of the original basis |
| newPolydeg | The polynomial degree of the smaller basis to get the indices of |
|
inlinestaticinherited |
Computes the value of the first N hierarchical polynomials on the reference element, where N is the result of NumberDoFs(refElement, polydeg).
| T | The type of the result |
| refElement | Reference element |
| pt | The point to compute the values of the hierarchical polynomial at |
| result | Array of at least NumberDoFs(refElement, polydeg) entries, to store the result into |
| polydeg | The polynomial degree of the hierarchical basis functions |
=result+N where N is the number of basis functions depending on the reference element)