hpp::constraints::DifferentiableFunction Class Referenceabstract

Differentiable function. More...

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

Inheritance diagram for hpp::constraints::DifferentiableFunction:

Public Member Functions

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

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. More...
 
virtual void impl_compute (vectorOut_t result, vectorIn_t argument) const =0
 User implementation of function evaluation. More...
 
virtual void impl_jacobian (matrixOut_t jacobian, vectorIn_t arg) const =0
 

Detailed Description

Differentiable function.

Constructor & Destructor Documentation

◆ ~DifferentiableFunction()

virtual hpp::constraints::DifferentiableFunction::~DifferentiableFunction ( )
inlinevirtual

◆ DifferentiableFunction()

hpp::constraints::DifferentiableFunction::DifferentiableFunction ( size_type  inputSize,
size_type  inputDerivativeSize,
size_type  outputSize,
std::string  name = std::string () 
)
inlineprotected

Concrete class constructor should call this constructor.

Parameters
inputSizefunction arity
outputSizeresult size
namefunction's name

Member Function Documentation

◆ impl_compute()

virtual void hpp::constraints::DifferentiableFunction::impl_compute ( vectorOut_t  result,
vectorIn_t  argument 
) const
protectedpure virtual

User implementation of function evaluation.

◆ impl_jacobian()

virtual void hpp::constraints::DifferentiableFunction::impl_jacobian ( matrixOut_t  jacobian,
vectorIn_t  arg 
) const
protectedpure virtual

◆ inputDerivativeSize()

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)

◆ inputSize()

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

Get dimension of input vector.

◆ jacobian()

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

◆ name()

const std::string& hpp::constraints::DifferentiableFunction::name ( ) const
inline

Get function name.

Returns
Function name.

◆ operator()()

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.

◆ outputSize()

size_type hpp::constraints::DifferentiableFunction::outputSize ( ) const
inline

Get dimension of output vector.

◆ print()

virtual std::ostream& hpp::constraints::DifferentiableFunction::print ( std::ostream &  o) const
inlinevirtual

Display object in a stream.

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