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 Types | Public Member Functions | Static Public Attributes | List of all members
HArDCore3D::CurlBasis< BasisType > Class Template Reference

Basis for the space of curls of polynomials. More...

#include <basis.hpp>

Public Types

typedef VectorRd FunctionValue
 
typedef Eigen::Matrix< double, dimspace, dimspaceGradientValue
 
typedef Eigen::Matrix< double, dimspace, dimspaceCurlValue
 
typedef double DivergenceValue
 
typedef Eigen::Matrix< double, dimspace, dimspace *dimspaceHessianValue
 
typedef BasisType::GeometricSupport GeometricSupport
 
typedef BasisType AncestorType
 

Public Member Functions

 CurlBasis (const BasisType &basis)
 Constructor.
 
size_t dimension () const
 Compute the dimension of the basis.
 
FunctionValue function (size_t i, const VectorRd &x) const
 Evaluate the i-th basis function at point x.
 
constexpr const BasisTypeancestor () const
 Return the ancestor (basis that the gradient was taken of)
 

Static Public Attributes

static constexpr const TensorRankE tensorRank = Vector
 
static constexpr const bool hasAncestor = true
 
static const bool hasFunction = true
 
static const bool hasGradient = false
 
static const bool hasCurl = false
 
static const bool hasDivergence = false
 
static const bool hasHessian = false
 
static const bool hasCurlCurl = false
 

Detailed Description

template<typename BasisType>
class HArDCore3D::CurlBasis< BasisType >

Basis for the space of curls of polynomials.

To construct a basis of R^k, assumes that the vector basis from which it is constructed is a basis for G^{k+1,c} (in 3D) or P^{k+1}/P^0 (in 2D). This can also be used to create a family of curl (not necessarily linearly independent)


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