MFEM v2.0
Public Member Functions | Private Attributes | Static Private Attributes
ND_HexahedronElement Class Reference

#include <fe.hpp>

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

List of all members.

Public Member Functions

 ND_HexahedronElement (const int p)
virtual void CalcVShape (const IntegrationPoint &ip, DenseMatrix &shape) const
virtual void CalcVShape (ElementTransformation &Trans, DenseMatrix &shape) const
virtual void CalcCurlShape (const IntegrationPoint &ip, DenseMatrix &curl_shape) const
virtual void GetLocalInterpolation (ElementTransformation &Trans, DenseMatrix &I) const
virtual void Project (VectorCoefficient &vc, ElementTransformation &Trans, 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

Private Attributes

Poly_1D::Basiscbasis1d
Poly_1D::Basisobasis1d
Vector shape_cx
Vector shape_ox
Vector shape_cy
Vector shape_oy
Vector shape_cz
Vector shape_oz
Vector dshape_cx
Vector dshape_cy
Vector dshape_cz
Array< int > dof_map
Array< int > dof2tk

Static Private Attributes

static const double tk [18]

Detailed Description

Definition at line 1552 of file fe.hpp.


Constructor & Destructor Documentation

ND_HexahedronElement::ND_HexahedronElement ( const int  p)

Member Function Documentation

void ND_HexahedronElement::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 from FiniteElement.

Definition at line 7987 of file fe.cpp.

References cbasis1d, dof_map, dshape_cx, dshape_cy, dshape_cz, Poly_1D::Basis::Eval(), obasis1d, FiniteElement::Order, shape_cx, shape_cy, shape_cz, shape_ox, shape_oy, shape_oz, IntegrationPoint::x, IntegrationPoint::y, and IntegrationPoint::z.

virtual void ND_HexahedronElement::CalcVShape ( ElementTransformation Trans,
DenseMatrix shape 
) const [inline, virtual]

Reimplemented from FiniteElement.

Definition at line 1567 of file fe.hpp.

References VectorFiniteElement::CalcVShape_ND().

void ND_HexahedronElement::CalcVShape ( const IntegrationPoint ip,
DenseMatrix shape 
) const [virtual]

This virtual function evaluates the values of all components of all shape functions at the given IntegrationPoint. The result is stored in the DenseMatrix shape (Dof x Dim) so that each row contains the components of one shape function.

Reimplemented from FiniteElement.

Definition at line 7925 of file fe.cpp.

References cbasis1d, dof_map, Poly_1D::Basis::Eval(), obasis1d, FiniteElement::Order, shape_cx, shape_cy, shape_cz, shape_ox, shape_oy, shape_oz, IntegrationPoint::x, IntegrationPoint::y, and IntegrationPoint::z.

virtual void ND_HexahedronElement::GetLocalInterpolation ( ElementTransformation Trans,
DenseMatrix I 
) const [inline, virtual]

Return the local interpolation matrix I (Dof x Dof) where the fine element is the image of the base geometry under the given transformation.

Reimplemented from FiniteElement.

Definition at line 1572 of file fe.hpp.

References dof2tk, VectorFiniteElement::LocalInterpolation_ND(), and tk.

virtual void ND_HexahedronElement::Project ( VectorCoefficient vc,
ElementTransformation Trans,
Vector dofs 
) const [inline, virtual]

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

Reimplemented from FiniteElement.

Definition at line 1576 of file fe.hpp.

References dof2tk, VectorFiniteElement::Project_ND(), and tk.

virtual void ND_HexahedronElement::Project ( const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix I 
) const [inline, 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 from FiniteElement.

Definition at line 1579 of file fe.hpp.

References dof2tk, VectorFiniteElement::Project_ND(), and tk.

virtual void ND_HexahedronElement::ProjectGrad ( const FiniteElement fe,
ElementTransformation Trans,
DenseMatrix grad 
) const [inline, 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 from FiniteElement.

Definition at line 1583 of file fe.hpp.

References dof2tk, VectorFiniteElement::ProjectGrad_ND(), and tk.


Member Data Documentation

Definition at line 1556 of file fe.hpp.

Referenced by CalcCurlShape(), and CalcVShape().

Definition at line 1561 of file fe.hpp.

Referenced by GetLocalInterpolation(), ND_HexahedronElement(), Project(), and ProjectGrad().

Definition at line 1561 of file fe.hpp.

Referenced by CalcCurlShape(), CalcVShape(), and ND_HexahedronElement().

Definition at line 1559 of file fe.hpp.

Referenced by CalcCurlShape(), and ND_HexahedronElement().

Definition at line 1559 of file fe.hpp.

Referenced by CalcCurlShape(), and ND_HexahedronElement().

Definition at line 1559 of file fe.hpp.

Referenced by CalcCurlShape(), and ND_HexahedronElement().

Definition at line 1556 of file fe.hpp.

Referenced by CalcCurlShape(), and CalcVShape().

Definition at line 1558 of file fe.hpp.

Referenced by CalcCurlShape(), CalcVShape(), and ND_HexahedronElement().

Definition at line 1558 of file fe.hpp.

Referenced by CalcCurlShape(), CalcVShape(), and ND_HexahedronElement().

Definition at line 1558 of file fe.hpp.

Referenced by CalcCurlShape(), CalcVShape(), and ND_HexahedronElement().

Definition at line 1558 of file fe.hpp.

Referenced by CalcCurlShape(), CalcVShape(), and ND_HexahedronElement().

Definition at line 1558 of file fe.hpp.

Referenced by CalcCurlShape(), CalcVShape(), and ND_HexahedronElement().

Definition at line 1558 of file fe.hpp.

Referenced by CalcCurlShape(), CalcVShape(), and ND_HexahedronElement().

const double ND_HexahedronElement::tk [static, private]
Initial value:
{ 1.,0.,0.,  0.,1.,0.,  0.,0.,1., -1.,0.,0.,  0.,-1.,0.,  0.,0.,-1. }

Definition at line 1554 of file fe.hpp.

Referenced by GetLocalInterpolation(), Project(), and ProjectGrad().


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