vectorial::ElementFunction< F, G > Class Template Referenceabstract

Vector valued element function. More...

#include <function.hh>

Inheritance diagram for vectorial::ElementFunction< F, G >:
concepts::ElementFunction< F, typename concepts::Realtype< F >::type > vectorial::Vectorial< const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > >

Public Member Functions

virtual ElementFunction< F, G > * clone () const
 
virtual ElementFunction< F, typename concepts::Realtype< F >::type > * clone () const=0
 
 ElementFunction (const uint vdim, uint arrayWidth=0)
 
virtual const const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > * get (const int a, const int b=0) const
 Get a component. More...
 
virtual void insert (const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > &vdata, const int a=0, const int b=0)
 Add a component. More...
 
virtual uint n () const
 Number of components. More...
 
virtual uint n () const=0
 Number of components. More...
 
virtual void operator() (const concepts::Element< G > &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const concepts::Real2d &p, const Real t=0.0) const
 
virtual void operator() (const concepts::Element< G > &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const concepts::Real3d &p, const Real t=0.0) const
 
virtual void operator() (const concepts::Element< G > &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const Real p, const Real t=0.0) const
 Evaluates the function value in an arbitrary point p of physical space. More...
 
virtual void operator() (const concepts::Element< G > &elm, const concepts::Array< F > &coeff, concepts::Array< F > &val, const uint *i) const
 Evaluates the function on precalculated quadrature points. More...
 
virtual void operator() (const concepts::Element< G > &elm, const uint *j, concepts::Array< F > &val, const uint *i) const
 Evaluates the given function on a specific shape function j (on precalculated quadrature points). More...
 
virtual void operator() (const Element< typename concepts::Realtype< F >::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. More...
 
virtual void operator() (const Element< typename concepts::Realtype< F >::type > &elm, const Array< F > &coeff, Array< F > &val, const Real2d &p, const Real t=0.0) const=0
 
virtual void operator() (const Element< typename concepts::Realtype< F >::type > &elm, const Array< F > &coeff, Array< F > &val, const Real3d &p, const Real t=0.0) const=0
 
virtual void operator() (const Element< typename concepts::Realtype< F >::type > &elm, const Array< F > &coeff, Array< F > &val, const uint *i) const=0
 Evaluates the function on precalculated quadrature points. More...
 
virtual void operator() (const Element< typename concepts::Realtype< F >::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). More...
 
virtual void put (const concepts::ElementFunction< F, G > &vdata, const uint a=0, const uint b=0)
 Add a component, it will not deleted here. More...
 
uint vdim () const
 Returns number of components. More...
 
virtual ~ElementFunction ()
 

Protected Member Functions

virtual std::ostream & info (std::ostream &os) const
 

Protected Attributes

uint idx_
 Index of the last added component. More...
 
concepts::Array< const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > * > vdata_
 Storage. More...
 
uint vdim_
 Number of components. More...
 

Detailed Description

template<class F, class G = typename concepts::Realtype<F>::type>
class vectorial::ElementFunction< F, G >

Vector valued element function.

Not to each component of the solution an element function has to be applied. E.g. only the second component can be taken.

Author
Kersten Schmidt, 2014

Definition at line 31 of file function.hh.

Constructor & Destructor Documentation

◆ ElementFunction()

template<class F , class G = typename concepts::Realtype<F>::type>
vectorial::ElementFunction< F, G >::ElementFunction ( const uint  vdim,
uint  arrayWidth = 0 
)
inline

Definition at line 34 of file function.hh.

◆ ~ElementFunction()

template<class F , class G = typename concepts::Realtype<F>::type>
virtual vectorial::ElementFunction< F, G >::~ElementFunction ( )
virtual

Member Function Documentation

◆ clone() [1/2]

template<class F , class G = typename concepts::Realtype<F>::type>
virtual ElementFunction<F,G>* vectorial::ElementFunction< F, G >::clone ( ) const
virtual

◆ clone() [2/2]

virtual ElementFunction<F,typename concepts::Realtype< F >::type >* concepts::ElementFunction< F, typename concepts::Realtype< F >::type >::clone
pure virtualinherited

◆ get()

virtual const const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > * vectorial::Vectorial< const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > >::get ( const int  a,
const int  b = 0 
) const
inlinevirtualinherited

Get a component.

Definition at line 74 of file vectorial.hh.

◆ info()

template<class F , class G = typename concepts::Realtype<F>::type>
virtual std::ostream& vectorial::ElementFunction< F, G >::info ( std::ostream &  os) const
protectedvirtual

◆ insert()

void vectorial::Vectorial< const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > >::insert ( const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > &  vdata,
const int  a = 0,
const int  b = 0 
)
virtualinherited

Add a component.

Definition at line 72 of file vectorial.hh.

◆ n() [1/2]

template<class F , class G = typename concepts::Realtype<F>::type>
virtual uint vectorial::ElementFunction< F, G >::n ( ) const
virtual

Number of components.

◆ n() [2/2]

virtual uint concepts::ElementFunction< F, typename concepts::Realtype< F >::type >::n
pure virtualinherited

Number of components.

◆ operator()() [1/10]

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

◆ operator()() [2/10]

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

◆ operator()() [3/10]

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

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

◆ operator()() [4/10]

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

Evaluates the function on precalculated quadrature points.

◆ operator()() [5/10]

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

Evaluates the given function on a specific shape function j (on precalculated quadrature points).

◆ operator()() [6/10]

virtual void concepts::ElementFunction< F, typename concepts::Realtype< F >::type >::operator() ( const Element< typename concepts::Realtype< F >::type > &  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

◆ operator()() [7/10]

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

◆ operator()() [8/10]

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

◆ operator()() [9/10]

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

Evaluates the function on precalculated quadrature points.

Parameters
elmElement
coeffCoefficients of local shape functions
valFunction value
imulti-index of the quadrature point

◆ operator()() [10/10]

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

Evaluates the given function on a specific shape function j (on precalculated quadrature points).

Parameters
elmElement
jmulti-index of a shapefunction
valFunction value
imulti-index of the quadrature point

◆ put()

template<class F , class G = typename concepts::Realtype<F>::type>
virtual void vectorial::ElementFunction< F, G >::put ( const concepts::ElementFunction< F, G > &  vdata,
const uint  a = 0,
const uint  b = 0 
)
virtual

Add a component, it will not deleted here.

Parameters
vdatathe element function for solution component a
athe index of the solution component the element function shall be applied
bdummy variable

◆ vdim()

uint vectorial::Vectorial< const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > >::vdim
inlineinherited

Returns number of components.

Definition at line 77 of file vectorial.hh.

Member Data Documentation

◆ idx_

uint vectorial::Vectorial< const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > >::idx_
protectedinherited

Index of the last added component.

Definition at line 82 of file vectorial.hh.

◆ vdata_

concepts::Array<const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > *> vectorial::Vectorial< const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > >::vdata_
mutableprotectedinherited

Storage.

Definition at line 84 of file vectorial.hh.

◆ vdim_

uint vectorial::Vectorial< const concepts::ElementFunction< F, typename concepts::Realtype< F >::type > >::vdim_
protectedinherited

Number of components.

Definition at line 80 of file vectorial.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