|
HArD::Core3D
Hybrid Arbitrary Degree::Core 3D - Library to implement 3D schemes with vertex, edge, face and cell polynomials as unknowns
|
Basis for the space of curls of polynomials. More...
#include <basis.hpp>
Public Types | |
| typedef VectorRd | FunctionValue |
| typedef Eigen::Matrix< double, dimspace, dimspace > | GradientValue |
| typedef Eigen::Matrix< double, dimspace, dimspace > | CurlValue |
| typedef double | DivergenceValue |
| typedef Eigen::Matrix< double, dimspace, dimspace *dimspace > | HessianValue |
| 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 BasisType & | ancestor () 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 |
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)