A function object with 2 arguments. More...
#include <function.h>
Public Member Functions | |
virtual Size< Arg1 >::type | getArg1Size () const |
Return the size of first argument. | |
virtual Size< Arg2 >::type | getArg2Size () const |
Return the size of first argument. | |
virtual Ret | operator() (const Arg1 &arg1, const Arg2 &arg2)=0 |
Function value: pure virtual (MUST be implemented by derived class) | |
virtual Der< Ret, Arg1 >::type | parDer1 (const Arg1 &arg1, const Arg2 &arg2) |
First derivative: partial derivative of the function value with respect to the first argument. | |
virtual Ret | dirDer1 (const Arg1 &arg1Dir, const Arg1 &arg1, const Arg2 &arg2) |
First derivative: directional derivative of the function value with respect to the first argument. | |
virtual Der< Ret, Arg2 >::type | parDer2 (const Arg1 &arg1, const Arg2 &arg2) |
First derivative: partial derivative of the function value with respect to the second argument. | |
virtual Ret | dirDer2 (const Arg2 &arg2Dir, const Arg1 &arg1, const Arg2 &arg2) |
First derivative: directional derivative of the function value with respect to the second argument. | |
virtual Der< typename Der< Ret, Arg1 >::type, Arg1 >::type | parDer1ParDer1 (const Arg1 &arg1, const Arg2 &arg2) |
Second derivative: partial derivative of parDer1 with respect to the first argument. | |
virtual Der< Ret, Arg1 >::type | parDer1DirDer1 (const Arg1 &arg1Dir, const Arg1 &arg1, const Arg2 &arg2) |
Second derivative: directional derivative of parDer1 with respect to the first argument. | |
virtual Der< typename Der< Ret, Arg2 >::type, Arg2 >::type | parDer2ParDer2 (const Arg1 &arg1, const Arg2 &arg2) |
Second derivative: partial derivative of parDer2 with respect to the first argument. | |
virtual Der< Ret, Arg2 >::type | parDer2DirDer2 (const Arg2 &arg2Dir, const Arg1 &arg1, const Arg2 &arg2) |
Second derivative: directional derivative of parDer2 with respect to the first argument. | |
virtual Der< typename Der< Ret, Arg1 >::type, Arg2 >::type | parDer1ParDer2 (const Arg1 &arg1, const Arg2 &arg2) |
Second mixed derivative: partial derivative of parDer1 with respect to the second argument. | |
virtual Der< Ret, Arg1 >::type | parDer1DirDer2 (const Arg2 &arg2Dir, const Arg1 &arg1, const Arg2 &arg2) |
Second mixed derivative: directional derivative of parDer1 with respect to the second argument. | |
virtual Der< typename Der< Ret, Arg2 >::type, Arg1 >::type | parDer2ParDer1 (const Arg1 &arg1, const Arg2 &arg2) |
Second mixed derivative: partial derivative of parDer2 with respect to the first argument. | |
virtual Der< Ret, Arg2 >::type | parDer2DirDer1 (const Arg1 &arg1Dir, const Arg1 &arg1, const Arg2 &arg2) |
Second mixed derivative: directional derivative of parDer2 with respect to the first argument. | |
virtual bool | constParDer1 () const |
Returns true, if the partial derivative of the function value with respect to the first argument. | |
virtual bool | constParDer2 () const |
Returns true, if the partial derivative of the function value with respect to the second argument. | |
![]() | |
BOOST_STATIC_ASSERT_MSG (SIZE==FMATVEC_ATOM_MSGTYPE_SIZE,"The proprocessor define FMATVEC_ATOM_MSGTYPE_SIZE must be equal Atom::SIZE.") | |
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, boost::shared_ptr< bool > &a, boost::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) |
Additional Inherited Members | |
![]() | |
enum | MsgType { Info, Warn, Debug, SIZE } |
Messages can be printed to different message types named here. | |
![]() | |
static void | setCurrentMessageStream (MsgType type, const boost::shared_ptr< bool > &a=boost::make_shared< bool >(true), const boost::shared_ptr< std::ostream > &s=boost::make_shared< std::ostream >(std::cout.rdbuf())) |
static std::ostream & | msgStatic (MsgType type) |
static bool | msgActStatic (MsgType type) |
![]() | |
Atom () | |
When a Atom is default constructed use the current statically set message streams. | |
Atom (const Atom &src) | |
When a Atom is copy constructed use the current statically set message streams, not the message streams from src. | |
A function object with 2 arguments.