MFEM v2.0
|
#include <fe.hpp>
Public Member Functions | |
Nedelec1HexFiniteElement () | |
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 |
Static Private Attributes | |
static const double | tk [12][3] |
Nedelec1HexFiniteElement::Nedelec1HexFiniteElement | ( | ) |
Definition at line 4420 of file fe.cpp.
References IntegrationRule::IntPoint(), FiniteElement::Nodes, IntegrationPoint::x, IntegrationPoint::y, and IntegrationPoint::z.
void Nedelec1HexFiniteElement::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 4528 of file fe.cpp.
References IntegrationPoint::x, IntegrationPoint::y, and IntegrationPoint::z.
virtual void Nedelec1HexFiniteElement::CalcVShape | ( | ElementTransformation & | Trans, |
DenseMatrix & | shape | ||
) | const [inline, virtual] |
Reimplemented from FiniteElement.
Definition at line 1026 of file fe.hpp.
References VectorFiniteElement::CalcVShape_ND().
void Nedelec1HexFiniteElement::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 4473 of file fe.cpp.
References IntegrationPoint::x, IntegrationPoint::y, and IntegrationPoint::z.
Referenced by GetLocalInterpolation().
void Nedelec1HexFiniteElement::GetLocalInterpolation | ( | ElementTransformation & | Trans, |
DenseMatrix & | I | ||
) | const [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 4588 of file fe.cpp.
References CalcVShape(), FiniteElement::Dim, FiniteElement::Dof, IntegrationRule::IntPoint(), ElementTransformation::Jacobian(), mfem_error(), FiniteElement::Nodes, ElementTransformation::SetIntPoint(), tk, ElementTransformation::Transform(), VectorFiniteElement::vshape, IntegrationPoint::x, IntegrationPoint::y, and IntegrationPoint::z.
void Nedelec1HexFiniteElement::Project | ( | VectorCoefficient & | vc, |
ElementTransformation & | Trans, | ||
Vector & | dofs | ||
) | const [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 4639 of file fe.cpp.
References VectorCoefficient::Eval(), IntegrationRule::IntPoint(), ElementTransformation::Jacobian(), FiniteElement::Nodes, ElementTransformation::SetIntPoint(), and tk.
const double Nedelec1HexFiniteElement::tk [static, private] |
{{1,0,0}, {0,1,0}, {1,0,0}, {0,1,0}, {1,0,0}, {0,1,0}, {1,0,0}, {0,1,0}, {0,0,1}, {0,0,1}, {0,0,1}, {0,0,1}}
Definition at line 1020 of file fe.hpp.
Referenced by GetLocalInterpolation(), and Project().