hpp-constraints: hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType > Class Template Reference

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

Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType > Class Template Reference
Symbolic calculus

`#include <hpp/constraints/symbolic-calculus.hh>`

Inheritance diagram for hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >:
[legend]
Collaboration diagram for hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >:
[legend]

## Public Member Functions
| CalculusBase ()
| CalculusBase (const ValueType &value, const JacobianType &jacobian)
| CalculusBase (const CalculusBase &o)
const ValueType & | value () const
const JacobianType & | jacobian () const
void | computeValue (const ConfigurationIn_t arg)
void | computeJacobian (const ConfigurationIn_t arg)
void | invalidate ()
const CrossType & | cross () const
void | computeCrossValue (const ConfigurationIn_t arg)

## Protected Member Functions
void | init (const typename Traits< T >::Ptr_t &ptr)

## Protected Attributes
ValueType | value_
JacobianType | jacobian_
CrossType | cross_
bool | vValid_
bool | jValid_
bool | cValid_

## Additional Inherited Members
Public Types inherited from hpp::constraints::CalculusBaseAbstract< ValueType, JacobianType >
typedef ValueType | ValueType_t
typedef JacobianType | JacobianType_t

## Detailed Description

template<class T, class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>
class hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >

Main abstract class.

The framework is using CRTP to virtual function calls overload. Keep in mind, so far, no mathematical simplification is done on the expression you provide. It means that you may have a more efficient expression by calculating and simplifying the jacobian yourself. These classes provide:

- a fast way of defining new constraints,
- a robust way of calculation of jacobians - hand calculation error proof
- a fast way to check the results of your calculations.

## Constructor & Destructor Documentation

## ◆ CalculusBase() [1/3]

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::CalculusBase | ( |  | ) |
| inline

## ◆ CalculusBase() [2/3]

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::CalculusBase | ( | const ValueType & | value,
|  | const JacobianType & | jacobian )
| inline

## ◆ CalculusBase() [3/3]

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::CalculusBase | ( | const CalculusBase< T, ValueType, JacobianType, CrossType > & | o | ) |
| inline

## Member Function Documentation

## ◆ computeCrossValue()

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

void hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::computeCrossValue | ( | const ConfigurationIn_t | arg | ) |
| inline

## ◆ computeJacobian()

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

void hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::computeJacobian | ( | const ConfigurationIn_t | arg | ) |
| inline virtual

Implements hpp::constraints::CalculusBaseAbstract< ValueType, JacobianType >.

## ◆ computeValue()

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

void hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::computeValue | ( | const ConfigurationIn_t | arg | ) |
| inline virtual

Implements hpp::constraints::CalculusBaseAbstract< ValueType, JacobianType >.

## ◆ cross()

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

const CrossType & hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::cross | ( |  | ) | const
| inline

## ◆ init()

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

void hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::init | ( | const typename Traits< T >::Ptr_t & | ptr | ) |
| inline protected

## ◆ invalidate()

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

void hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::invalidate | ( |  | ) |
| inline virtual

Implements hpp::constraints::CalculusBaseAbstract< ValueType, JacobianType >.

Reimplemented in hpp::constraints::CrossProduct< LhsValue, RhsValue >, hpp::constraints::ScalarProduct< LhsValue, RhsValue >, hpp::constraints::Difference< LhsValue, RhsValue >, hpp::constraints::Sum< LhsValue, RhsValue >, hpp::constraints::ScalarMultiply< RhsValue >, hpp::constraints::RotationMultiply< RhsValue >, hpp::constraints::MatrixOfExpressions< ValueType, JacobianType >, and hpp::constraints::MatrixOfExpressions< eigen::vector3_t, JacobianMatrix >.

## ◆ jacobian()

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

const JacobianType & hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::jacobian | ( |  | ) | const
| inline virtual

Implements hpp::constraints::CalculusBaseAbstract< ValueType, JacobianType >.

Reimplemented in hpp::constraints::PointCom.

## ◆ value()

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

const ValueType & hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::value | ( |  | ) | const
| inline virtual

Implements hpp::constraints::CalculusBaseAbstract< ValueType, JacobianType >.

Reimplemented in hpp::constraints::PointCom.

## Member Data Documentation

## ◆ cross_

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

CrossType hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::cross_
| protected

## ◆ cValid_

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

bool hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::cValid_
| protected

## ◆ jacobian_

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

JacobianType hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::jacobian_
| protected

## ◆ jValid_

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

bool hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::jValid_
| protected

## ◆ value_

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

ValueType hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::value_
| protected

## ◆ vValid_

template<class T , class ValueType = vector3_t, class JacobianType = JacobianMatrix, class CrossType = CrossMatrix>

bool hpp::constraints::CalculusBase< T, ValueType, JacobianType, CrossType >::vValid_
| protected

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

- include/hpp/constraints/symbolic-calculus.hh