hp2D::ElementFunction< dim, F, Q > Class Template Referenceabstract
Base class for element functions for hp elements in 2D. More...
#include <functionBase.hh>
Public Types | |
typedef concepts::Element< typename Q::type > | Element |
Public Member Functions | |
virtual ElementFunction< Real, Q::type > * | clone () const=0 |
virtual uint | n () const |
Number of components. More... | |
virtual uint | n () const=0 |
Number of components. More... | |
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 &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 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< Q::type > &elm, const Array< Real > &coeff, Array< Real > &val, const Real p, const Real t=0.0) const=0 |
Evaluates the function value in an arbitrary point p of physical space. More... | |
virtual void | operator() (const Element< Q::type > &elm, const Array< Real > &coeff, Array< Real > &val, const Real2d &p, const Real t=0.0) const=0 |
virtual void | operator() (const Element< Q::type > &elm, const Array< Real > &coeff, Array< Real > &val, const Real3d &p, const Real t=0.0) const=0 |
virtual void | operator() (const Element< Q::type > &elm, const Array< Real > &coeff, Array< Real > &val, const uint *i) const=0 |
Evaluates the function on precalculated quadrature points. More... | |
virtual void | operator() (const Element< Q::type > &elm, const uint *j, Array< Real > &val, const uint *i) const=0 |
Evaluates the given function on a specific shape function j (on precalculated quadrature points). More... | |
Protected Member Functions | |
virtual std::ostream & | info (std::ostream &os) const |
Private Member Functions | |
virtual void | compute_ (const Q &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const Real2d &p, const Real t=0.0) const =0 |
virtual void | compute_ (const Q &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const uint i[2]) const =0 |
virtual void | compute_ (const Q &elm, const uint j[3], concepts::Array< F > &val, const uint i[2]) const =0 |
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.
Definition at line 36 of file functionBase.hh.
Member Typedef Documentation
◆ Element
typedef concepts::Element<typename Q::type> hp2D::ElementFunction< dim, F, Q >::Element |
Definition at line 40 of file functionBase.hh.
Member Function Documentation
◆ clone()
|
pure virtualinherited |
◆ compute_() [1/3]
|
privatepure virtual |
Implemented in hp2D::PlCurl< Cmplx >, and hp2D::Grad< Cmplx >.
◆ compute_() [2/3]
|
privatepure virtual |
Implemented in hp2D::PlCurl< Cmplx >, and hp2D::Grad< Cmplx >.
◆ compute_() [3/3]
|
privatepure virtual |
◆ info()
|
inlineprotectedvirtualinherited |
Reimplemented in hp2Dedge::Rot< F, G >, hp2Dedge::Value< F, G, H >, hp2D::NeumannTrace< F, G >, hp2D::TraceDeriv< F, G >, hp2D::Trace< F, G >, hp2D::PlCurl< F >, and hp2D::Grad< F >.
Definition at line 67 of file function.hh.
◆ n() [1/2]
|
inlinevirtual |
Number of components.
Definition at line 43 of file functionBase.hh.
◆ n() [2/2]
|
pure virtualinherited |
Number of components.
Implemented in hp2D::ElementFunction< 1, Real, Quad< typename concepts::Realtype< Real >::type > >, hp2D::ElementFunction< 1, Real, Quad< Real > >, hp2D::ElementFunction< 1, Real, hp1D::Element< typename concepts::Realtype< Real >::type > >, hp2D::ElementFunction< 2, Real, Quad< typename concepts::Realtype< Real >::type > >, and hp2D::ElementFunction< 2, Real >.
◆ operator()() [1/10]
|
virtual |
Definition at line 125 of file functionBase.hh.
◆ operator()() [2/10]
|
virtual |
Definition at line 101 of file functionBase.hh.
◆ operator()() [3/10]
|
virtual |
Definition at line 114 of file functionBase.hh.
◆ operator()() [4/10]
|
virtual |
Definition at line 79 of file functionBase.hh.
◆ operator()() [5/10]
|
virtual |
Definition at line 90 of file functionBase.hh.
◆ operator()() [6/10]
|
pure virtualinherited |
Evaluates the function value in an arbitrary point p
of physical space.
- Parameters
-
elm Element coeff Coefficients of local shape functions val Function value p Point in space in local element coordinates t Point in time
◆ operator()() [7/10]
|
pure virtualinherited |
◆ operator()() [8/10]
|
pure virtualinherited |
◆ operator()() [9/10]
|
pure virtualinherited |
Evaluates the function on precalculated quadrature points.
- Parameters
-
elm Element coeff Coefficients of local shape functions val Function value i multi-index of the quadrature point
◆ operator()() [10/10]
|
pure virtualinherited |
Evaluates the given function on a specific shape function j
(on precalculated quadrature points).
- Parameters
-
elm Element j multi-index of a shapefunction val Function value i multi-index of the quadrature point
The documentation for this class was generated from the following file:
- hp2D/functionBase.hh