Interface for a formula. More...
#include <formula.hh>


Public Types | |
| typedef Realtype< F >::type | G |
| typedef F | value_type |
Public Member Functions | |
| virtual Formula * | clone () const =0 |
| Virtual copy constructor. | |
| virtual const F & | dflt_value () const |
| Gives default value. | |
| virtual F & | dflt_value () |
| Gives default value. | |
| virtual F | operator() (const ElementWithCell< concepts::Realtype< F >::type > &elm, const Real3d &p, const Real t=0.0) const =0 |
| virtual F | operator() (const ElementWithCell< concepts::Realtype< F >::type > &elm, const Real2d &p, const Real t=0.0) const =0 |
| virtual F | operator() (const ElementWithCell< concepts::Realtype< F >::type > &elm, const Real p, const Real t=0.0) const =0 |
| Evaluates the formula. | |
| 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 Real p, const Real t=0.0) const =0 |
| Application operator. | |
| virtual F | operator() (const Real2d &p, const Real t=0.0) const =0 |
| Application operator. | |
| virtual F | operator() (const Real3d &p, const Real t=0.0) const =0 |
| Application operator. | |
| virtual F | operator() (const Connector &cntr, const Real p, const Real t=0.0) const |
| Convenience implementation, that by default ignores its elm param. | |
| virtual F | operator() (const Connector &cntr, const Real2d &p, const Real t=0.0) const |
| Convenience implementation, that by default ignores its elm param. | |
| virtual F | operator() (const Connector &cntr, const Real3d &p, const Real t=0.0) const |
| Convenience implementation, that by default ignores its elm param. | |
Protected Member Functions | |
| virtual std::ostream & | info (std::ostream &os) const |
| Returns information in an output stream. | |
Interface for a formula.
A general formula would be
. This class covers the possibilities
where n is 1, 2 or 3 in space and 0 or 1 in time. The image space is just one dimensional since higher dimensions can be simulated by taking a Formula in every component.
The application operators of this class evaluate the formula in a given point in space p and time t. If a specialization of this interface does not implement a time dependent formula, t is simply discarded.
ElementFormula is more general than Formula, it always takes an additional Element argument. Formula is derived from ElementFormula and will by default just ignore this argument.
Definition at line 32 of file formula.hh.
| typedef Realtype<F>::type concepts::Formula< F >::G |
Reimplemented from concepts::PiecewiseFormulaBase< F >.
Definition at line 35 of file formula.hh.
| typedef F concepts::Formula< F >::value_type |
Reimplemented from concepts::ElementFormula< F, concepts::Realtype< F >::type >.
Reimplemented in concepts::VectorFormula< F, dim >.
Definition at line 34 of file formula.hh.
| virtual Formula* concepts::Formula< F >::clone | ( | ) | const [pure virtual] |
Virtual copy constructor.
Implements concepts::PiecewiseFormulaBase< F >.
Implemented in concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, concepts::FormulaExpImag2DGrad, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, BoxSin, InitTest, TimeSquared, HeatSolution, ADLoad, ADSolution, concepts::BesselJ< n >, concepts::BesselY< n >, concepts::ConstFormula< F >, concepts::FormulaLiCo, concepts::Frm_Product< F, H, J >, concepts::Frm_Sum< F, H, J >, concepts::ParsedFormula< Real >, concepts::ParsedFormula< Cmplx >, concepts::VectorFormula< F, dim >, concepts::HField_CircularCoil, concepts::CurlHField_CircularCoil, concepts::DivGradHField_CircularCoil, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, and concepts::FormulaExpImag2DGrad.
| virtual const F& concepts::PiecewiseFormulaBase< F >::dflt_value | ( | ) | const [inline, virtual, inherited] |
Gives default value.
Definition at line 76 of file piecewiseFormula.hh.
| virtual F& concepts::PiecewiseFormulaBase< F >::dflt_value | ( | ) | [inline, virtual, inherited] |
Gives default value.
Definition at line 78 of file piecewiseFormula.hh.
| std::ostream & concepts::PiecewiseFormulaBase< F >::info | ( | std::ostream & | os | ) | const [protected, virtual, inherited] |
Returns information in an output stream.
Reimplemented from concepts::OutputOperator.
Reimplemented in concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, concepts::FormulaExpImag2DGrad, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::BesselJ< n >, concepts::BesselY< n >, concepts::ConstFormula< F >, concepts::Frm_Product< F, H, J >, concepts::Frm_Sum< F, H, J >, concepts::ParsedFormula< Real >, concepts::ParsedFormula< Cmplx >, concepts::VectorFormula< F, dim >, concepts::PiecewiseFormula0< F >, concepts::PiecewiseConstFormula< F >, concepts::PiecewiseConstDynArrayFormula< F >, concepts::PiecewiseFormula< F >, concepts::PiecewiseFormulaFun< F, G >, concepts::PiecewiseFormulaCombine< F, G, H, I >, concepts::HField_CircularCoil, concepts::CurlHField_CircularCoil, concepts::DivGradHField_CircularCoil, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, concepts::FormulaExpImag2DGrad, concepts::PiecewiseConstFormula< concepts::Real >, concepts::PiecewiseConstFormula< Cmplx >, concepts::PiecewiseConstFormula< Real >, concepts::PiecewiseConstFormula< Real2d >, concepts::PiecewiseFormula< Real >, concepts::PiecewiseFormula< Real2d >, concepts::PiecewiseFormulaFun< Cmplx, Real >, and concepts::PiecewiseFormulaFun< Real, Real >.
Definition at line 95 of file piecewiseFormula.hh.
| virtual F concepts::ElementFormula< F, concepts::Realtype< F >::type >::operator() | ( | const ElementWithCell< concepts::Realtype< F >::type > & | elm, |
| const Real3d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
| virtual F concepts::ElementFormula< F, concepts::Realtype< F >::type >::operator() | ( | const ElementWithCell< concepts::Realtype< F >::type > & | elm, |
| const Real2d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
| virtual F concepts::ElementFormula< F, concepts::Realtype< F >::type >::operator() | ( | const ElementWithCell< concepts::Realtype< F >::type > & | elm, |
| const Real | p, | ||
| const Real | t = 0.0 |
||
| ) | const [pure virtual, inherited] |
Evaluates the formula.
| elm | Element |
| p | Point in space in local element coordinates |
| t | Point in time |
| virtual F concepts::PiecewiseFormulaBase< F >::operator() | ( | const ElementWithCell< G > & | elm, |
| const Real3d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [inline, virtual, inherited] |
Definition at line 58 of file piecewiseFormula.hh.
| virtual F concepts::PiecewiseFormulaBase< F >::operator() | ( | const ElementWithCell< G > & | elm, |
| const Real2d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [inline, virtual, inherited] |
Definition at line 52 of file piecewiseFormula.hh.
| virtual F concepts::Formula< F >::operator() | ( | const Connector & | cntr, |
| const Real | p, | ||
| const Real | t = 0.0 |
||
| ) | const [inline, virtual] |
Convenience implementation, that by default ignores its elm param.
Implements concepts::PiecewiseFormulaBase< F >.
Definition at line 51 of file formula.hh.
| virtual F concepts::PiecewiseFormulaBase< F >::operator() | ( | const ElementWithCell< G > & | elm, |
| const Real | p, | ||
| const Real | t = 0.0 |
||
| ) | const [inline, virtual, inherited] |
Definition at line 47 of file piecewiseFormula.hh.
| virtual F concepts::Formula< F >::operator() | ( | const Connector & | cntr, |
| const Real3d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [inline, virtual] |
Convenience implementation, that by default ignores its elm param.
Implements concepts::PiecewiseFormulaBase< F >.
Definition at line 57 of file formula.hh.
| virtual F concepts::Formula< F >::operator() | ( | const Connector & | cntr, |
| const Real2d & | p, | ||
| const Real | t = 0.0 |
||
| ) | const [inline, virtual] |
Convenience implementation, that by default ignores its elm param.
Implements concepts::PiecewiseFormulaBase< F >.
Definition at line 54 of file formula.hh.
| virtual F concepts::Formula< F >::operator() | ( | const Real2d & | p, |
| const Real | t = 0.0 |
||
| ) | const [pure virtual] |
Application operator.
Evaluates the formula.
Implemented in concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, concepts::FormulaExpImag2DGrad, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::BesselJ< n >, concepts::BesselY< n >, concepts::ConstFormula< F >, concepts::FormulaLiCo, concepts::Frm_Product< F, H, J >, concepts::Frm_Sum< F, H, J >, concepts::ParsedFormula< Real >, concepts::ParsedFormula< Cmplx >, concepts::VectorFormula< F, dim >, concepts::HField_CircularCoil, concepts::CurlHField_CircularCoil, concepts::DivGradHField_CircularCoil, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, and concepts::FormulaExpImag2DGrad.
| virtual F concepts::Formula< F >::operator() | ( | const Real | p, |
| const Real | t = 0.0 |
||
| ) | const [pure virtual] |
Application operator.
Evaluates the formula.
Implemented in concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, concepts::FormulaExpImag2DGrad, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::BesselJ< n >, concepts::BesselY< n >, concepts::ConstFormula< F >, concepts::FormulaLiCo, concepts::Frm_Product< F, H, J >, concepts::Frm_Sum< F, H, J >, concepts::ParsedFormula< Real >, concepts::ParsedFormula< Cmplx >, concepts::VectorFormula< F, dim >, concepts::HField_CircularCoil, concepts::CurlHField_CircularCoil, concepts::DivGradHField_CircularCoil, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, and concepts::FormulaExpImag2DGrad.
| virtual F concepts::Formula< F >::operator() | ( | const Real3d & | p, |
| const Real | t = 0.0 |
||
| ) | const [pure virtual] |
Application operator.
Evaluates the formula.
Implemented in concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, concepts::FormulaExpImag2DGrad, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::BesselJ< n >, concepts::BesselY< n >, concepts::ConstFormula< F >, concepts::FormulaLiCo, concepts::Frm_Product< F, H, J >, concepts::Frm_Sum< F, H, J >, concepts::ParsedFormula< Real >, concepts::ParsedFormula< Cmplx >, concepts::VectorFormula< F, dim >, concepts::HField_CircularCoil, concepts::CurlHField_CircularCoil, concepts::DivGradHField_CircularCoil, concepts::FormulaPMLPowerSigma< F >, concepts::FormulaPMLPowerSigma2D< F >, concepts::FormulaPMLPowerSigmaB2D< F >, concepts::FormulaExpImag1D, concepts::FormulaExpImag2D, concepts::FormulaExpImag2DRadialDer, and concepts::FormulaExpImag2DGrad.