Generic tetrahedral element for FV/DG method. More...

#include <element.hh>

Inheritance diagram for linDG3D::FvdgElement:
concepts::ElementWithCell< Real > linDG3D::FvdgP0TetElem linDG3D::FvdgP1TetElem

Public Types

typedef Real type
 

Public Member Functions

virtual const concepts::Tetrahedron3dcell () const
 Returns the geometrical cell of this element. More...
 
virtual const Cell & cell () const=0
 Returns the cell on which the element is built. More...
 
concepts::Real3d edgeCenter (uint edgeIdx) const
 Returns the real world coordinates of the center of the edge with index edgeIdx. More...
 
Real3d elemMap (const Real coord_local) const
 
Real3d elemMap (const Real2d &coord_local) const
 
Real3d elemMap (const Real3d &coord_local) const
 
 FvdgElement (const concepts::Tetrahedron3d &cell, uint idx[], uint m)
 Constructor. More...
 
virtual const concepts::ElementGraphics< Real > * graphics () const =0
 Returns the graphics object for the element. More...
 
virtual Real shapeFct (const uint fctIdx, const concepts::Real3d xi) const =0
 Shape function. More...
 
virtual Real shapeFctEdgeCenter (const uint fctIdx, const uint edgeIdx) const =0
 Shapefunction at edge center. More...
 
virtual concepts::Real3d shapeFctGradient (const uint fctIdx) const =0
 Gradient of shape function. More...
 
virtual Real shapeFctVertex (const uint fctIdx, const uint vtxIdx) const =0
 Shapefunction at vertex. More...
 
Real solution (const concepts::Vector< Real > &sol, const concepts::Real3d xi) const
 Returns the value of the solution sol at the reference element coordinate xi. More...
 
virtual Real solutionEdgeCenter (const concepts::Vector< Real > &sol, const uint edgeIdx) const =0
 Returns the value of the solution sol at the center of edge edgeIdx of this tetrahedron. More...
 
virtual Real solutionVertex (const concepts::Vector< Real > &sol, const uint vertexIdx) const =0
 Returns the value of the solution sol at vertex vertexIdx of this tetrahedron. More...
 
const concepts::Tetrahedronsupport () const
 Returns the topological support of this element. More...
 
const concepts::TMatrixBase< Real > & T () const
 Returns the T matrix of this element. More...
 
virtual const TMatrixBase< Real > & T () const=0
 Returns the T matrix of the element. More...
 
const concepts::Real3d vertex (const uint i) const
 Returns the vertex with local index i in this element. More...
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 Returns cell and T matrix of this element. More...
 

Protected Attributes

const concepts::Tetrahedron3dcell_
 
std::unique_ptr< concepts::TMatrixBase< Real > > T_
 

Static Protected Attributes

static Real eta_ [6][3]
 

Detailed Description

Generic tetrahedral element for FV/DG method.

Author
Adrian Burri and Christoph Winkelmann, 2002

Definition at line 31 of file element.hh.

Member Typedef Documentation

◆ type

typedef Real concepts::ElementWithCell< Real >::type
inherited

Definition at line 81 of file element.hh.

Constructor & Destructor Documentation

◆ FvdgElement()

linDG3D::FvdgElement::FvdgElement ( const concepts::Tetrahedron3d cell,
uint  idx[],
uint  m 
)

Constructor.

Member Function Documentation

◆ cell() [1/2]

virtual const concepts::Tetrahedron3d& linDG3D::FvdgElement::cell ( ) const
inlinevirtual

Returns the geometrical cell of this element.

Definition at line 44 of file element.hh.

◆ cell() [2/2]

virtual const Cell& concepts::ElementWithCell< Real >::cell ( ) const
pure virtualinherited

Returns the cell on which the element is built.

Implemented in hp3D::Element< Real >, hp2D::Element< Real >, and hp1D::BaseElement< Real >.

◆ edgeCenter()

concepts::Real3d linDG3D::FvdgElement::edgeCenter ( uint  edgeIdx) const

Returns the real world coordinates of the center of the edge with index edgeIdx.

Parameters
edgeIdxEdge index

◆ elemMap() [1/3]

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

Definition at line 86 of file element.hh.

◆ elemMap() [2/3]

Real3d concepts::ElementWithCell< Real >::elemMap ( const Real2d coord_local) const
inlineinherited

Definition at line 90 of file element.hh.

◆ elemMap() [3/3]

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

Definition at line 94 of file element.hh.

◆ graphics()

virtual const concepts::ElementGraphics<Real>* linDG3D::FvdgElement::graphics ( ) const
pure virtual

Returns the graphics object for the element.

Implemented in linDG3D::FvdgP1TetElem, and linDG3D::FvdgP0TetElem.

◆ info()

virtual std::ostream& linDG3D::FvdgElement::info ( std::ostream &  os) const
protectedvirtual

Returns cell and T matrix of this element.

Reimplemented in linDG3D::FvdgP1TetElem, and linDG3D::FvdgP0TetElem.

◆ shapeFct()

virtual Real linDG3D::FvdgElement::shapeFct ( const uint  fctIdx,
const concepts::Real3d  xi 
) const
pure virtual

Shape function.

Returns the value of a shape function

Parameters
fctIdxnumber of the shape function
xireference coordinate to evaluate the shape function at

Implemented in linDG3D::FvdgP1TetElem, and linDG3D::FvdgP0TetElem.

◆ shapeFctEdgeCenter()

virtual Real linDG3D::FvdgElement::shapeFctEdgeCenter ( const uint  fctIdx,
const uint  edgeIdx 
) const
pure virtual

Shapefunction at edge center.

Returns the value of shape function fctIdx at center of edge edgeIdx of this tetrahedron

Parameters
fctIdxnumber of the shape function
edgeIdxnumber of edge

Implemented in linDG3D::FvdgP1TetElem, and linDG3D::FvdgP0TetElem.

◆ shapeFctGradient()

virtual concepts::Real3d linDG3D::FvdgElement::shapeFctGradient ( const uint  fctIdx) const
pure virtual

Gradient of shape function.

Returns the gradient of shape function fctIdx

Parameters
fctIdxnumber of the shape function

Implemented in linDG3D::FvdgP1TetElem, and linDG3D::FvdgP0TetElem.

◆ shapeFctVertex()

virtual Real linDG3D::FvdgElement::shapeFctVertex ( const uint  fctIdx,
const uint  vtxIdx 
) const
pure virtual

Shapefunction at vertex.

Returns the value of shape function fctIdx at vertex vtxIdx of this tetrahedron

Parameters
fctIdxnumber of the shape function
vtxIdxnumber of vertex

Implemented in linDG3D::FvdgP1TetElem, and linDG3D::FvdgP0TetElem.

◆ solution()

Real linDG3D::FvdgElement::solution ( const concepts::Vector< Real > &  sol,
const concepts::Real3d  xi 
) const

Returns the value of the solution sol at the reference element coordinate xi.

Parameters
solsolution vector
xireference element coordinate to get solution at

◆ solutionEdgeCenter()

virtual Real linDG3D::FvdgElement::solutionEdgeCenter ( const concepts::Vector< Real > &  sol,
const uint  edgeIdx 
) const
pure virtual

Returns the value of the solution sol at the center of edge edgeIdx of this tetrahedron.

Parameters
solsolution vector
edgeIdxnumber of edge

Implemented in linDG3D::FvdgP1TetElem, and linDG3D::FvdgP0TetElem.

◆ solutionVertex()

virtual Real linDG3D::FvdgElement::solutionVertex ( const concepts::Vector< Real > &  sol,
const uint  vertexIdx 
) const
pure virtual

Returns the value of the solution sol at vertex vertexIdx of this tetrahedron.

Parameters
solsolution vector
vertexIdxnumber of vertex

Implemented in linDG3D::FvdgP1TetElem, and linDG3D::FvdgP0TetElem.

◆ support()

const concepts::Tetrahedron& linDG3D::FvdgElement::support ( ) const
inline

Returns the topological support of this element.

Definition at line 36 of file element.hh.

◆ T() [1/2]

const concepts::TMatrixBase<Real>& linDG3D::FvdgElement::T ( ) const
inline

Returns the T matrix of this element.

Definition at line 38 of file element.hh.

◆ T() [2/2]

virtual const TMatrixBase<Real >& concepts::ElementWithCell< Real >::T ( ) const
pure virtualinherited

Returns the T matrix of the element.

Implemented in hp3D::Element< Real >, and hp2D::Element< Real >.

◆ vertex()

const concepts::Real3d linDG3D::FvdgElement::vertex ( const uint  i) const
inline

Returns the vertex with local index i in this element.

Definition at line 40 of file element.hh.

Member Data Documentation

◆ cell_

const concepts::Tetrahedron3d& linDG3D::FvdgElement::cell_
protected

Definition at line 103 of file element.hh.

◆ eta_

Real linDG3D::FvdgElement::eta_[6][3]
staticprotected

Definition at line 104 of file element.hh.

◆ T_

std::unique_ptr<concepts::TMatrixBase<Real> > linDG3D::FvdgElement::T_
protected

Definition at line 102 of file element.hh.


The documentation for this class was generated from the following file:
Page URL: http://wiki.math.ethz.ch/bin/view/Concepts/WebHome
21 August 2020
© 2020 Eidgenössische Technische Hochschule Zürich