|
enum | { retSize1 = StaticSize<Ret>::size1,
retSize2 = StaticSize<Ret>::size2
} |
| Compile time size of the return value: =0 == unknown compile time size.
|
|
using | DRetDArg = typename Der< Ret, Arg >::type |
|
using | DDRetDDArg = typename Der< DRetDArg, Arg >::type |
|
enum | MsgType { Info,
Warn,
Debug,
SIZE
} |
| Messages can be printed to different message types named here.
|
|
|
virtual std::pair< int, int > | getRetSize () const |
| Return the size of the return value: =0 == unknown size.
|
|
virtual int | getArgSize () const |
| Return the size of the argument: =1 == scalar; >1 == vector; =0 == unknown vector size.
|
|
virtual Ret | operator() (const Arg &arg)=0 |
| Function value: pure virtual (MUST be implemented by derived class)
|
|
virtual DRetDArg | parDer (const Arg &arg) |
| First derivative: partial derivative of the function value with respect to the argument.
|
|
virtual Ret | dirDer (const Arg &argDir, const Arg &arg) |
| First derivative: directional derivative of the function value with respect to the argument.
|
|
virtual DDRetDDArg | parDerParDer (const Arg &arg) |
| Second derivative: partial derivative of parDer with respect to the argument.
|
|
virtual DRetDArg | parDerDirDer (const Arg &argDir, const Arg &arg) |
| Second derivative: directional derivative of parDer with respect to the argument.
|
|
virtual Ret | dirDerDirDer (const Arg &argDir_1, const Arg &argDir_2, const Arg &arg) |
| Second derivative: directional derivative of dirDer with respect to the argument.
|
|
virtual bool | constParDer () const |
| Returns true, if the partial derivative of the function value with respect to the argument.
|
|
virtual | ~Atom () |
| dtor.
|
|
Atom & | operator= (const Atom &) |
| When a Atom is assinged do not change the messsage streams since we always use the message streams being active at ctor time.
|
|
void | setMessageStreamActive (MsgType type, bool active) |
| Set the active flag of this object and all objects which were created using the same message stream as this object.
|
|
void | getMessageStream (MsgType type, std::shared_ptr< bool > &a, std::shared_ptr< std::ostream > &s) |
| Get the shared message stream active flag and the shared message stream of this object.
|
|
void | adoptMessageStreams (const Atom *src=NULL) |
|
std::ostream & | msg (MsgType type) |
|
bool | msgAct (MsgType type) |
|
template<typename Ret, typename Arg>
class fmatvec::Function< Ret(Arg)>
A function object with 1 argument.