hpp::constraints::DifferentiableFunction Class Reference

Differentiable function. More...

#include <hpp/constraints/differentiable-function.hh>

Inheritance diagram for hpp::constraints::DifferentiableFunction:

List of all members.

Public Member Functions

virtual ~DifferentiableFunction ()
void operator() (vectorOut_t result, vectorIn_t argument) const
 Evaluate the function at a given parameter.
void jacobian (matrixOut_t jacobian, vectorIn_t argument) const
 Computes the jacobian.
size_type inputSize () const
 Get dimension of input vector.
size_type inputDerivativeSize () const
 Get dimension of input derivative vector.
size_type outputSize () const
 Get dimension of output vector.
const std::string & name () const
 Get function name.
virtual std::ostream & print (std::ostream &o) const
 Display object in a stream.

Protected Member Functions

 DifferentiableFunction (size_type inputSize, size_type inputDerivativeSize, size_type outputSize, std::string name=std::string())
 Concrete class constructor should call this constructor.
virtual void impl_compute (vectorOut_t result, vectorIn_t argument) const =0
 User implementation of function evaluation.
virtual void impl_jacobian (matrixOut_t jacobian, vectorIn_t arg) const =0

Detailed Description

Differentiable function.


Constructor & Destructor Documentation

virtual hpp::constraints::DifferentiableFunction::~DifferentiableFunction ( ) [inline, virtual]
hpp::constraints::DifferentiableFunction::DifferentiableFunction ( size_type  inputSize,
size_type  inputDerivativeSize,
size_type  outputSize,
std::string  name = std::string () 
) [inline, protected]

Concrete class constructor should call this constructor.

Parameters:
inputSizefunction arity
outputSizeresult size
namefunction's name

Member Function Documentation

virtual void hpp::constraints::DifferentiableFunction::impl_compute ( vectorOut_t  result,
vectorIn_t  argument 
) const [protected, pure virtual]

User implementation of function evaluation.

virtual void hpp::constraints::DifferentiableFunction::impl_jacobian ( matrixOut_t  jacobian,
vectorIn_t  arg 
) const [protected, pure virtual]
size_type hpp::constraints::DifferentiableFunction::inputDerivativeSize ( ) const [inline]

Get dimension of input derivative vector.

The dimension of configuration vectors might differ from the dimension of velocity vectors since some joints are represented by non minimal size vectors: e.g. quaternion for SO(3)

size_type hpp::constraints::DifferentiableFunction::inputSize ( ) const [inline]

Get dimension of input vector.

void hpp::constraints::DifferentiableFunction::jacobian ( matrixOut_t  jacobian,
vectorIn_t  argument 
) const [inline]

Computes the jacobian.

Return values:
jacobianjacobian will be stored in this argument
Parameters:
argumentpoint at which the jacobian will be computed
const std::string& hpp::constraints::DifferentiableFunction::name ( ) const [inline]

Get function name.

Returns:
Function name.
void hpp::constraints::DifferentiableFunction::operator() ( vectorOut_t  result,
vectorIn_t  argument 
) const [inline]

Evaluate the function at a given parameter.

Note:
parameters should be of the correct size.
size_type hpp::constraints::DifferentiableFunction::outputSize ( ) const [inline]

Get dimension of output vector.

virtual std::ostream& hpp::constraints::DifferentiableFunction::print ( std::ostream &  o) const [inline, virtual]

Display object in a stream.

Referenced by hpp::constraints::operator<<().