HArD::Core3D
Hybrid Arbitrary Degree::Core 3D - Library to implement 3D schemes with vertex, edge, face and cell polynomials as unknowns
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
HArDCore3D::DecomposePoly< BasisType > Struct Template Reference

Structure to decompose a set of polynomials on a basis on a face or a cell. More...

#include <basis.hpp>

Public Member Functions

 DecomposePoly (const Face &F, const BasisType &basis)
 Constructor for face.
 
 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< BasisTypefamily (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< BasisTypem_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.
 

Detailed Description

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

Structure to decompose a set of polynomials on a basis on a face or a cell.

The main interest of this structure for faces is to give a decomposition of traces (scalar, normal, etc.) of cell polynomials on a basis of face 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: