HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
Public Member Functions | Public Attributes | List of all members
HArDCore2D::DecomposePoly< BasisType > Struct Template Reference

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. More...
 
 DecomposePoly (const Cell &T, const BasisType &basis)
 Constructor for cell. More...
 
QuadratureRule get_nodes () const
 Return the set of nodes (useful to compute value of polynomial to decompose via evaluate_quad) More...
 
Family< BasisType > family (boost::multi_array< typename BasisType::FunctionValue, 2 > &values)
 Returns the decomposed polynomials as a Family of the provided basis. More...
 

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. More...
 

Detailed Description

template<typename BasisType>
struct HArDCore2D::DecomposePoly< BasisType >

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


The documentation for this struct was generated from the following file: