Class documentation of Concepts

Loading...
Searching...
No Matches
hp2D::ElementFunction< dim, F, Q > Class Template Referenceabstract

#include <functionBase.hh>

Inheritance diagram for hp2D::ElementFunction< dim, F, Q >:
concepts::ElementFunction< F, G > concepts::OutputOperator hp2D::Grad< Cmplx > hp2D::PlCurl< Cmplx > hp2Dedge::Rot< Cmplx > hp2D::Grad< F > hp2D::NeumannTrace< F, G > hp2D::Partial_xx< F, Q > hp2D::Partial_yy< F, Q > hp2D::PlCurl< F > hp2D::Trace< F, G > hp2D::TraceDeriv< F, G > hp2Dedge::Rot< F, G > hp2Dedge::Value< F, G, H >

Public Types

typedef concepts::Element< typename Q::type > Element
 

Public Member Functions

virtual uint n () const
 Number of components.
 
virtual void operator() (const Element &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const uint *i) const
 
virtual void operator() (const Element &elm, const uint *j, concepts::Array< F > &val, const uint *i) const
 
virtual void operator() (const Element &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const Real p, const Real t=0.0) const
 
virtual void operator() (const Element &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const Real2d &p, const Real t=0.0) const
 
virtual void operator() (const Element &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const concepts::Real3d &p, const Real t=0.0) const
 
virtual void operator() (const Element< G > &elm, const Array< F > &coeff, Array< F > &val, const uint *i) const =0
 
virtual void operator() (const Element< G > &elm, const uint *j, Array< F > &val, const uint *i) const =0
 
virtual void operator() (const Element< G > &elm, const Array< F > &coeff, Array< F > &val, const Real p, const Real t=0.0) const =0
 
virtual void operator() (const Element< G > &elm, const Array< F > &coeff, Array< F > &val, const Real2d &p, const Real t=0.0) const =0
 
virtual void operator() (const Element< G > &elm, const Array< F > &coeff, Array< F > &val, const Real3d &p, const Real t=0.0) const =0
 
virtual ElementFunction< F, G > * clone () const =0
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 Returns information in an output stream.
 

Detailed Description

template<uint dim, typename F = Real, typename Q = Quad<Real>>
class hp2D::ElementFunction< dim, F, Q >

Base class for element functions for hp elements in 2D

The derivated classes have only to implement the three compute_ methods for element of type Q, i.e. quads with different shape functions. The class can be extended to new types, like triangles, with new template parameter and new compute_ methods.

The case of scalar function with template parameter dim = 1 is declared below.

Author
Kersten Schmidt, 2005

Definition at line 36 of file functionBase.hh.

Member Typedef Documentation

◆ Element

template<uint dim, typename F = Real, typename Q = Quad<Real>>
typedef concepts::Element<typename Q::type> hp2D::ElementFunction< dim, F, Q >::Element

Definition at line 40 of file functionBase.hh.

Member Function Documentation

◆ info()

◆ n()

template<uint dim, typename F = Real, typename Q = Quad<Real>>
virtual uint hp2D::ElementFunction< dim, F, Q >::n ( ) const
inlinevirtual

Number of components.

Implements concepts::ElementFunction< F, G >.

Definition at line 43 of file functionBase.hh.

◆ operator()() [1/9]

template<uint dim, typename F , typename Q >
void hp2D::ElementFunction< dim, F, Q >::operator() ( const Element elm,
const concepts::Array< F > &  coeff,
concepts::Array< F > &  val,
const concepts::Real3d p,
const Real  t = 0.0 
) const
virtual

Definition at line 125 of file functionBase.hh.

◆ operator()() [2/9]

template<uint dim, typename F , typename Q >
void hp2D::ElementFunction< dim, F, Q >::operator() ( const Element elm,
const concepts::Array< F > &  coeff,
concepts::Array< F > &  val,
const Real  p,
const Real  t = 0.0 
) const
virtual

Definition at line 101 of file functionBase.hh.

◆ operator()() [3/9]

template<uint dim, typename F , typename Q >
void hp2D::ElementFunction< dim, F, Q >::operator() ( const Element elm,
const concepts::Array< F > &  coeff,
concepts::Array< F > &  val,
const Real2d &  p,
const Real  t = 0.0 
) const
virtual

Definition at line 114 of file functionBase.hh.

◆ operator()() [4/9]

template<uint dim, typename F , typename Q >
void hp2D::ElementFunction< dim, F, Q >::operator() ( const Element elm,
const concepts::Array< F > &  coeff,
concepts::Array< F > &  val,
const uint *  i 
) const
virtual

Definition at line 79 of file functionBase.hh.

◆ operator()() [5/9]

template<uint dim, typename F , typename Q >
void hp2D::ElementFunction< dim, F, Q >::operator() ( const Element elm,
const uint *  j,
concepts::Array< F > &  val,
const uint *  i 
) const
virtual

Definition at line 90 of file functionBase.hh.

◆ operator()() [6/9]

template<class F , class G = typename Realtype<F>::type>
virtual void concepts::ElementFunction< F, G >::operator() ( const Element< G > &  elm,
const Array< F > &  coeff,
Array< F > &  val,
const Real  p,
const Real  t = 0.0 
) const
pure virtualinherited

Evaluates the function value in an arbitrary point p of physical space

Parameters
elmElement
coeffCoefficients of local shape functions
valFunction value
pPoint in space in local element coordinates
tPoint in time

Implemented in hp3D::Laplacian< F, G >, concepts::Squared< F, G >, concepts::AbsoluteComp< F, G >, and concepts::Absolute< F, G >.

◆ operator()() [7/9]

template<class F , class G = typename Realtype<F>::type>
virtual void concepts::ElementFunction< F, G >::operator() ( const Element< G > &  elm,
const Array< F > &  coeff,
Array< F > &  val,
const Real2d p,
const Real  t = 0.0 
) const
pure virtualinherited

Implemented in hp3D::Laplacian< F, G >.

◆ operator()() [8/9]

template<class F , class G = typename Realtype<F>::type>
virtual void concepts::ElementFunction< F, G >::operator() ( const Element< G > &  elm,
const Array< F > &  coeff,
Array< F > &  val,
const uint i 
) const
pure virtualinherited

◆ operator()() [9/9]

template<class F , class G = typename Realtype<F>::type>
virtual void concepts::ElementFunction< F, G >::operator() ( const Element< G > &  elm,
const uint j,
Array< F > &  val,
const uint i 
) const
pure virtualinherited

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