|
hpp-constraints
9.0.2
Definition of basic geometric constraints for motion planning
|
#include <hpp/constraints/manipulability.hh>


Public Member Functions | |
| virtual | ~Manipulability () |
| void | lockJoint (const JointPtr_t &joint) |
| const DevicePtr_t & | robot () const |
| Get robot. More... | |
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. 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 |
| 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. More... | |
| void | impl_compute (LiegroupElementRef result, vectorIn_t argument) const |
| User implementation of function evaluation. More... | |
| 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. 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... | |
| DifferentiableFunction () | |
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_ |
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.
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.
|
inlinevirtual |
|
protected |
Concrete class constructor should call this constructor.
| function | the function which must be analysed |
| name | function's name |
|
inlinestatic |
|
protectedvirtual |
User implementation of function evaluation.
Implements hpp::constraints::DifferentiableFunction.
|
protectedvirtual |
Implements hpp::constraints::DifferentiableFunction.
|
inlineprotectedvirtual |
Reimplemented from hpp::constraints::DifferentiableFunction.
| void hpp::constraints::Manipulability::lockJoint | ( | const JointPtr_t & | joint | ) |
Lock a joint
Consider this joint as fixed when computing the manipulability
|
inline |
Get robot.