|
IFEM 90A354
|
Base class for unary functions of arbitrary result and argument type. More...
#include <Function.h>

Public Types | |
| typedef Arg | Input |
| Input type. | |
| typedef Result | Output |
| Output type. | |
Public Member Functions | |
| virtual | ~Function () |
| Empty destructor. | |
| virtual bool | isZero () const |
| Returns whether the function is identically zero or not. | |
| virtual bool | isConstant () const |
| Returns whether the function is time-independent or not. | |
| Result | operator() (const Arg &x) const |
| Operator returning the function value for the given argument. | |
Protected Member Functions | |
| Function () | |
| The constructor is protected to allow sub-class instances only. | |
| virtual Result | evaluate (const Arg &x) const =0 |
| Evaluates the function for the argument x. | |
Base class for unary functions of arbitrary result and argument type.
|
protectedpure virtual |
Evaluates the function for the argument x.
Implemented in IntFunc, ConstantFunc, EvalFuncScalar< Scalar >, LinearFunc, RampFunc, DiracFunc, StepFunc, and SineFunc.
Referenced by TensorFunc::getScalarValue(), STensorFunc::getScalarValue(), RealFunc::getScalarValue(), VecFunc::getScalarValue(), TensorFunc::getValue(), STensorFunc::getValue(), RealFunc::getValue(), VecFunc::getValue(), and utl::Function< Arg, Result >::operator()().
|
inlinevirtual |
Returns whether the function is time-independent or not.
Reimplemented in NodeVecFunc, EvalFuncScalar< Scalar >, EvalFuncSpatial< Scalar >, LinearFunc, LinVecFunc, RampFunc, SineFunc, ConstTimeFunc, SpaceTimeFunc, LinearRotZFunc, and Interpolate1D.
Referenced by ConstTimeFunc::isConstant(), and SpaceTimeFunc::isConstant().
|
inlinevirtual |
Returns whether the function is identically zero or not.
Reimplemented in NodeVecFunc, ChebyshevFunc, ChebyshevVecFunc, ChebyshevTensorFunc, ConstantFunc, LinearFunc, LinVecFunc, RampFunc, DiracFunc, StepFunc, SineFunc, ConstFunc, ConstTimeFunc, SpaceTimeFunc, LinearXFunc, LinearYFunc, LinearZFunc, QuadraticXFunc, QuadraticYFunc, QuadraticZFunc, LinearRotZFunc, StepXFunc, StepXYFunc, Interpolate1D, and ConstVecFunc.
Referenced by TractionField::isZero(), PressureField::isZero(), ForceDirField::isZero(), ConstTimeFunc::isZero(), SpaceTimeFunc::isZero(), and ASMbase::updateDirichlet().