Abstract class for a 3D FEM element. More...
#include <element.hh>


Public Types | |
| typedef F | type |
Public Member Functions | |
| void | appendT (concepts::TColumn< Real > *T) |
| Appends the T columns to the T matrix. | |
| virtual const concepts::Cell3 & | cell () const =0 |
| Returns the cell on which the element is built. | |
| Element (concepts::TColumn< Real > *T, const ushort *p) | |
| Constructor. | |
| Element (concepts::TColumn< Real > *T, uint p) | |
| Constructor. | |
| Real3d | elemMap (const Real coord_local) const |
| Real3d | elemMap (const Real2d &coord_local) const |
| Real3d | elemMap (const Real3d &coord_local) const |
| virtual const ElementGraphics < F > * | graphics () const |
| virtual bool | operator< (const Element< F > &elm) const =0 |
| Comparison operator for elements. | |
| const ushort * | p () const |
| Returns the polynomial degree. | |
| virtual const concepts::Connector3 & | support () const =0 |
| Returns the topolgical support of the element. | |
| virtual const concepts::TMatrixBase< Real > & | T () const |
| Returns the T matrix of the element. | |
| uint & | tag () |
| Returns the tag. | |
| virtual concepts::Real3d | vertex (uint i) const =0 |
| Returns the coordinates of the ith vertex of this element. | |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Protected Attributes | |
| concepts::TMatrix< Real > | T_ |
| T matrix of the element. | |
Private Attributes | |
| ushort | p_ [3] |
| Polynomial degree. | |
Abstract class for a 3D FEM element.
All FEM elements have to be derived from this class. It prescribes the interface for querying the support of the element and it has a polynomial degree (ie. hp).
Definition at line 27 of file element.hh.
typedef F concepts::Element< F >::type [inherited] |
Definition at line 53 of file element.hh.
| hp3D::Element< F >::Element | ( | concepts::TColumn< Real > * | T, |
| uint | p | ||
| ) | [inline] |
Constructor.
This constructor initializes an isotropic polynomial degree.
| T | List of T columns for this element |
| p | Polynomial degree of this element |
Definition at line 34 of file element.hh.
| hp3D::Element< F >::Element | ( | concepts::TColumn< Real > * | T, |
| const ushort * | p | ||
| ) | [inline] |
Constructor.
This constructor can initialize an anisotropic polynomial degree.
| T | List of T columns for this element |
| p | Polynomial degree in the three spatial directions |
Definition at line 43 of file element.hh.
| void hp3D::Element< F >::appendT | ( | concepts::TColumn< Real > * | T | ) | [inline] |
Appends the T columns to the T matrix.
Definition at line 60 of file element.hh.
| virtual const concepts::Cell3& hp3D::Element< F >::cell | ( | ) | const [pure virtual] |
Returns the cell on which the element is built.
Possible are tetrahedrons, hexahedron, prims and pyramids.
Implements concepts::ElementWithCell< F >.
Implemented in hp3D::Hexahedron.
| Real3d concepts::ElementWithCell< F >::elemMap | ( | const Real | coord_local | ) | const [inline, inherited] |
Definition at line 83 of file element.hh.
| Real3d concepts::ElementWithCell< F >::elemMap | ( | const Real2d & | coord_local | ) | const [inline, inherited] |
Definition at line 87 of file element.hh.
| Real3d concepts::ElementWithCell< F >::elemMap | ( | const Real3d & | coord_local | ) | const [inline, inherited] |
Definition at line 91 of file element.hh.
| virtual const ElementGraphics<F>* concepts::Element< F >::graphics | ( | ) | const [inline, virtual, inherited] |
Reimplemented in concepts::gfem::GfemQuad, concepts::gfem::GfemQuadFast, hp2D::ThinSheetQuad, TriangleP2, bem::Linear3d000< F >, bem::Constant3d000< F >, bem::Constant3d001< F >, bem::Constant3d002< F >, hp1D::Element< F >, hp2D::BaseQuad< F >, hp2D::Quad< F >, hp2D::InfiniteQuad, hp2D::InfiniteLaguerreQuad, hp2Dedge::Quad< F >, hp3D::Hexahedron, linDG2D::Triangle, linDG3D::FvdgElement, linDG3D::FvdgP0TetElem, linDG3D::FvdgP1TetElem, linearFEM::Line, linearFEM::Triangle, linearFEM::Quad, linearFEM::Tetrahedron, vectorial::Element< F >, hp1D::Element< Real >, hp2D::BaseQuad< Real >, and hp2D::Quad< Real >.
Definition at line 62 of file element.hh.
| virtual std::ostream& hp3D::Element< F >::info | ( | std::ostream & | os | ) | const [protected, virtual] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
Reimplemented in hp3D::Hexahedron.
| virtual bool hp3D::Element< F >::operator< | ( | const Element< F > & | elm | ) | const [pure virtual] |
Comparison operator for elements.
| const ushort* hp3D::Element< F >::p | ( | ) | const [inline] |
Returns the polynomial degree.
The returned array has 3 elements.
Definition at line 49 of file element.hh.
| virtual const concepts::Connector3& hp3D::Element< F >::support | ( | ) | const [pure virtual] |
Returns the topolgical support of the element.
Possible supports for an element are hexahedrons, tetrahedrons, prisms and pyramids.
Implemented in hp3D::Hexahedron.
| virtual const concepts::TMatrixBase<Real>& hp3D::Element< F >::T | ( | ) | const [inline, virtual] |
Returns the T matrix of the element.
Implements concepts::Element< F >.
Definition at line 57 of file element.hh.
| uint& concepts::Element< F >::tag | ( | ) | [inline, inherited] |
Returns the tag.
Definition at line 65 of file element.hh.
| virtual concepts::Real3d hp3D::Element< F >::vertex | ( | uint | i | ) | const [pure virtual] |
Returns the coordinates of the ith vertex of this element.
| i | Index of the vertex |
Implemented in hp3D::Hexahedron.
ushort hp3D::Element< F >::p_[3] [private] |
Polynomial degree.
Definition at line 82 of file element.hh.
concepts::TMatrix<Real> hp3D::Element< F >::T_ [protected] |
T matrix of the element.
Definition at line 79 of file element.hh.