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

#include <basis.hpp>

Public Types

typedef BasisType::FunctionValue FunctionValue
 
typedef BasisType::GradientValue GradientValue
 
typedef BasisType::CurlValue CurlValue
 
typedef BasisType::DivergenceValue DivergenceValue
 
typedef BasisType::RotorValue RotorValue
 
typedef BasisType::HessianValue HessianValue
 
typedef BasisType::GeometricSupport GeometricSupport
 
typedef BasisType AncestorType
 

Public Member Functions

 Family (const BasisType &basis, const Eigen::MatrixXd &matrix)
 Constructor. More...
 
size_t dimension () const
 Dimension of the family. This is actually the number of functions in the family, not necessarily linearly independent. More...
 
FunctionValue function (size_t i, const VectorRd &x) const
 Evaluate the i-th function at point x. More...
 
FunctionValue function (size_t i, size_t iqn, const boost::multi_array< FunctionValue, 2 > &ancestor_value_quad) const
 Evaluate the i-th function at a quadrature point iqn, knowing all the values of ancestor basis functions at the quadrature nodes (provided by eval_quad) More...
 
GradientValue gradient (size_t i, const VectorRd &x) const
 Evaluate the gradient of the i-th function at point x. More...
 
GradientValue gradient (size_t i, size_t iqn, const boost::multi_array< GradientValue, 2 > &ancestor_gradient_quad) const
 Evaluate the gradient of the i-th function at a quadrature point iqn, knowing all the gradients of ancestor basis functions at the quadrature nodes (provided by eval_quad) More...
 
CurlValue curl (size_t i, const VectorRd &x) const
 Evaluate the curl of the i-th function at point x. More...
 
CurlValue curl (size_t i, size_t iqn, const boost::multi_array< CurlValue, 2 > &ancestor_curl_quad) const
 Evaluate the curl of the i-th function at a quadrature point iqn, knowing all the curls of ancestor basis functions at the quadrature nodes (provided by eval_quad) More...
 
DivergenceValue divergence (size_t i, const VectorRd &x) const
 Evaluate the divergence of the i-th function at point x. More...
 
DivergenceValue divergence (size_t i, size_t iqn, const boost::multi_array< DivergenceValue, 2 > &ancestor_divergence_quad) const
 Evaluate the divergence of the i-th function at a quadrature point iqn, knowing all the divergences of ancestor basis functions at the quadrature nodes (provided by eval_quad) More...
 
DivergenceValue rotor (size_t i, const VectorRd &x) const
 Evaluate the scalar rotor of the i-th function at point x. More...
 
RotorValue rotor (size_t i, size_t iqn, const boost::multi_array< RotorValue, 2 > &ancestor_rotor_quad) const
 Evaluate the scalar rotor of the i-th function at a quadrature point iqn, knowing all the scalar rotors of ancestor basis functions at the quadrature nodes (provided by eval_quad) More...
 
HessianValue hessian (size_t i, const VectorRd &x) const
 Evaluate the Hessian of the i-th basis function at point x. More...
 
HessianValue hessian (size_t i, size_t iqn, const boost::multi_array< HessianValue, 2 > &ancestor_hessian_quad) const
 Evaluate the hessian of the i-th function at a quadrature point iqn, knowing all the hessian of ancestor basis functions at the quadrature nodes (provided by eval_quad) More...
 
const Eigen::MatrixXd & matrix () const
 Return the coefficient matrix. More...
 
constexpr const BasisType & ancestor () const
 Return the ancestor. More...
 
size_t max_degree () const
 Returns the maximum degree of the basis functions. More...
 

Static Public Attributes

constexpr static const TensorRankE tensorRank = BasisType::tensorRank
 
constexpr static const bool hasAncestor = true
 
static const bool hasFunction = BasisType::hasFunction
 
static const bool hasGradient = BasisType::hasGradient
 
static const bool hasCurl = BasisType::hasCurl
 
static const bool hasDivergence = BasisType::hasDivergence
 
static const bool hasRotor = BasisType::hasRotor
 
static const bool hasHessian = BasisType::hasHessian
 

Detailed Description

template<typename BasisType>
class HArDCore2D::Family< BasisType >

Family of functions expressed as linear combination of the functions of a given basis

If \((f_1,...,f_r)\) is the basis, then the family is \((\phi_1,...,\phi_l)\) where \(\phi_i = \sum_j M_ij f_j\). The matrix \(M\) is the member m_matrix.


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