hpp-constraints  4.9.1
Definition of basic geometric constraints for motion planning
hpp::constraints::SymbolicFunction< Expression > Class Template Reference

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

Inheritance diagram for hpp::constraints::SymbolicFunction< Expression >:
Collaboration diagram for hpp::constraints::SymbolicFunction< Expression >:

Public Types

typedef boost::shared_ptr< SymbolicFunctionPtr_t
 
typedef boost::weak_ptr< SymbolicFunctionWkPtr_t
 

Public Member Functions

virtual ~SymbolicFunction ()
 
 SymbolicFunction (const std::string &name, const DevicePtr_t &robot, const typename Traits< Expression >::Ptr_t expr, std::vector< bool > mask)
 
 SymbolicFunction (const std::string &name, size_type sizeInput, size_type sizeInputDerivative, size_type sizeOutput, const typename Traits< Expression >::Ptr_t expr, std::vector< bool > mask)
 
- Public Member Functions inherited from hpp::constraints::DifferentiableFunction
virtual ~DifferentiableFunction ()
 
LiegroupElement operator() (vectorIn_t argument) const
 
void value (LiegroupElementRef result, vectorIn_t argument) const
 
void jacobian (matrixOut_t jacobian, vectorIn_t argument) const
 
const ArrayXbactiveParameters () const
 
const ArrayXbactiveDerivativeParameters () const
 
size_type inputSize () const
 Get dimension of input vector. More...
 
size_type inputDerivativeSize () const
 
LiegroupSpacePtr_t outputSpace () const
 Get output space. More...
 
size_type outputSize () const
 Get dimension of output vector. More...
 
size_type outputDerivativeSize () const
 Get dimension of output derivative 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...
 
std::string context () const
 
void context (const std::string &c)
 
void finiteDifferenceForward (matrixOut_t jacobian, vectorIn_t arg, DevicePtr_t robot=DevicePtr_t(), value_type eps=std::sqrt(Eigen::NumTraits< value_type >::epsilon())) const
 
void finiteDifferenceCentral (matrixOut_t jacobian, vectorIn_t arg, DevicePtr_t robot=DevicePtr_t(), value_type eps=std::sqrt(Eigen::NumTraits< value_type >::epsilon())) const
 

Static Public Member Functions

static EIGEN_MAKE_ALIGNED_OPERATOR_NEW Ptr_t create (const std::string &name, const DevicePtr_t &robot, const typename Traits< Expression >::Ptr_t expr)
 Return a shared pointer to a new instance. More...
 
static Ptr_t create (const std::string &name, const DevicePtr_t &robot, const typename Traits< Expression >::Ptr_t expr, std::vector< bool > mask)
 Return a shared pointer to a new instance. More...
 
static Ptr_t create (const std::string &name, size_type sizeInput, size_type sizeInputDerivative, size_type sizeOutput, const typename Traits< Expression >::Ptr_t expr)
 Return a shared pointer to a new instance. More...
 

Protected Member Functions

virtual void impl_compute (LiegroupElementRef result, ConfigurationIn_t argument) const
 
virtual void impl_jacobian (matrixOut_t jacobian, ConfigurationIn_t arg) const
 
void init (const Ptr_t &self)
 
- Protected Member Functions inherited from hpp::constraints::DifferentiableFunction
 DifferentiableFunction (size_type sizeInput, size_type sizeInputDerivative, size_type sizeOutput, std::string name=std::string())
 Concrete class constructor should call this constructor. More...
 
 DifferentiableFunction (size_type sizeInput, size_type sizeInputDerivative, const LiegroupSpacePtr_t &outputSpace, std::string name=std::string())
 Concrete class constructor should call this constructor. More...
 
virtual void impl_compute (LiegroupElementRef result, vectorIn_t argument) const =0
 User implementation of function evaluation. More...
 
virtual void impl_jacobian (matrixOut_t jacobian, vectorIn_t arg) const =0
 

Additional Inherited Members

- Protected Attributes inherited from hpp::constraints::DifferentiableFunction
size_type inputSize_
 Dimension of input vector. More...
 
size_type inputDerivativeSize_
 Dimension of input derivative. More...
 
LiegroupSpacePtr_t outputSpace_
 Dimension of output vector. More...
 
ArrayXb activeParameters_
 
ArrayXb activeDerivativeParameters_
 

Detailed Description

template<typename Expression>
class hpp::constraints::SymbolicFunction< Expression >

Wrapper of a CalculusBaseAbstract derived object into a DifferentiableFunction

Note
At the moment, it is not possible to write a CalculusBaseAbstract derived object that uses the extra config space of the robot.

Member Typedef Documentation

◆ Ptr_t

template<typename Expression >
typedef boost::shared_ptr<SymbolicFunction> hpp::constraints::SymbolicFunction< Expression >::Ptr_t

◆ WkPtr_t

template<typename Expression >
typedef boost::weak_ptr<SymbolicFunction> hpp::constraints::SymbolicFunction< Expression >::WkPtr_t

Constructor & Destructor Documentation

◆ ~SymbolicFunction()

template<typename Expression >
virtual hpp::constraints::SymbolicFunction< Expression >::~SymbolicFunction ( )
inlinevirtual

◆ SymbolicFunction() [1/2]

template<typename Expression >
hpp::constraints::SymbolicFunction< Expression >::SymbolicFunction ( const std::string &  name,
const DevicePtr_t robot,
const typename Traits< Expression >::Ptr_t  expr,
std::vector< bool >  mask 
)
inline

◆ SymbolicFunction() [2/2]

template<typename Expression >
hpp::constraints::SymbolicFunction< Expression >::SymbolicFunction ( const std::string &  name,
size_type  sizeInput,
size_type  sizeInputDerivative,
size_type  sizeOutput,
const typename Traits< Expression >::Ptr_t  expr,
std::vector< bool >  mask 
)
inline

Member Function Documentation

◆ create() [1/3]

template<typename Expression >
static EIGEN_MAKE_ALIGNED_OPERATOR_NEW Ptr_t hpp::constraints::SymbolicFunction< Expression >::create ( const std::string &  name,
const DevicePtr_t robot,
const typename Traits< Expression >::Ptr_t  expr 
)
inlinestatic

Return a shared pointer to a new instance.

◆ create() [2/3]

template<typename Expression >
static Ptr_t hpp::constraints::SymbolicFunction< Expression >::create ( const std::string &  name,
const DevicePtr_t robot,
const typename Traits< Expression >::Ptr_t  expr,
std::vector< bool >  mask 
)
inlinestatic

Return a shared pointer to a new instance.

◆ create() [3/3]

template<typename Expression >
static Ptr_t hpp::constraints::SymbolicFunction< Expression >::create ( const std::string &  name,
size_type  sizeInput,
size_type  sizeInputDerivative,
size_type  sizeOutput,
const typename Traits< Expression >::Ptr_t  expr 
)
inlinestatic

Return a shared pointer to a new instance.

◆ impl_compute()

template<typename Expression >
virtual void hpp::constraints::SymbolicFunction< Expression >::impl_compute ( LiegroupElementRef  result,
ConfigurationIn_t  argument 
) const
inlineprotectedvirtual

Compute value of error

Parameters
argumentconfiguration of the robot,
Return values
resulterror vector

◆ impl_jacobian()

template<typename Expression >
virtual void hpp::constraints::SymbolicFunction< Expression >::impl_jacobian ( matrixOut_t  jacobian,
ConfigurationIn_t  arg 
) const
inlineprotectedvirtual

◆ init()

template<typename Expression >
void hpp::constraints::SymbolicFunction< Expression >::init ( const Ptr_t self)
inlineprotected

The documentation for this class was generated from the following file: