Class documentation of Concepts

Loading...
Searching...
No Matches

#include <element.hh>

Inheritance diagram for hp3D::Element< F >:
concepts::ElementWithCell< F > concepts::Element< F > concepts::OutputOperator hp3D::Hexahedron

Public Types

typedef F type
 

Public Member Functions

 Element (concepts::TColumn< Real > *T, uint p)
 
 Element (concepts::TColumn< Real > *T, const ushort *p)
 
const ushort * p () const
 
virtual const concepts::Connector3support () const =0
 
virtual const concepts::TMatrix< Real > & T () const
 Returns the T matrix of the element.
 
void appendT (concepts::TColumn< Real > *T)
 Appends the T columns to the T matrix.
 
virtual concepts::Real3d vertex (uint i) const =0
 
virtual const concepts::Cell3cell () const =0
 
virtual bool operator< (const Element< F > &elm) const =0
 Comparison operator for elements.
 
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
 
uint & tag ()
 Returns the tag.
 

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.
 

Detailed Description

template<class F>
class hp3D::Element< F >

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

Author
Philipp Frauenfelder, 2001

Definition at line 29 of file element.hh.

Member Typedef Documentation

◆ type

template<typename F >
typedef F concepts::ElementWithCell< F >::type
inherited

Definition at line 81 of file element.hh.

Constructor & Destructor Documentation

◆ Element() [1/2]

template<class F >
hp3D::Element< F >::Element ( concepts::TColumn< Real > *  T,
uint  p 
)
inline

Constructor. This constructor initializes an isotropic polynomial degree.

Parameters
TList of T columns for this element
pPolynomial degree of this element

Definition at line 36 of file element.hh.

◆ Element() [2/2]

template<class F >
hp3D::Element< F >::Element ( concepts::TColumn< Real > *  T,
const ushort *  p 
)
inline

Constructor. This constructor can initialize an anisotropic polynomial degree.

Parameters
TList of T columns for this element
pPolynomial degree in the three spatial directions

Definition at line 45 of file element.hh.

Member Function Documentation

◆ appendT()

template<class F >
void hp3D::Element< F >::appendT ( concepts::TColumn< Real > *  T)
inline

Appends the T columns to the T matrix.

Definition at line 62 of file element.hh.

◆ cell()

template<class F >
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.

◆ elemMap() [1/3]

template<typename F >
Real3d concepts::ElementWithCell< F >::elemMap ( const Real  coord_local) const
inlineinherited

Definition at line 86 of file element.hh.

◆ elemMap() [2/3]

template<typename F >
Real3d concepts::ElementWithCell< F >::elemMap ( const Real2d coord_local) const
inlineinherited

Definition at line 90 of file element.hh.

◆ elemMap() [3/3]

template<typename F >
Real3d concepts::ElementWithCell< F >::elemMap ( const Real3d coord_local) const
inlineinherited

Definition at line 94 of file element.hh.

◆ graphics()

◆ info()

template<class F >
virtual std::ostream & hp3D::Element< F >::info ( std::ostream &  os) const
protectedvirtual

Returns information in an output stream.

Reimplemented from concepts::OutputOperator.

Reimplemented in hp3D::Hexahedron.

◆ p()

template<class F >
const ushort * hp3D::Element< F >::p ( ) const
inline

Returns the polynomial degree. The returned array has 3 elements.

Definition at line 51 of file element.hh.

◆ support()

template<class F >
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.

◆ T()

template<class F >
virtual const concepts::TMatrix< Real > & hp3D::Element< F >::T ( ) const
inlinevirtual

Returns the T matrix of the element.

Implements concepts::ElementWithCell< F >.

Definition at line 59 of file element.hh.

◆ tag()

template<class F >
uint & concepts::Element< F >::tag ( )
inlineinherited

Returns the tag.

Definition at line 66 of file element.hh.

◆ vertex()

template<class F >
virtual concepts::Real3d hp3D::Element< F >::vertex ( uint  i) const
pure virtual

Returns the coordinates of the ith vertex of this element.

Parameters
iIndex of the vertex

Implemented in hp3D::Hexahedron.

Member Data Documentation

◆ T_

template<class F >
concepts::TMatrix<Real> hp3D::Element< F >::T_
protected

T matrix of the element.

Definition at line 81 of file element.hh.


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