hpp-constraints: hpp::constraints::Manipulability Class Reference

hpp-constraints 9.0.2 Definition of basic geometric constraints for motion planning

Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
hpp::constraints::Manipulability Class Reference
Constraints

`#include <hpp/constraints/manipulability.hh>`

Inheritance diagram for hpp::constraints::Manipulability:
[legend]
Collaboration diagram for hpp::constraints::Manipulability:
[legend]

## Public Member Functions
virtual | ~Manipulability ()
void | lockJoint (const JointPtr_t &joint)
const DevicePtr_t & | robot () const
| Get robot.
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 ArrayXb & | activeParameters () const
const ArrayXb & | activeDerivativeParameters () 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_t > | dependsOnRelPoseBetween (DeviceConstPtr_t) const

## Static Public Member Functions
static ManipulabilityPtr_t | create (DifferentiableFunctionPtr_t function, DevicePtr_t robot, std::string name)
Static Public Member Functions inherited from hpp::constraints::DifferentiableFunction
static DifferentiableFunctionPtr_t | extract (DifferentiableFunctionPtr_t original, interval_t interval)

## Protected Member Functions
| Manipulability (DifferentiableFunctionPtr_t function, DevicePtr_t robot, std::string name)
| Concrete class constructor should call this constructor.
void | impl_compute (LiegroupElementRef result, vectorIn_t argument) const
| User implementation of function evaluation.
void | impl_jacobian (matrixOut_t jacobian, vectorIn_t arg) const
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.
| 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

Manipulability index

This function takes as input another differentiable function defined over the same configuration space and computes a one dimensional value as follows:

where is the Jacobian matrix of .

Inserting a constraint with this function with comparison type EQUALITY into a numerical solver will make the solution reach a manipulability index specified by the right hand side of the constraint.

Lock joints

In some cases, it is useful not to consider some joints in the kinematic chain. For example, when evaluating the manipulability of a robotic arm moving on a prismatic rail, it can be useful to consider the manipulability of the system when the rail is locked. To do so, call method Manipulability::lockJoint.

Note
  The Jacobian of this function is computed by finite difference.

## Constructor & Destructor Documentation

## ◆ ~Manipulability()

virtual hpp::constraints::Manipulability::~Manipulability | ( |  | ) |
| inline virtual

## ◆ Manipulability()

hpp::constraints::Manipulability::Manipulability | ( | DifferentiableFunctionPtr_t | function,
|  | DevicePtr_t | robot,
|  | std::string | name )
| protected

Concrete class constructor should call this constructor.

Parameters

  function | the function which must be analysed
  name | function's name

## Member Function Documentation

## ◆ create()

static ManipulabilityPtr_t hpp::constraints::Manipulability::create | ( | DifferentiableFunctionPtr_t | function,
|  | DevicePtr_t | robot,
|  | std::string | name )
| inline static

## ◆ impl_compute()

void hpp::constraints::Manipulability::impl_compute | ( | LiegroupElementRef | result,
|  | vectorIn_t | argument ) const
| protected virtual

User implementation of function evaluation.

Implements hpp::constraints::DifferentiableFunction.

## ◆ impl_jacobian()

void hpp::constraints::Manipulability::impl_jacobian | ( | matrixOut_t | jacobian,
|  | vectorIn_t | arg ) const
| protected virtual

Implements hpp::constraints::DifferentiableFunction.

## ◆ isEqual()

bool hpp::constraints::Manipulability::isEqual | ( | const DifferentiableFunction & | other | ) | const
| inline protected virtual

Reimplemented from hpp::constraints::DifferentiableFunction.

## ◆ lockJoint()

void hpp::constraints::Manipulability::lockJoint | ( | const JointPtr_t & | joint | ) |

Lock a joint

Consider this joint as fixed when computing the manipulability

## ◆ robot()

const DevicePtr_t & hpp::constraints::Manipulability::robot | ( |  | ) | const
| inline

Get robot.

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

- include/hpp/constraints/manipulability.hh