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< F, Q::type > * | clone () const =0 |
| virtual uint | n () const |
| Number of components. | |
| virtual void | operator() (const Element< Q::type > &elm, const uint *j, Array< F > &val, const uint *i) const =0 |
Evaluates the given function on a specific shape function j (on precalculated quadrature points). | |
| virtual void | operator() (const Element< Q::type > &elm, const Array< F > &coeff, Array< F > &val, const uint *i) const =0 |
| Evaluates the function on precalculated quadrature points. | |
| 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 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 &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const Real p, const Real t=0.0) const |
| virtual void | operator() (const Element< Q::type > &elm, const Array< F > &coeff, Array< F > &val, const Real p, const Real t=0.0) const =0 |
Evaluates the function value in an arbitrary point p of physical space. | |
| virtual void | operator() (const Element< Q::type > &elm, const Array< F > &coeff, Array< F > &val, const Real2d &p, const Real t=0.0) const =0 |
Evaluates the function value in an arbitrary point p of physical space. | |
| virtual void | operator() (const Element< Q::type > &elm, const Array< F > &coeff, Array< F > &val, const Real3d &p, const Real t=0.0) const =0 |
Evaluates the function value in an arbitrary point p of physical space. | |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Private Member Functions | |
| 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 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 uint j[3], concepts::Array< F > &val, const uint i[2]) const =0 |
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 34 of file functionBase.hh.
| typedef concepts::Element<typename Q::type> hp2D::ElementFunction< dim, F, Q >::Element |
Definition at line 38 of file functionBase.hh.
| virtual ElementFunction<F,Q::type >* concepts::ElementFunction< F, Q::type >::clone | ( | ) | const [pure virtual, inherited] |
| virtual void hp2D::ElementFunction< dim, F, Q >::compute_ | ( | const Q & | elm, |
| const uint | j[3], | ||
| concepts::Array< F > & | val, | ||
| const uint | i[2] | ||
| ) | const [private, pure virtual] |
| virtual void hp2D::ElementFunction< dim, F, Q >::compute_ | ( | const Q & | elm, |
| const concepts::Array< F > & | coeff, | ||
| concepts::Array< F > & | val, | ||
| const Real2d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [private, pure virtual] |
Implemented in hp2D::Grad< F >, hp2D::PlCurl< F >, hp2D::Grad< Cmplx >, and hp2D::PlCurl< Cmplx >.
| virtual void hp2D::ElementFunction< dim, F, Q >::compute_ | ( | const Q & | elm, |
| const concepts::Array< F > & | coeff, | ||
| concepts::Array< F > & | val, | ||
| const uint | i[2] | ||
| ) | const [private, pure virtual] |
Implemented in hp2D::Grad< F >, hp2D::PlCurl< F >, hp2D::Grad< Cmplx >, and hp2D::PlCurl< Cmplx >.
| virtual std::ostream& concepts::ElementFunction< F, Q::type >::info | ( | std::ostream & | os | ) | const [inline, protected, virtual, inherited] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
Definition at line 66 of file function.hh.
| virtual uint hp2D::ElementFunction< dim, F, Q >::n | ( | ) | const [inline, virtual] |
Number of components.
Implements concepts::ElementFunction< F, Q::type >.
Definition at line 41 of file functionBase.hh.
| virtual void concepts::ElementFunction< F, Q::type >::operator() | ( | const Element< Q::type > & | elm, |
| const uint * | j, | ||
| Array< F > & | val, | ||
| const uint * | i | ||
| ) | const [pure virtual, inherited] |
Evaluates the given function on a specific shape function j (on precalculated quadrature points).
| elm | Element |
| j | multi-index of a shapefunction |
| val | Function value |
| i | multi-index of the quadrature point |
| virtual void concepts::ElementFunction< F, Q::type >::operator() | ( | const Element< Q::type > & | elm, |
| const Array< F > & | coeff, | ||
| Array< F > & | val, | ||
| const uint * | i | ||
| ) | const [pure virtual, inherited] |
Evaluates the function on precalculated quadrature points.
| elm | Element |
| coeff | Coefficients of local shape functions |
| val | Function value |
| i | multi-index of the quadrature point |
| 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 78 of file functionBase.hh.
| 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 100 of file functionBase.hh.
| virtual void concepts::ElementFunction< F, Q::type >::operator() | ( | const Element< Q::type > & | elm, |
| const Array< F > & | coeff, | ||
| Array< F > & | val, | ||
| const Real3d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
Evaluates the function value in an arbitrary point p of physical space.
| elm | Element |
| coeff | Coefficients of local shape functions |
| val | Function value |
| p | Point in space in local element coordinates |
| t | Point in time |
| 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 124 of file functionBase.hh.
| 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 113 of file functionBase.hh.
| 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 89 of file functionBase.hh.
| virtual void concepts::ElementFunction< F, Q::type >::operator() | ( | const Element< Q::type > & | elm, |
| const Array< F > & | coeff, | ||
| Array< F > & | val, | ||
| const Real | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
Evaluates the function value in an arbitrary point p of physical space.
| elm | Element |
| coeff | Coefficients of local shape functions |
| val | Function value |
| p | Point in space in local element coordinates |
| t | Point in time |
| virtual void concepts::ElementFunction< F, Q::type >::operator() | ( | const Element< Q::type > & | elm, |
| const Array< F > & | coeff, | ||
| Array< F > & | val, | ||
| const Real2d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
Evaluates the function value in an arbitrary point p of physical space.
| elm | Element |
| coeff | Coefficients of local shape functions |
| val | Function value |
| p | Point in space in local element coordinates |
| t | Point in time |