hpp-constraints 7.0.0
Definition of basic geometric constraints for motion planning
Loading...
Searching...
No Matches
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 shared_ptr< SymbolicFunctionPtr_t
typedef 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.
size_type inputDerivativeSize () const
LiegroupSpacePtr_t outputSpace () const
 Get output space.
size_type outputSize () const
 Get dimension of output vector.
size_type outputDerivativeSize () const
 Get dimension of output derivative vector.
const std::string & name () const
 Get function name.
virtual std::ostream & print (std::ostream &o) const
 Display object in a stream.
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
bool operator== (DifferentiableFunction const &other) const
bool operator!= (DifferentiableFunction const &b) const
virtual std::pair< JointConstPtr_t, JointConstPtr_tdependsOnRelPoseBetween (DeviceConstPtr_t) 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.
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.
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.
Static Public Member Functions inherited from hpp::constraints::DifferentiableFunction
static DifferentiableFunctionPtr_t extract (DifferentiableFunctionPtr_t original, interval_t interval)

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)
bool isEqual (const DifferentiableFunction &other) const
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.
 DifferentiableFunction (size_type sizeInput, size_type sizeInputDerivative, const LiegroupSpacePtr_t &outputSpace, std::string name=std::string())
 Concrete class constructor should call this constructor.
virtual void impl_compute (LiegroupElementRef result, vectorIn_t argument) const =0
 User implementation of function evaluation.
virtual void impl_jacobian (matrixOut_t jacobian, vectorIn_t arg) const =0
 DifferentiableFunction ()

Additional Inherited Members

Protected Attributes inherited from hpp::constraints::DifferentiableFunction
size_type inputSize_
 Dimension of input vector.
size_type inputDerivativeSize_
 Dimension of input derivative.
LiegroupSpacePtr_t outputSpace_
 Dimension of output vector.
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 shared_ptr<SymbolicFunction> hpp::constraints::SymbolicFunction< Expression >::Ptr_t

◆ WkPtr_t

template<typename Expression>
typedef 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_texpr,
std::vector< bool >mask )
inline

◆ SymbolicFunction() [2/2]

template<typename Expression>
hpp::constraints::SymbolicFunction< Expression >::SymbolicFunction(const std::string &name,
size_typesizeInput,
size_typesizeInputDerivative,
size_typesizeOutput,
const typename Traits< Expression >::Ptr_texpr,
std::vector< bool >mask )
inline

Member Function Documentation

◆ create() [1/3]

template<typename Expression>
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_texpr )
inlinestatic

Return a shared pointer to a new instance.

◆ create() [2/3]

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

Return a shared pointer to a new instance.

◆ create() [3/3]

template<typename Expression>
Ptr_t hpp::constraints::SymbolicFunction< Expression >::create(const std::string &name,
size_typesizeInput,
size_typesizeInputDerivative,
size_typesizeOutput,
const typename Traits< Expression >::Ptr_texpr )
inlinestatic

Return a shared pointer to a new instance.

◆ impl_compute()

template<typename Expression>
virtual void hpp::constraints::SymbolicFunction< Expression >::impl_compute(LiegroupElementRefresult,
ConfigurationIn_targument ) 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_tjacobian,
ConfigurationIn_targ ) const
inlineprotectedvirtual

◆ init()

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

◆ isEqual()

template<typename Expression>
bool hpp::constraints::SymbolicFunction< Expression >::isEqual(const DifferentiableFunction &other)const
inlineprotectedvirtual

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