HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
|
Structure to decompose a set of polynomials on a basis on an edge or a cell. More...
#include <basis.hpp>
Public Member Functions | |
DecomposePoly (const Edge &E, const BasisType &basis) | |
Constructor for edge. | |
DecomposePoly (const Cell &T, const BasisType &basis) | |
Constructor for cell. | |
QuadratureRule | get_nodes () const |
Return the set of nodes (useful to compute value of polynomial to decompose via evaluate_quad) | |
Family< BasisType > | family (boost::multi_array< typename BasisType::FunctionValue, 2 > &values) |
Returns the decomposed polynomials as a Family of the provided basis. | |
Public Attributes | |
size_t | m_dim |
BasisType | m_basis |
Family< BasisType > | m_on_basis |
boost::multi_array< typename BasisType::FunctionValue, 2 > | m_on_basis_nodes |
size_t | m_nb_nodes |
QuadratureRule | m_nodes |
Nodes for the interpolation. | |
Structure to decompose a set of polynomials on a basis on an edge or a cell.
The main interest of this structure for edges is to give a decomposition of traces (scalar, normal, etc.) of cell polynomials on a basis of edge polynomials. This enables the usage of these traces in a face GramMatrix. However, the decomposition leads to increased rouding errors compared to a straight usage of compute_gram_matrix. Some tests however seem to indicate that this version of DecomposePoly is relatively robust up to degrees ~4 or 5