MFEM
v3.3
Finite element discretization library
|
#include <fe.hpp>
Inherits mfem::FiniteElement.
Inherited by mfem::ND_HexahedronElement, mfem::ND_QuadrilateralElement, mfem::ND_SegmentElement, mfem::ND_TetrahedronElement, mfem::ND_TriangleElement, mfem::Nedelec1HexFiniteElement, mfem::Nedelec1TetFiniteElement, mfem::RT0HexFiniteElement, mfem::RT0QuadFiniteElement, mfem::RT0TetFiniteElement, mfem::RT0TriangleFiniteElement, mfem::RT1HexFiniteElement, mfem::RT1QuadFiniteElement, mfem::RT1TriangleFiniteElement, mfem::RT2QuadFiniteElement, mfem::RT2TriangleFiniteElement, mfem::RT_HexahedronElement, mfem::RT_QuadrilateralElement, mfem::RT_TetrahedronElement, and mfem::RT_TriangleElement.
Public Member Functions | |
VectorFiniteElement (int D, int G, int Do, int O, int M, int F=FunctionSpace::Pk) | |
FiniteElement (D, G, Do, O, F) | |
Jinv (D) | |
![]() | |
FiniteElement (int D, int G, int Do, int O, int F=FunctionSpace::Pk) | |
int | GetDim () const |
Returns the reference space dimension for the finite element. More... | |
int | GetGeomType () const |
Returns the Geometry::Type of the reference element. More... | |
int | GetDof () const |
Returns the number of degrees of freedom in the finite element. More... | |
int | GetOrder () const |
Returns the order of the finite element. More... | |
int | Space () const |
Returns the type of space on each element. More... | |
int | GetRangeType () const |
int | GetDerivRangeType () const |
int | GetMapType () const |
int | GetDerivType () const |
int | GetDerivMapType () const |
void | CalcPhysShape (ElementTransformation &Trans, Vector &shape) const |
Evaluate the values of all shape functions of a scalar finite element in physical space at the point described by Trans. More... | |
void | CalcPhysDShape (ElementTransformation &Trans, DenseMatrix &dshape) const |
Evaluate the gradients of all shape functions of a scalar finite element in physical space at the point described by Trans. More... | |
const IntegrationRule & | GetNodes () const |
virtual void | CalcVShape (const IntegrationPoint &ip, DenseMatrix &shape) const |
Evaluate the values of all shape functions of a vector finite element in reference space at the given point ip. More... | |
virtual void | CalcVShape (ElementTransformation &Trans, DenseMatrix &shape) const |
Evaluate the values of all shape functions of a vector finite element in physical space at the point described by Trans. More... | |
void | CalcPhysVShape (ElementTransformation &Trans, DenseMatrix &shape) const |
Equivalent to the CalcVShape() method with the same arguments. More... | |
virtual void | CalcDivShape (const IntegrationPoint &ip, Vector &divshape) const |
Evaluate the divergence of all shape functions of a vector finite element in reference space at the given point ip. More... | |
void | CalcPhysDivShape (ElementTransformation &Trans, Vector &divshape) const |
Evaluate the divergence of all shape functions of a vector finite element in physical space at the point described by Trans. More... | |
virtual void | CalcCurlShape (const IntegrationPoint &ip, DenseMatrix &curl_shape) const |
Evaluate the curl of all shape functions of a vector finite element in reference space at the given point ip. More... | |
void | CalcPhysCurlShape (ElementTransformation &Trans, DenseMatrix &curl_shape) const |
Evaluate the curl of all shape functions of a vector finite element in physical space at the point described by Trans. More... | |
virtual void | GetFaceDofs (int face, int **dofs, int *ndofs) const |
virtual void | CalcHessian (const IntegrationPoint &ip, DenseMatrix &h) const |
virtual void | GetLocalInterpolation (ElementTransformation &Trans, DenseMatrix &I) const |
virtual void | Project (Coefficient &coeff, ElementTransformation &Trans, Vector &dofs) const |
virtual void | Project (VectorCoefficient &vc, ElementTransformation &Trans, Vector &dofs) const |
virtual void | ProjectDelta (int vertex, Vector &dofs) const |
virtual void | Project (const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &I) const |
virtual void | ProjectGrad (const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &grad) const |
virtual void | ProjectCurl (const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &curl) const |
virtual void | ProjectDiv (const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &div) const |
virtual | ~FiniteElement () |
Protected Member Functions | |
void | SetDerivMembers () |
void | CalcVShape_RT (ElementTransformation &Trans, DenseMatrix &shape) const |
void | CalcVShape_ND (ElementTransformation &Trans, DenseMatrix &shape) const |
void | Project_RT (const double *nk, const Array< int > &d2n, VectorCoefficient &vc, ElementTransformation &Trans, Vector &dofs) const |
void | Project_RT (const double *nk, const Array< int > &d2n, const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &I) const |
void | ProjectGrad_RT (const double *nk, const Array< int > &d2n, const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &grad) const |
void | ProjectCurl_ND (const double *tk, const Array< int > &d2t, const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &curl) const |
void | ProjectCurl_RT (const double *nk, const Array< int > &d2n, const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &curl) const |
void | Project_ND (const double *tk, const Array< int > &d2t, VectorCoefficient &vc, ElementTransformation &Trans, Vector &dofs) const |
void | Project_ND (const double *tk, const Array< int > &d2t, const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &I) const |
void | ProjectGrad_ND (const double *tk, const Array< int > &d2t, const FiniteElement &fe, ElementTransformation &Trans, DenseMatrix &grad) const |
void | LocalInterpolation_RT (const double *nk, const Array< int > &d2n, ElementTransformation &Trans, DenseMatrix &I) const |
void | LocalInterpolation_ND (const double *tk, const Array< int > &d2t, ElementTransformation &Trans, DenseMatrix &I) const |
Protected Attributes | |
DenseMatrix | J |
DenseMatrix | Jinv |
DenseMatrix | curlshape |
DenseMatrix | curlshape_J |
![]() | |
int | Dim |
Dimension of reference space. More... | |
int | GeomType |
Geometry::Type of the reference element. More... | |
int | Dof |
Number of degrees of freedom. More... | |
int | Order |
Order/degree of the shape functions. More... | |
int | FuncSpace |
int | RangeType |
int | MapType |
int | DerivType |
int | DerivRangeType |
int | DerivMapType |
IntegrationRule | Nodes |
DenseMatrix | vshape |
Additional Inherited Members | |
![]() | |
enum | { SCALAR, VECTOR } |
Enumeration for RangeType and DerivRangeType. More... | |
enum | { VALUE, INTEGRAL, H_DIV, H_CURL } |
Enumeration for MapType: defines how reference functions are mapped to physical space. More... | |
enum | { NONE, GRAD, DIV, CURL } |
Enumeration for DerivType: defines which derivative method is implemented. More... | |
![]() | |
static int | VerifyClosed (int pt_type) |
static int | VerifyOpen (int pt_type) |
|
inline |
|
protected |
|
protected |
mfem::VectorFiniteElement::FiniteElement | ( | D | , |
G | , | ||
Do | , | ||
O | , | ||
F | |||
) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |
|
mutableprotected |