Crocoddyl
 
Loading...
Searching...
No Matches
CoPSupportTpl< _Scalar > Class Template Reference

This class encapsulates a center of pressure support of a 6d contact. More...

#include <cop-support.hpp>

Public Types

typedef MathBaseTpl< Scalar > MathBase
 
typedef MathBase::Matrix3s Matrix3s
 
typedef MathBase::Matrix46s Matrix46s
 
typedef MathBase::Quaternions Quaternions
 
typedef MathBase::Vector2s Vector2s
 
typedef MathBase::Vector3s Vector3s
 
typedef MathBase::Vector4s Vector4s
 

Public Member Functions

 CoPSupportTpl ()
 Initialize the center of pressure support.
 
 CoPSupportTpl (const CoPSupportTpl< Scalar > &support)
 Initialize the center of pressure support.
 
 CoPSupportTpl (const Matrix3s &R, const Vector2s &box)
 Initialize the center of pressure support.
 
 CoPSupportTpl (const WrenchConeTpl< Scalar > &support)
 Initialize the center of pressure support.
 
const Matrix46s & get_A () const
 Return the matrix of center of pressure support.
 
const Vector2s & get_box () const
 Return dimension of the center of pressure support (length, width)
 
const Vector4s & get_lb () const
 Return the lower bound of the center of pressure support.
 
const Matrix3s & get_R () const
 Return the rotation matrix that defines the support orientation w.r.t. the inertial frame.
 
const Vector4s & get_ub () const
 Return the upper bound of the center of pressure support.
 
CoPSupportTpl< Scalar > & operator= (const CoPSupportTpl< Scalar > &other)
 
void set_box (const Vector2s &box)
 Modify dimension of the center of pressure support (length, width)
 
void set_R (const Matrix3s &R)
 Modify the rotation matrix that defines the support orientation w.r.t. the inertial frame.
 
void update ()
 Update the matrix of center of pressure inequalities in the world frame.
 

Public Attributes

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
 

Friends

template<class Scalar >
std::ostream & operator<< (std::ostream &os, const CoPSupportTpl< Scalar > &X)
 

Detailed Description

template<typename _Scalar>
class crocoddyl::CoPSupportTpl< _Scalar >

This class encapsulates a center of pressure support of a 6d contact.

A CoP support defines a rectangular region that characterizes feasible CoP position.

/sa FrictionConeTpl, WrenchConeTpl

Definition at line 26 of file cop-support.hpp.

Member Typedef Documentation

◆ MathBase

template<typename _Scalar >
typedef MathBaseTpl<Scalar> MathBase

Definition at line 31 of file cop-support.hpp.

◆ Vector2s

template<typename _Scalar >
typedef MathBase::Vector2s Vector2s

Definition at line 32 of file cop-support.hpp.

◆ Vector3s

template<typename _Scalar >
typedef MathBase::Vector3s Vector3s

Definition at line 33 of file cop-support.hpp.

◆ Vector4s

template<typename _Scalar >
typedef MathBase::Vector4s Vector4s

Definition at line 34 of file cop-support.hpp.

◆ Matrix3s

template<typename _Scalar >
typedef MathBase::Matrix3s Matrix3s

Definition at line 35 of file cop-support.hpp.

◆ Matrix46s

template<typename _Scalar >
typedef MathBase::Matrix46s Matrix46s

Definition at line 36 of file cop-support.hpp.

◆ Quaternions

template<typename _Scalar >
typedef MathBase::Quaternions Quaternions

Definition at line 37 of file cop-support.hpp.

Constructor & Destructor Documentation

◆ CoPSupportTpl() [1/3]

template<typename _Scalar >
CoPSupportTpl ( const Matrix3s &  R,
const Vector2s &  box 
)

Initialize the center of pressure support.

Parameters
[in]RRotation matrix that defines the support orientation w.r.t. the inertial frame
[in]boxDimension of the foot surface dim = (length, width)

◆ CoPSupportTpl() [2/3]

template<typename _Scalar >
CoPSupportTpl ( const WrenchConeTpl< Scalar > &  support)

Initialize the center of pressure support.

Parameters
[in]supportCenter of pressure support

◆ CoPSupportTpl() [3/3]

template<typename _Scalar >
CoPSupportTpl ( const CoPSupportTpl< Scalar > &  support)

Initialize the center of pressure support.

Parameters
[in]supportCenter of pressure support

Member Function Documentation

◆ update()

template<typename _Scalar >
void update ( )

Update the matrix of center of pressure inequalities in the world frame.

This matrix-vector pair describes the center of pressure model as follow: \( -ub \leq A \times w \leq -lb \), where wrench, \( w \), is expressed in the inertial frame located at the center of the rectangular foot contact area (length, width) with axes parallel to those of the world frame.

◆ set_R()

template<typename _Scalar >
void set_R ( const Matrix3s &  R)

Modify the rotation matrix that defines the support orientation w.r.t. the inertial frame.

Note that you need to run update for updating the inequality matrix and bounds.

◆ set_box()

template<typename _Scalar >
void set_box ( const Vector2s &  box)

Modify dimension of the center of pressure support (length, width)

Note that you need to run update for updating the inequality matrix and bounds.

Member Data Documentation

◆ Scalar

template<typename _Scalar >
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar

Definition at line 30 of file cop-support.hpp.


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