HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
Loading...
Searching...
No Matches
Namespaces | Typedefs | Functions
GMpoly_edge.hpp File Reference
#include <cassert>
#include <cmath>
#include <mesh.hpp>
#include <quadraturerule.hpp>
#include <basis.hpp>
#include <GMpoly_cell.hpp>
Include dependency graph for GMpoly_edge.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  HArDCore2D
 

Typedefs

typedef std::vector< double > HArDCore2D::MonomialEdgeIntegralsType
 Type for list of edge integrals of monomials.
 

Functions

MonomialEdgeIntegralsType HArDCore2D::IntegrateEdgeMonomials (const Edge &E, const size_t maxdeg)
 Compute all integrals of edge monomials up to a total degree.
 
MonomialEdgeIntegralsType HArDCore2D::CheckIntegralsDegree (const Edge &E, const size_t degree, const MonomialEdgeIntegralsType &mono_int_map={})
 Checks if the degree of an existing list of monomial integrals is sufficient, other re-compute and return a proper list.
 
Eigen::MatrixXd HArDCore2D::GramMatrix (const Edge &E, const MonomialScalarBasisEdge &basis1, const MonomialScalarBasisEdge &basis2, MonomialEdgeIntegralsType mono_int_map={})
 Computes the Gram Matrix of a pair of local scalar monomial bases.
 
template<typename BasisType1 , typename BasisType2 >
Eigen::MatrixXd HArDCore2D::GramMatrix (const Edge &E, const BasisType1 &basis1, const BasisType2 &basis2, MonomialEdgeIntegralsType mono_int_map={})
 Generic template to compute the Gram Matrix of any pair of bases.
 
template<typename BasisType1 , typename BasisType2 , size_t N>
Eigen::MatrixXd HArDCore2D::GramMatrix (const Edge &E, const TensorizedVectorFamily< BasisType1, N > &basis1, const TensorizedVectorFamily< BasisType2, N > &basis2, MonomialEdgeIntegralsType mono_int_map={})
 GramMatrix of two tensorized families on the edge.
 
template<typename BasisType >
Eigen::MatrixXd HArDCore2D::GramMatrix (const Edge &E, const BasisType &basis, MonomialEdgeIntegralsType mono_int_map={})
 This overload to simplify the call to GramMatrix in case the two bases are the same.
 
Eigen::MatrixXd HArDCore2D::GMDer (const Edge &E, const MonomialScalarBasisEdge &basis1, const MonomialScalarBasisEdge &basis2, MonomialEdgeIntegralsType mono_int_map={})
 Computes the Gram Matrix of the derivative of a monomial basis with another monomial basis.
 
template<typename BasisType1 , typename BasisType2 >
Eigen::MatrixXd HArDCore2D::GMDer (const Edge &E, const BasisType1 &basis1, const BasisType2 &basis2, MonomialEdgeIntegralsType mono_int_map={})
 Generic template for GMDer with derived bases.
 
template<typename BasisType1 , typename BasisType2 >
Eigen::MatrixXd HArDCore2D::GramMatrix (const Edge &E, const GradientBasis< BasisType1 > &basis1, const BasisType2 &basis2, MonomialEdgeIntegralsType mono_int_map={})
 Computes the Gram Matrix of a gradient basis (considering the tangential gradient as a scalar) and a scalar basis.
 
template<typename BasisType1 , typename BasisType2 >
Eigen::MatrixXd HArDCore2D::GramMatrix (const Edge &E, const BasisType1 &basis1, const GradientBasis< BasisType2 > &basis2, MonomialEdgeIntegralsType mono_int_map={})
 Computes the Gram Matrix of a scalar basis and a gradient basis (considering the tangential gradient as a scalar)