MFEM  v3.1
Finite element discretization library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
mfem::VectorFiniteElement Class Reference

#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.

Collaboration diagram for mfem::VectorFiniteElement:
[legend]

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)
 
 vshape (Do, D)
 
- Public Member Functions inherited from mfem::FiniteElement
 FiniteElement (int D, int G, int Do, int O, int F=FunctionSpace::Pk)
 
int GetDim () const
 Returns the space dimension for the finite element. More...
 
int GetGeomType () const
 Returns the geometry type: More...
 
int GetDof () const
 Returns the degrees of freedom in the FE space. 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 GetMapType () const
 
const IntegrationRuleGetNodes () const
 
virtual void CalcVShape (const IntegrationPoint &ip, DenseMatrix &shape) const
 
virtual void CalcVShape (ElementTransformation &Trans, DenseMatrix &shape) const
 
virtual void CalcDivShape (const IntegrationPoint &ip, Vector &divshape) const
 
virtual void CalcCurlShape (const IntegrationPoint &ip, DenseMatrix &curl_shape) const
 
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 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 vshape
 
DenseMatrix curlshape
 
DenseMatrix curlshape_J
 
- Protected Attributes inherited from mfem::FiniteElement
int Dim
 
int GeomType
 
int Dof
 
int Order
 
int FuncSpace
 
int RangeType
 
int MapType
 
IntegrationRule Nodes
 

Additional Inherited Members

- Public Types inherited from mfem::FiniteElement
enum  { SCALAR, VECTOR }
 Enumeration for RangeType. More...
 
enum  { VALUE, INTEGRAL, H_DIV, H_CURL }
 

Detailed Description

Definition at line 265 of file fe.hpp.

Constructor & Destructor Documentation

mfem::VectorFiniteElement::VectorFiniteElement ( int  D,
int  G,
int  Do,
int  O,
int  M,
int  F = FunctionSpace::Pk 
)
inline

Definition at line 331 of file fe.hpp.

Member Function Documentation

void mfem::VectorFiniteElement::CalcVShape_ND ( ElementTransformation Trans,
DenseMatrix shape 
) const
protected

Definition at line 385 of file fe.cpp.

void mfem::VectorFiniteElement::CalcVShape_RT ( ElementTransformation Trans,
DenseMatrix shape 
) const
protected

Definition at line 372 of file fe.cpp.

mfem::VectorFiniteElement::FiniteElement ( ,
,
Do  ,
,
 
)
mfem::VectorFiniteElement::Jinv ( )
void mfem::VectorFiniteElement::LocalInterpolation_ND ( const double *  tk,
const Array< int > &  d2t,
ElementTransformation Trans,
DenseMatrix I 
) const
protected

Definition at line 687 of file fe.cpp.

void mfem::VectorFiniteElement::LocalInterpolation_RT ( const double *  nk,
const Array< int > &  d2n,
ElementTransformation Trans,
DenseMatrix I 
) const
protected

Definition at line 651 of file fe.cpp.

void mfem::VectorFiniteElement::Project_ND ( const double *  tk,
const Array< int > &  d2t,
VectorCoefficient vc,
ElementTransformation Trans,
Vector dofs 
) const
protected

Definition at line 566 of file fe.cpp.

void mfem::VectorFiniteElement::Project_ND ( const double *  tk,
const Array< int > &  d2t,
const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix I 
) const
protected

Definition at line 583 of file fe.cpp.

void mfem::VectorFiniteElement::Project_RT ( const double *  nk,
const Array< int > &  d2n,
VectorCoefficient vc,
ElementTransformation Trans,
Vector dofs 
) const
protected

Definition at line 404 of file fe.cpp.

void mfem::VectorFiniteElement::Project_RT ( const double *  nk,
const Array< int > &  d2n,
const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix I 
) const
protected

Definition at line 431 of file fe.cpp.

void mfem::VectorFiniteElement::ProjectCurl_ND ( const double *  tk,
const Array< int > &  d2t,
const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix curl 
) const
protected

Definition at line 509 of file fe.cpp.

void mfem::VectorFiniteElement::ProjectCurl_RT ( const double *  nk,
const Array< int > &  d2n,
const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix curl 
) const
protected

Definition at line 547 of file fe.cpp.

void mfem::VectorFiniteElement::ProjectGrad_ND ( const double *  tk,
const Array< int > &  d2t,
const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix grad 
) const
protected

Definition at line 630 of file fe.cpp.

void mfem::VectorFiniteElement::ProjectGrad_RT ( const double *  nk,
const Array< int > &  d2n,
const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix grad 
) const
protected

Definition at line 482 of file fe.cpp.

mfem::VectorFiniteElement::vshape ( Do  ,
 
)
inline

Definition at line 337 of file fe.hpp.

Member Data Documentation

DenseMatrix mfem::VectorFiniteElement::curlshape
mutableprotected

Definition at line 280 of file fe.hpp.

DenseMatrix mfem::VectorFiniteElement::curlshape_J
mutableprotected

Definition at line 280 of file fe.hpp.

DenseMatrix mfem::VectorFiniteElement::J
mutableprotected

Definition at line 279 of file fe.hpp.

DenseMatrix mfem::VectorFiniteElement::Jinv
mutableprotected

Definition at line 279 of file fe.hpp.

DenseMatrix mfem::VectorFiniteElement::vshape
mutableprotected

Definition at line 280 of file fe.hpp.


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