MFEM v2.0
Public Types | Public Member Functions | Protected Attributes
FiniteElement Class Reference

Abstract class for Finite Elements. More...

#include <fe.hpp>

Inheritance diagram for FiniteElement:
Inheritance graph
[legend]
Collaboration diagram for FiniteElement:
Collaboration graph
[legend]

List of all members.

Public Types

enum  { SCALAR, VECTOR }

Public Member Functions

 FiniteElement (int D, int G, int Do, int O, int F=FunctionSpace::Pk)
int GetDim () const
 Returns the space dimension for the finite element.
int GetGeomType () const
 Returns the geometry type:
int GetDof () const
 Returns the degrees of freedom in the FE space.
int GetOrder () const
 Returns the order of the finite element.
int Space () const
 Returns the type of space on each element.
int GetRangeType () const
virtual void CalcShape (const IntegrationPoint &ip, Vector &shape) const =0
virtual void CalcDShape (const IntegrationPoint &ip, DenseMatrix &dshape) const =0
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 Attributes

int Dim
int GeomType
int Dof
int Order
int FuncSpace
int RangeType
IntegrationRule Nodes

Detailed Description

Abstract class for Finite Elements.

Definition at line 33 of file fe.hpp.


Member Enumeration Documentation

anonymous enum
Enumerator:
SCALAR 
VECTOR 

Definition at line 40 of file fe.hpp.


Constructor & Destructor Documentation

FiniteElement::FiniteElement ( int  D,
int  G,
int  Do,
int  O,
int  F = FunctionSpace::Pk 
)

Construct Finite Element with given (D)im - space dimension, (G)eomType - geometry type (of type Geometry::Type), (Do)f - degrees of freedom in the FE space, and (O)rder - order of the FE space (F)uncSpace- type of space on each element

Definition at line 17 of file fe.cpp.

References Dim, Dof, FuncSpace, GeomType, Order, RangeType, and SCALAR.

virtual FiniteElement::~FiniteElement ( ) [inline, virtual]

Definition at line 162 of file fe.hpp.


Member Function Documentation

void FiniteElement::CalcCurlShape ( const IntegrationPoint ip,
DenseMatrix curl_shape 
) const [virtual]

pure virtual function which evaluates the values of the curl all shape functions at a given point ip and stores them in the matrix curl_shape (Dof x Dim) so that each row contains the curl of one shape function

Reimplemented in Nedelec1HexFiniteElement, Nedelec1TetFiniteElement, ND_HexahedronElement, ND_QuadrilateralElement, ND_TetrahedronElement, and ND_TriangleElement.

Definition at line 45 of file fe.cpp.

References mfem_error().

Referenced by CurlCurlIntegrator::AssembleElementMatrix(), VectorFECurlIntegrator::AssembleElementMatrix2(), and VectorFiniteElement::ProjectCurl_RT().

void FiniteElement::CalcDivShape ( const IntegrationPoint ip,
Vector divshape 
) const [virtual]
virtual void FiniteElement::CalcDShape ( const IntegrationPoint ip,
DenseMatrix dshape 
) const [pure virtual]

pure virtual function which evaluates the values of all partial derivatives of all shape functions at a given point ip and stores them in the matrix dshape (Dof x Dim) so that each row contains the derivatives of one shape function

Implemented in VectorFiniteElement, PointFiniteElement, Linear1DFiniteElement, Linear2DFiniteElement, BiLinear2DFiniteElement, GaussLinear2DFiniteElement, GaussBiLinear2DFiniteElement, P1OnQuadFiniteElement, Quad1DFiniteElement, QuadPos1DFiniteElement, Quad2DFiniteElement, GaussQuad2DFiniteElement, BiQuad2DFiniteElement, BiQuadPos2DFiniteElement, GaussBiQuad2DFiniteElement, BiCubic2DFiniteElement, Cubic1DFiniteElement, Cubic2DFiniteElement, Cubic3DFiniteElement, P0TriangleFiniteElement, P0QuadFiniteElement, Linear3DFiniteElement, Quadratic3DFiniteElement, TriLinear3DFiniteElement, CrouzeixRaviartFiniteElement, CrouzeixRaviartQuadFiniteElement, P0SegmentFiniteElement, P1SegmentFiniteElement, P2SegmentFiniteElement, Lagrange1DFiniteElement, P1TetNonConfFiniteElement, P0TetFiniteElement, P0HexFiniteElement, LagrangeHexFiniteElement, RefinedLinear1DFiniteElement, RefinedLinear2DFiniteElement, RefinedLinear3DFiniteElement, RefinedBiLinear2DFiniteElement, RefinedTriLinear3DFiniteElement, RotTriLinearHexFiniteElement, H1_SegmentElement, H1_QuadrilateralElement, H1_HexahedronElement, H1_TriangleElement, H1_TetrahedronElement, L2_SegmentElement, L2_QuadrilateralElement, L2_HexahedronElement, L2_TriangleElement, L2_TetrahedronElement, NURBS1DFiniteElement, NURBS2DFiniteElement, and NURBS3DFiniteElement.

Referenced by ElasticityIntegrator::AssembleElementMatrix(), VectorDiffusionIntegrator::AssembleElementMatrix(), ConvectionIntegrator::AssembleElementMatrix(), DiffusionIntegrator::AssembleElementMatrix(), VectorDivergenceIntegrator::AssembleElementMatrix2(), DerivativeIntegrator::AssembleElementMatrix2(), Mesh::CheckDisplacements(), DiffusionIntegrator::ComputeElementFlux(), GridFunction::ComputeH1Error(), GridFunction::ComputeW11Error(), GridFunction::GetDerivative(), GridFunction::GetGradients(), GridFunction::GetVectorGradientHat(), NodalFiniteElement::ProjectGrad(), VectorFiniteElement::ProjectGrad_ND(), and VectorFiniteElement::ProjectGrad_RT().

void FiniteElement::CalcHessian ( const IntegrationPoint ip,
DenseMatrix h 
) const [virtual]

each row of h contains the upper triangular part of the hessian of one shape function; the order in 2D is {u_xx, u_xy, u_yy}

Reimplemented in BiLinear2DFiniteElement, Quad2DFiniteElement, BiCubic2DFiniteElement, and Cubic2DFiniteElement.

Definition at line 57 of file fe.cpp.

References mfem_error().

virtual void FiniteElement::CalcShape ( const IntegrationPoint ip,
Vector shape 
) const [pure virtual]

pure virtual function which evaluates the values of all shape functions at a given point ip and stores them in the vector shape of dimension Dof

Implemented in VectorFiniteElement, PointFiniteElement, Linear1DFiniteElement, Linear2DFiniteElement, BiLinear2DFiniteElement, GaussLinear2DFiniteElement, GaussBiLinear2DFiniteElement, P1OnQuadFiniteElement, Quad1DFiniteElement, QuadPos1DFiniteElement, Quad2DFiniteElement, GaussQuad2DFiniteElement, BiQuad2DFiniteElement, BiQuadPos2DFiniteElement, GaussBiQuad2DFiniteElement, BiCubic2DFiniteElement, Cubic1DFiniteElement, Cubic2DFiniteElement, Cubic3DFiniteElement, P0TriangleFiniteElement, P0QuadFiniteElement, Linear3DFiniteElement, Quadratic3DFiniteElement, TriLinear3DFiniteElement, CrouzeixRaviartFiniteElement, CrouzeixRaviartQuadFiniteElement, P0SegmentFiniteElement, P1SegmentFiniteElement, P2SegmentFiniteElement, Lagrange1DFiniteElement, P1TetNonConfFiniteElement, P0TetFiniteElement, P0HexFiniteElement, LagrangeHexFiniteElement, RefinedLinear1DFiniteElement, RefinedLinear2DFiniteElement, RefinedLinear3DFiniteElement, RefinedBiLinear2DFiniteElement, RefinedTriLinear3DFiniteElement, RotTriLinearHexFiniteElement, H1_SegmentElement, H1_QuadrilateralElement, H1_HexahedronElement, H1_TriangleElement, H1_TetrahedronElement, L2_SegmentElement, L2_QuadrilateralElement, L2_HexahedronElement, L2_TriangleElement, L2_TetrahedronElement, NURBS1DFiniteElement, NURBS2DFiniteElement, and NURBS3DFiniteElement.

Referenced by VectorMassIntegrator::AssembleElementMatrix(), ConvectionIntegrator::AssembleElementMatrix(), MassIntegrator::AssembleElementMatrix(), VectorDivergenceIntegrator::AssembleElementMatrix2(), VectorFEMassIntegrator::AssembleElementMatrix2(), DerivativeIntegrator::AssembleElementMatrix2(), VectorFEDivergenceIntegrator::AssembleElementMatrix2(), MassIntegrator::AssembleElementMatrix2(), VectorFEBoundaryFluxLFIntegrator::AssembleRHSElementVect(), VectorBoundaryFluxLFIntegrator::AssembleRHSElementVect(), VectorBoundaryLFIntegrator::AssembleRHSElementVect(), VectorDomainLFIntegrator::AssembleRHSElementVect(), BoundaryLFIntegrator::AssembleRHSElementVect(), DomainLFIntegrator::AssembleRHSElementVect(), DiffusionIntegrator::ComputeFluxEnergy(), GridFunction::ComputeH1Error(), GridFunction::ComputeL2Error(), GridFunction::ComputeMaxError(), GridFunction::ComputeW11Error(), GridFunction::GetBdrValuesFrom(), GridFunction::GetNodalValues(), GridFunction::GetValue(), GridFunction::GetValues(), GridFunction::GetValuesFrom(), GridFunction::GetVectorValue(), GridFunction::GetVectorValues(), NodalFiniteElement::NodalLocalInterpolation(), NodalFiniteElement::Project(), VectorFiniteElement::Project_ND(), VectorFiniteElement::Project_RT(), and GridFunction::ProjectBdrCoefficientNormal().

void FiniteElement::CalcVShape ( const IntegrationPoint ip,
DenseMatrix shape 
) const [virtual]
void FiniteElement::CalcVShape ( ElementTransformation Trans,
DenseMatrix shape 
) const [virtual]
int FiniteElement::GetDim ( ) const [inline]
int FiniteElement::GetDof ( ) const [inline]

Returns the degrees of freedom in the FE space.

Definition at line 57 of file fe.hpp.

References Dof.

Referenced by ElasticityIntegrator::AssembleElementMatrix(), VectorDiffusionIntegrator::AssembleElementMatrix(), DivDivIntegrator::AssembleElementMatrix(), VectorFEMassIntegrator::AssembleElementMatrix(), CurlCurlIntegrator::AssembleElementMatrix(), VectorMassIntegrator::AssembleElementMatrix(), ConvectionIntegrator::AssembleElementMatrix(), MassIntegrator::AssembleElementMatrix(), DiffusionIntegrator::AssembleElementMatrix(), VectorDivergenceIntegrator::AssembleElementMatrix2(), VectorFEMassIntegrator::AssembleElementMatrix2(), DerivativeIntegrator::AssembleElementMatrix2(), VectorFECurlIntegrator::AssembleElementMatrix2(), VectorFEDivergenceIntegrator::AssembleElementMatrix2(), MassIntegrator::AssembleElementMatrix2(), VectorFEBoundaryFluxLFIntegrator::AssembleRHSElementVect(), VectorBoundaryFluxLFIntegrator::AssembleRHSElementVect(), VectorFEDomainLFIntegrator::AssembleRHSElementVect(), VectorBoundaryLFIntegrator::AssembleRHSElementVect(), VectorDomainLFIntegrator::AssembleRHSElementVect(), BoundaryLFIntegrator::AssembleRHSElementVect(), DomainLFIntegrator::AssembleRHSElementVect(), DiffusionIntegrator::ComputeElementFlux(), BilinearForm::ComputeElementMatrices(), DiffusionIntegrator::ComputeFluxEnergy(), GridFunction::ComputeH1Error(), GridFunction::ComputeL2Error(), GridFunction::ComputeMaxError(), GridFunction::ComputeW11Error(), Local_FECollection::DofForGeometry(), L2_FECollection::DofForGeometry(), GridFunction::GetBdrValuesFrom(), GridFunction::GetDerivative(), GridFunction::GetDivergence(), GridFunction::GetGradients(), GridFunction::GetNodalValues(), GridFunction::GetValues(), GridFunction::GetValuesFrom(), GridFunction::GetVectorFieldValues(), GridFunction::GetVectorGradientHat(), GridFunction::GetVectorValue(), GridFunction::GetVectorValues(), IsoparametricTransformation::Jacobian(), LagrangeHexFiniteElement::LagrangeHexFiniteElement(), NodalFiniteElement::Project(), VectorFiniteElement::Project_ND(), VectorFiniteElement::Project_RT(), GridFunction::ProjectBdrCoefficient(), GridFunction::ProjectBdrCoefficientNormal(), GridFunction::ProjectBdrCoefficientTangent(), GridFunction::ProjectCoefficient(), VectorFiniteElement::ProjectCurl_RT(), NodalFiniteElement::ProjectDiv(), NodalFiniteElement::ProjectGrad(), VectorFiniteElement::ProjectGrad_ND(), VectorFiniteElement::ProjectGrad_RT(), GridFunction::ProjectVectorFieldOn(), and IsoparametricTransformation::Transform().

void FiniteElement::GetFaceDofs ( int  face,
int **  dofs,
int *  ndofs 
) const [virtual]

Reimplemented in Linear3DFiniteElement.

Definition at line 52 of file fe.cpp.

References mfem_error().

int FiniteElement::GetGeomType ( ) const [inline]

Returns the geometry type:

Definition at line 54 of file fe.hpp.

References GeomType.

Referenced by ElasticityIntegrator::AssembleElementMatrix(), VectorDiffusionIntegrator::AssembleElementMatrix(), DivDivIntegrator::AssembleElementMatrix(), VectorFEMassIntegrator::AssembleElementMatrix(), CurlCurlIntegrator::AssembleElementMatrix(), VectorMassIntegrator::AssembleElementMatrix(), ConvectionIntegrator::AssembleElementMatrix(), MassIntegrator::AssembleElementMatrix(), DiffusionIntegrator::AssembleElementMatrix(), VectorDivergenceIntegrator::AssembleElementMatrix2(), VectorFEMassIntegrator::AssembleElementMatrix2(), DerivativeIntegrator::AssembleElementMatrix2(), VectorFECurlIntegrator::AssembleElementMatrix2(), VectorFEDivergenceIntegrator::AssembleElementMatrix2(), MassIntegrator::AssembleElementMatrix2(), VectorFEBoundaryFluxLFIntegrator::AssembleRHSElementVect(), VectorBoundaryFluxLFIntegrator::AssembleRHSElementVect(), VectorFEDomainLFIntegrator::AssembleRHSElementVect(), VectorBoundaryLFIntegrator::AssembleRHSElementVect(), VectorDomainLFIntegrator::AssembleRHSElementVect(), BoundaryLFIntegrator::AssembleRHSElementVect(), DomainLFIntegrator::AssembleRHSElementVect(), Mesh::CheckDisplacements(), DiffusionIntegrator::ComputeFluxEnergy(), GridFunction::ComputeH1Error(), GridFunction::ComputeL1Error(), GridFunction::ComputeL2Error(), GridFunction::ComputeMaxError(), GridFunction::ComputeW11Error(), GridFunction::GetNodalValues(), GridFunction::GetVectorFieldNodalValues(), GridFunction::ProjectBdrCoefficientNormal(), and GridFunction::SaveSTL().

void FiniteElement::GetLocalInterpolation ( ElementTransformation Trans,
DenseMatrix I 
) const [virtual]
const IntegrationRule& FiniteElement::GetNodes ( ) const [inline]
int FiniteElement::GetOrder ( ) const [inline]

Returns the order of the finite element.

Definition at line 60 of file fe.hpp.

References Order.

Referenced by DivDivIntegrator::AssembleElementMatrix(), VectorFEMassIntegrator::AssembleElementMatrix(), CurlCurlIntegrator::AssembleElementMatrix(), VectorMassIntegrator::AssembleElementMatrix(), ConvectionIntegrator::AssembleElementMatrix(), MassIntegrator::AssembleElementMatrix(), DiffusionIntegrator::AssembleElementMatrix(), VectorDivergenceIntegrator::AssembleElementMatrix2(), VectorFEMassIntegrator::AssembleElementMatrix2(), DerivativeIntegrator::AssembleElementMatrix2(), VectorFECurlIntegrator::AssembleElementMatrix2(), VectorFEDivergenceIntegrator::AssembleElementMatrix2(), MassIntegrator::AssembleElementMatrix2(), VectorFEBoundaryFluxLFIntegrator::AssembleRHSElementVect(), VectorBoundaryFluxLFIntegrator::AssembleRHSElementVect(), VectorFEDomainLFIntegrator::AssembleRHSElementVect(), VectorBoundaryLFIntegrator::AssembleRHSElementVect(), VectorDomainLFIntegrator::AssembleRHSElementVect(), BoundaryLFIntegrator::AssembleRHSElementVect(), DomainLFIntegrator::AssembleRHSElementVect(), Lagrange1DFiniteElement::CalcDShape(), Lagrange1DFiniteElement::CalcShape(), DiffusionIntegrator::ComputeFluxEnergy(), GridFunction::ComputeH1Error(), GridFunction::ComputeL1Error(), GridFunction::ComputeL2Error(), GridFunction::ComputeMaxError(), GridFunction::ComputeW11Error(), FiniteElementSpace::GetOrder(), NURBSFECollection::GetOrder(), IsoparametricTransformation::OrderGrad(), IsoparametricTransformation::OrderJ(), IsoparametricTransformation::OrderW(), and GridFunction::ProjectBdrCoefficientNormal().

int FiniteElement::GetRangeType ( ) const [inline]
void FiniteElement::Project ( Coefficient coeff,
ElementTransformation Trans,
Vector dofs 
) const [virtual]

Given a coefficient and a transformation, compute its projection (approximation) in the local finite dimensional space in terms of the degrees of freedom.

Reimplemented in NodalFiniteElement, and BiQuadPos2DFiniteElement.

Definition at line 69 of file fe.cpp.

References mfem_error().

Referenced by IdentityInterpolator::AssembleElementMatrix2(), GridFunction::ProjectBdrCoefficientTangent(), and GridFunction::ProjectCoefficient().

void FiniteElement::Project ( const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix I 
) const [virtual]

Compute the embedding/projection matrix from the given FiniteElement onto 'this' FiniteElement. The ElementTransformation is included to support cases when the projection depends on it.

Reimplemented in NodalFiniteElement, RT_QuadrilateralElement, RT_HexahedronElement, RT_TriangleElement, RT_TetrahedronElement, ND_HexahedronElement, ND_QuadrilateralElement, ND_TetrahedronElement, and ND_TriangleElement.

Definition at line 87 of file fe.cpp.

References mfem_error().

void FiniteElement::Project ( VectorCoefficient vc,
ElementTransformation Trans,
Vector dofs 
) const [virtual]
void FiniteElement::ProjectCurl ( const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix curl 
) const [virtual]

Compute the discrete curl matrix from the given FiniteElement onto 'this' FiniteElement. The ElementTransformation is included to support cases when the matrix depends on it.

Reimplemented in RT_HexahedronElement, and RT_TetrahedronElement.

Definition at line 102 of file fe.cpp.

References mfem_error().

Referenced by CurlInterpolator::AssembleElementMatrix2().

void FiniteElement::ProjectDelta ( int  vertex,
Vector dofs 
) const [virtual]
void FiniteElement::ProjectDiv ( const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix div 
) const [virtual]

Compute the discrete divergence matrix from the given FiniteElement onto 'this' FiniteElement. The ElementTransformation is included to support cases when the matrix depends on it.

Reimplemented in NodalFiniteElement.

Definition at line 110 of file fe.cpp.

References mfem_error().

Referenced by DivergenceInterpolator::AssembleElementMatrix2().

void FiniteElement::ProjectGrad ( const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix grad 
) const [virtual]

Compute the discrete gradient matrix from the given FiniteElement onto 'this' FiniteElement. The ElementTransformation is included to support cases when the matrix depends on it.

Reimplemented in NodalFiniteElement, RT_QuadrilateralElement, RT_TriangleElement, ND_HexahedronElement, ND_QuadrilateralElement, ND_TetrahedronElement, and ND_TriangleElement.

Definition at line 94 of file fe.cpp.

References mfem_error().

Referenced by GradientInterpolator::AssembleElementMatrix2().

int FiniteElement::Space ( ) const [inline]

Member Data Documentation

int FiniteElement::Dim [protected]

Definition at line 36 of file fe.hpp.

Referenced by ND_TetrahedronElement::CalcCurlShape(), L2_TetrahedronElement::CalcDShape(), L2_TriangleElement::CalcDShape(), H1_TetrahedronElement::CalcDShape(), H1_TriangleElement::CalcDShape(), ND_TriangleElement::CalcVShape(), ND_TetrahedronElement::CalcVShape(), RT_TetrahedronElement::CalcVShape(), RT_TriangleElement::CalcVShape(), VectorFiniteElement::CalcVShape_ND(), VectorFiniteElement::CalcVShape_RT(), FiniteElement(), GetDim(), RT0TetFiniteElement::GetLocalInterpolation(), RT1HexFiniteElement::GetLocalInterpolation(), RT0HexFiniteElement::GetLocalInterpolation(), Nedelec1TetFiniteElement::GetLocalInterpolation(), Nedelec1HexFiniteElement::GetLocalInterpolation(), RT2QuadFiniteElement::GetLocalInterpolation(), RT1QuadFiniteElement::GetLocalInterpolation(), RT1TriangleFiniteElement::GetLocalInterpolation(), RT0QuadFiniteElement::GetLocalInterpolation(), RT0TriangleFiniteElement::GetLocalInterpolation(), H1_TetrahedronElement::H1_TetrahedronElement(), H1_TriangleElement::H1_TriangleElement(), L2_TetrahedronElement::L2_TetrahedronElement(), L2_TriangleElement::L2_TriangleElement(), VectorFiniteElement::LocalInterpolation_ND(), VectorFiniteElement::LocalInterpolation_RT(), ND_TetrahedronElement::ND_TetrahedronElement(), ND_TriangleElement::ND_TriangleElement(), NodalFiniteElement::NodalLocalInterpolation(), NURBSFiniteElement::NURBSFiniteElement(), RT0TetFiniteElement::Project(), RT1HexFiniteElement::Project(), RT0HexFiniteElement::Project(), RT2QuadFiniteElement::Project(), RT1QuadFiniteElement::Project(), RT1TriangleFiniteElement::Project(), RT0QuadFiniteElement::Project(), RT0TriangleFiniteElement::Project(), NodalFiniteElement::Project(), VectorFiniteElement::Project_ND(), VectorFiniteElement::Project_RT(), VectorFiniteElement::ProjectCurl_RT(), NodalFiniteElement::ProjectGrad(), VectorFiniteElement::ProjectGrad_ND(), VectorFiniteElement::ProjectGrad_RT(), RT_TetrahedronElement::RT_TetrahedronElement(), and RT_TriangleElement::RT_TriangleElement().

int FiniteElement::Dof [protected]

Definition at line 36 of file fe.hpp.

Referenced by ND_TetrahedronElement::CalcCurlShape(), RT_TetrahedronElement::CalcDivShape(), RT_TriangleElement::CalcDivShape(), NURBS3DFiniteElement::CalcDShape(), NURBS2DFiniteElement::CalcDShape(), NURBS1DFiniteElement::CalcDShape(), L2_TetrahedronElement::CalcDShape(), L2_TriangleElement::CalcDShape(), L2_SegmentElement::CalcDShape(), H1_TetrahedronElement::CalcDShape(), H1_TriangleElement::CalcDShape(), LagrangeHexFiniteElement::CalcDShape(), L2_TetrahedronElement::CalcShape(), L2_TriangleElement::CalcShape(), H1_TetrahedronElement::CalcShape(), H1_TriangleElement::CalcShape(), LagrangeHexFiniteElement::CalcShape(), ND_TriangleElement::CalcVShape(), ND_TetrahedronElement::CalcVShape(), RT_TetrahedronElement::CalcVShape(), RT_TriangleElement::CalcVShape(), VectorFiniteElement::CalcVShape_ND(), VectorFiniteElement::CalcVShape_RT(), FiniteElement(), GetDof(), RT0TetFiniteElement::GetLocalInterpolation(), RT1HexFiniteElement::GetLocalInterpolation(), RT0HexFiniteElement::GetLocalInterpolation(), Nedelec1TetFiniteElement::GetLocalInterpolation(), Nedelec1HexFiniteElement::GetLocalInterpolation(), RT2QuadFiniteElement::GetLocalInterpolation(), RT1QuadFiniteElement::GetLocalInterpolation(), RT1TriangleFiniteElement::GetLocalInterpolation(), RT0QuadFiniteElement::GetLocalInterpolation(), RT0TriangleFiniteElement::GetLocalInterpolation(), H1_TetrahedronElement::H1_TetrahedronElement(), H1_TriangleElement::H1_TriangleElement(), L2_TetrahedronElement::L2_TetrahedronElement(), L2_TriangleElement::L2_TriangleElement(), LagrangeHexFiniteElement::LagrangeHexFiniteElement(), VectorFiniteElement::LocalInterpolation_ND(), VectorFiniteElement::LocalInterpolation_RT(), ND_HexahedronElement::ND_HexahedronElement(), ND_QuadrilateralElement::ND_QuadrilateralElement(), ND_TetrahedronElement::ND_TetrahedronElement(), ND_TriangleElement::ND_TriangleElement(), NodalFiniteElement::NodalLocalInterpolation(), NURBSFiniteElement::NURBSFiniteElement(), NodalFiniteElement::Project(), VectorFiniteElement::Project_ND(), VectorFiniteElement::Project_RT(), VectorFiniteElement::ProjectCurl_RT(), NodalFiniteElement::ProjectDiv(), NodalFiniteElement::ProjectGrad(), VectorFiniteElement::ProjectGrad_ND(), VectorFiniteElement::ProjectGrad_RT(), RT_HexahedronElement::RT_HexahedronElement(), RT_QuadrilateralElement::RT_QuadrilateralElement(), RT_TetrahedronElement::RT_TetrahedronElement(), and RT_TriangleElement::RT_TriangleElement().

int FiniteElement::FuncSpace [protected]

Definition at line 36 of file fe.hpp.

Referenced by FiniteElement(), and Space().

int FiniteElement::GeomType [protected]

Definition at line 37 of file fe.hpp.

Referenced by BiCubic2DFiniteElement::BiCubic2DFiniteElement(), BiLinear2DFiniteElement::BiLinear2DFiniteElement(), BiQuad2DFiniteElement::BiQuad2DFiniteElement(), BiQuadPos2DFiniteElement::BiQuadPos2DFiniteElement(), CrouzeixRaviartFiniteElement::CrouzeixRaviartFiniteElement(), CrouzeixRaviartQuadFiniteElement::CrouzeixRaviartQuadFiniteElement(), Cubic1DFiniteElement::Cubic1DFiniteElement(), Cubic2DFiniteElement::Cubic2DFiniteElement(), Cubic3DFiniteElement::Cubic3DFiniteElement(), GaussBiLinear2DFiniteElement::GaussBiLinear2DFiniteElement(), GaussBiQuad2DFiniteElement::GaussBiQuad2DFiniteElement(), GaussLinear2DFiniteElement::GaussLinear2DFiniteElement(), GaussQuad2DFiniteElement::GaussQuad2DFiniteElement(), RT0TetFiniteElement::GetLocalInterpolation(), RT1HexFiniteElement::GetLocalInterpolation(), RT0HexFiniteElement::GetLocalInterpolation(), Nedelec1TetFiniteElement::GetLocalInterpolation(), Nedelec1HexFiniteElement::GetLocalInterpolation(), RT2QuadFiniteElement::GetLocalInterpolation(), RT1QuadFiniteElement::GetLocalInterpolation(), RT1TriangleFiniteElement::GetLocalInterpolation(), RT0QuadFiniteElement::GetLocalInterpolation(), RT0TriangleFiniteElement::GetLocalInterpolation(), GetNodes(), H1_HexahedronElement::H1_HexahedronElement(), H1_QuadrilateralElement::H1_QuadrilateralElement(), H1_SegmentElement::H1_SegmentElement(), H1_TetrahedronElement::H1_TetrahedronElement(), H1_TriangleElement::H1_TriangleElement(), L2_HexahedronElement::L2_HexahedronElement(), L2_QuadrilateralElement::L2_QuadrilateralElement(), L2_SegmentElement::L2_SegmentElement(), L2_TetrahedronElement::L2_TetrahedronElement(), L2_TriangleElement::L2_TriangleElement(), Lagrange1DFiniteElement::Lagrange1DFiniteElement(), LagrangeHexFiniteElement::LagrangeHexFiniteElement(), Linear1DFiniteElement::Linear1DFiniteElement(), Linear2DFiniteElement::Linear2DFiniteElement(), Linear3DFiniteElement::Linear3DFiniteElement(), VectorFiniteElement::LocalInterpolation_ND(), VectorFiniteElement::LocalInterpolation_RT(), ND_HexahedronElement::ND_HexahedronElement(), ND_QuadrilateralElement::ND_QuadrilateralElement(), ND_TetrahedronElement::ND_TetrahedronElement(), ND_TriangleElement::ND_TriangleElement(), Nedelec1HexFiniteElement::Nedelec1HexFiniteElement(), Nedelec1TetFiniteElement::Nedelec1TetFiniteElement(), NodalFiniteElement::NodalLocalInterpolation(), P0HexFiniteElement::P0HexFiniteElement(), P0QuadFiniteElement::P0QuadFiniteElement(), P0SegmentFiniteElement::P0SegmentFiniteElement(), P0TetFiniteElement::P0TetFiniteElement(), P0TriangleFiniteElement::P0TriangleFiniteElement(), P1OnQuadFiniteElement::P1OnQuadFiniteElement(), P1SegmentFiniteElement::P1SegmentFiniteElement(), P1TetNonConfFiniteElement::P1TetNonConfFiniteElement(), P2SegmentFiniteElement::P2SegmentFiniteElement(), PointFiniteElement::PointFiniteElement(), RT0TetFiniteElement::Project(), RT1HexFiniteElement::Project(), RT0HexFiniteElement::Project(), Nedelec1TetFiniteElement::Project(), Nedelec1HexFiniteElement::Project(), RT2QuadFiniteElement::Project(), RT1QuadFiniteElement::Project(), RT1TriangleFiniteElement::Project(), RT0QuadFiniteElement::Project(), RT0TriangleFiniteElement::Project(), BiQuadPos2DFiniteElement::Project(), NodalFiniteElement::Project(), VectorFiniteElement::Project_ND(), VectorFiniteElement::Project_RT(), VectorFiniteElement::ProjectCurl_RT(), NodalFiniteElement::ProjectDiv(), NodalFiniteElement::ProjectGrad(), VectorFiniteElement::ProjectGrad_ND(), VectorFiniteElement::ProjectGrad_RT(), Quad1DFiniteElement::Quad1DFiniteElement(), Quad2DFiniteElement::Quad2DFiniteElement(), QuadPos1DFiniteElement::QuadPos1DFiniteElement(), Quadratic3DFiniteElement::Quadratic3DFiniteElement(), RefinedBiLinear2DFiniteElement::RefinedBiLinear2DFiniteElement(), RefinedLinear1DFiniteElement::RefinedLinear1DFiniteElement(), RefinedLinear2DFiniteElement::RefinedLinear2DFiniteElement(), RefinedLinear3DFiniteElement::RefinedLinear3DFiniteElement(), RefinedTriLinear3DFiniteElement::RefinedTriLinear3DFiniteElement(), RotTriLinearHexFiniteElement::RotTriLinearHexFiniteElement(), RT0HexFiniteElement::RT0HexFiniteElement(), RT0QuadFiniteElement::RT0QuadFiniteElement(), RT0TetFiniteElement::RT0TetFiniteElement(), RT0TriangleFiniteElement::RT0TriangleFiniteElement(), RT1HexFiniteElement::RT1HexFiniteElement(), RT1QuadFiniteElement::RT1QuadFiniteElement(), RT1TriangleFiniteElement::RT1TriangleFiniteElement(), RT2QuadFiniteElement::RT2QuadFiniteElement(), RT2TriangleFiniteElement::RT2TriangleFiniteElement(), RT_HexahedronElement::RT_HexahedronElement(), RT_QuadrilateralElement::RT_QuadrilateralElement(), RT_TetrahedronElement::RT_TetrahedronElement(), RT_TriangleElement::RT_TriangleElement(), and TriLinear3DFiniteElement::TriLinear3DFiniteElement().

int FiniteElement::Order [protected]

Definition at line 36 of file fe.hpp.

Referenced by ND_TetrahedronElement::CalcCurlShape(), ND_HexahedronElement::CalcCurlShape(), RT_TetrahedronElement::CalcDivShape(), RT_TriangleElement::CalcDivShape(), RT_HexahedronElement::CalcDivShape(), RT_QuadrilateralElement::CalcDivShape(), NURBS3DFiniteElement::CalcDShape(), NURBS2DFiniteElement::CalcDShape(), NURBS1DFiniteElement::CalcDShape(), L2_TetrahedronElement::CalcDShape(), L2_TriangleElement::CalcDShape(), L2_HexahedronElement::CalcDShape(), L2_QuadrilateralElement::CalcDShape(), H1_TetrahedronElement::CalcDShape(), H1_TriangleElement::CalcDShape(), H1_HexahedronElement::CalcDShape(), H1_QuadrilateralElement::CalcDShape(), H1_SegmentElement::CalcDShape(), NURBS3DFiniteElement::CalcShape(), NURBS2DFiniteElement::CalcShape(), NURBS1DFiniteElement::CalcShape(), L2_TetrahedronElement::CalcShape(), L2_TriangleElement::CalcShape(), L2_HexahedronElement::CalcShape(), L2_QuadrilateralElement::CalcShape(), H1_TetrahedronElement::CalcShape(), H1_TriangleElement::CalcShape(), H1_HexahedronElement::CalcShape(), H1_QuadrilateralElement::CalcShape(), H1_SegmentElement::CalcShape(), ND_TriangleElement::CalcVShape(), ND_TetrahedronElement::CalcVShape(), ND_QuadrilateralElement::CalcVShape(), ND_HexahedronElement::CalcVShape(), RT_TetrahedronElement::CalcVShape(), RT_TriangleElement::CalcVShape(), RT_HexahedronElement::CalcVShape(), RT_QuadrilateralElement::CalcVShape(), FiniteElement(), GetOrder(), L2_HexahedronElement::ProjectDelta(), L2_QuadrilateralElement::ProjectDelta(), and L2_SegmentElement::ProjectDelta().

int FiniteElement::RangeType [protected]

Definition at line 36 of file fe.hpp.

Referenced by FiniteElement(), GetRangeType(), and VectorFiniteElement::VectorFiniteElement().


The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines