concepts::PiecewiseElementFormula< F, G > Class Template Referenceabstract

Piecewise defined function defined by attributes. More...

#include <formula.hh>

Inheritance diagram for concepts::PiecewiseElementFormula< F, G >:
concepts::ElementFormula< F, typename Realtype< F >::type > concepts::Cloneable concepts::OutputOperator

Public Types

typedef HashMap< ElementFormulaContainer< F, G > > ElemFormulaMap
 Mapping from the elements on to the formula. More...
 
typedef F value_type
 

Public Member Functions

virtual PiecewiseElementFormula< F, G > * clone () const
 Virtual constructor. More...
 
virtual ElementFormula< F, typename Realtype< F >::type > * clone () const=0
 Virtual copy constructor. More...
 
virtual F operator() (const ElementWithCell< G > &elm, const Real p, const Real t=0.0) const
 
virtual F operator() (const ElementWithCell< G > &elm, const Real2d &p, const Real t=0.0) const
 
virtual F operator() (const ElementWithCell< G > &elm, const Real3d &p, const Real t=0.0) const
 
virtual F operator() (const ElementWithCell< typename Realtype< F >::type > &elm, const Real p, const Real t=0.0) const=0
 Evaluates the formula. More...
 
virtual F operator() (const ElementWithCell< typename Realtype< F >::type > &elm, const Real2d &p, const Real t=0.0) const=0
 Evaluates the formula. More...
 
virtual F operator() (const ElementWithCell< typename Realtype< F >::type > &elm, const Real3d &p, const Real t=0.0) const=0
 Evaluates the formula. More...
 
 PiecewiseElementFormula (const F defaultV=0)
 
void set (concepts::Set< uint > attribs, const ElementFormulaContainer< F, G > formula)
 
void set (const uint attrib, const ElementFormulaContainer< F, G > formula)
 Set the ElementFormula for all cells with attribute attrib. More...
 
virtual ~PiecewiseElementFormula ()
 

Public Attributes

defaultV_
 Default value. More...
 
ElemFormulaMap formulas_
 

Protected Member Functions

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

Detailed Description

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

Piecewise defined function defined by attributes.

For an attribute and so an area a formula is given.

Author
Holger Brandsmeier, 2010

Definition at line 287 of file formula.hh.

Member Typedef Documentation

◆ ElemFormulaMap

template<class F , class G = typename Realtype<F>::type>
typedef HashMap< ElementFormulaContainer<F, G> > concepts::PiecewiseElementFormula< F, G >::ElemFormulaMap

Mapping from the elements on to the formula.

Definition at line 358 of file formula.hh.

◆ value_type

typedef F concepts::ElementFormula< F, typename Realtype< F >::type >::value_type
inherited

Definition at line 37 of file elementFormula.hh.

Constructor & Destructor Documentation

◆ PiecewiseElementFormula()

template<class F , class G = typename Realtype<F>::type>
concepts::PiecewiseElementFormula< F, G >::PiecewiseElementFormula ( const F  defaultV = 0)
inline

Definition at line 289 of file formula.hh.

◆ ~PiecewiseElementFormula()

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

Definition at line 294 of file formula.hh.

Member Function Documentation

◆ clone() [1/2]

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

Virtual constructor.

Returns a pointer to a copy of itself. The caller is responsible to destroy this copy.

Implements concepts::Cloneable.

Definition at line 296 of file formula.hh.

◆ clone() [2/2]

virtual ElementFormula<F,typename Realtype< F >::type >* concepts::ElementFormula< F, typename Realtype< F >::type >::clone ( ) const
pure virtualinherited

◆ info()

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

Returns information in an output stream.

Reimplemented from concepts::OutputOperator.

Definition at line 351 of file formula.hh.

◆ operator()() [1/6]

template<class F , class G = typename Realtype<F>::type>
virtual F concepts::PiecewiseElementFormula< F, G >::operator() ( const ElementWithCell< G > &  elm,
const Real  p,
const Real  t = 0.0 
) const
inlinevirtual

Definition at line 322 of file formula.hh.

◆ operator()() [2/6]

template<class F , class G = typename Realtype<F>::type>
virtual F concepts::PiecewiseElementFormula< F, G >::operator() ( const ElementWithCell< G > &  elm,
const Real2d p,
const Real  t = 0.0 
) const
inlinevirtual

Definition at line 311 of file formula.hh.

◆ operator()() [3/6]

template<class F , class G = typename Realtype<F>::type>
virtual F concepts::PiecewiseElementFormula< F, G >::operator() ( const ElementWithCell< G > &  elm,
const Real3d p,
const Real  t = 0.0 
) const
inlinevirtual

Definition at line 300 of file formula.hh.

◆ operator()() [4/6]

virtual F concepts::ElementFormula< F, typename Realtype< F >::type >::operator() ( const ElementWithCell< G > &  elm,
const Real  p,
const Real  t = 0.0 
) const
pure virtualinherited

Evaluates the formula.

Parameters
elmElement
pPoint in space in local element coordinates
tPoint in time

Implemented in concepts::ElementFormulaContainer< F >, and concepts::ElementFormulaContainer< F, typename Realtype< F >::type >.

◆ operator()() [5/6]

virtual F concepts::ElementFormula< F, typename Realtype< F >::type >::operator() ( const ElementWithCell< G > &  elm,
const Real2d p,
const Real  t = 0.0 
) const
pure virtualinherited

Evaluates the formula.

Parameters
elmElement
pPoint in space in local element coordinates
tPoint in time

Implemented in concepts::ElementFormulaContainer< F >, and concepts::ElementFormulaContainer< F, typename Realtype< F >::type >.

◆ operator()() [6/6]

virtual F concepts::ElementFormula< F, typename Realtype< F >::type >::operator() ( const ElementWithCell< G > &  elm,
const Real3d p,
const Real  t = 0.0 
) const
pure virtualinherited

Evaluates the formula.

Parameters
elmElement
pPoint in space in local element coordinates
tPoint in time

Implemented in concepts::ElementFormulaContainer< F >, and concepts::ElementFormulaContainer< F, typename Realtype< F >::type >.

◆ set() [1/2]

template<class F , class G = typename Realtype<F>::type>
void concepts::PiecewiseElementFormula< F, G >::set ( concepts::Set< uint >  attribs,
const ElementFormulaContainer< F, G >  formula 
)
inline

Definition at line 341 of file formula.hh.

◆ set() [2/2]

template<class F , class G = typename Realtype<F>::type>
void concepts::PiecewiseElementFormula< F, G >::set ( const uint  attrib,
const ElementFormulaContainer< F, G >  formula 
)
inline

Set the ElementFormula for all cells with attribute attrib.

Definition at line 335 of file formula.hh.

Member Data Documentation

◆ defaultV_

template<class F , class G = typename Realtype<F>::type>
F concepts::PiecewiseElementFormula< F, G >::defaultV_

Default value.

Definition at line 361 of file formula.hh.

◆ formulas_

template<class F , class G = typename Realtype<F>::type>
ElemFormulaMap concepts::PiecewiseElementFormula< F, G >::formulas_

Definition at line 359 of file formula.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