Cost penalizing distance between two frames r=||f1.translation-f2.translation||. More...
#include <sobec/crocomplements/residual-feet-collision.hpp>
Public Types | |
typedef MathBaseTpl< Scalar > | MathBase |
typedef ResidualModelAbstractTpl< Scalar > | Base |
typedef ResidualDataFeetCollisionTpl< Scalar > | Data |
typedef StateMultibodyTpl< Scalar > | StateMultibody |
typedef ResidualDataAbstractTpl< Scalar > | ResidualDataAbstract |
typedef DataCollectorAbstractTpl< Scalar > | DataCollectorAbstract |
typedef MathBase::VectorXs | VectorXs |
Public Member Functions | |
ResidualModelFeetCollisionTpl (boost::shared_ptr< StateMultibody > state, const pinocchio::FrameIndex frame_id1, const pinocchio::FrameIndex frame_id2, const std::size_t nu) | |
Initialize the residual model. More... | |
ResidualModelFeetCollisionTpl (boost::shared_ptr< StateMultibody > state, const pinocchio::FrameIndex frame_id1, const pinocchio::FrameIndex frame_id2) | |
Initialize the residual model. More... | |
virtual | ~ResidualModelFeetCollisionTpl () |
virtual void | calc (const boost::shared_ptr< ResidualDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u) |
Compute the residual. More... | |
virtual void | calcDiff (const boost::shared_ptr< ResidualDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u) |
Compute the derivatives of the CoM velocity residual. More... | |
virtual boost::shared_ptr< ResidualDataAbstract > | createData (DataCollectorAbstract *const data) |
const pinocchio::FrameIndex & | get_frame_id1 () const |
Return the first frame index in the collision pair. More... | |
const pinocchio::FrameIndex & | get_frame_id2 () const |
Return the second frame index in the collision pair. More... | |
void | set_frame_id1 (const pinocchio::FrameIndex &fid1) |
Set the first frame index in the collision pair. More... | |
void | set_frame_id2 (const pinocchio::FrameIndex &fid2) |
Set the second frame index in the collision pair. More... | |
Public Attributes | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
Cost penalizing distance between two frames r=||f1.translation-f2.translation||.
ResidualModelAbstractTpl
, calc()
, calcDiff()
, createData()
typedef ResidualModelAbstractTpl<Scalar> sobec::ResidualModelFeetCollisionTpl< _Scalar >::Base |
typedef ResidualDataFeetCollisionTpl<Scalar> sobec::ResidualModelFeetCollisionTpl< _Scalar >::Data |
typedef DataCollectorAbstractTpl<Scalar> sobec::ResidualModelFeetCollisionTpl< _Scalar >::DataCollectorAbstract |
typedef MathBaseTpl<Scalar> sobec::ResidualModelFeetCollisionTpl< _Scalar >::MathBase |
typedef ResidualDataAbstractTpl<Scalar> sobec::ResidualModelFeetCollisionTpl< _Scalar >::ResidualDataAbstract |
typedef StateMultibodyTpl<Scalar> sobec::ResidualModelFeetCollisionTpl< _Scalar >::StateMultibody |
typedef MathBase::VectorXs sobec::ResidualModelFeetCollisionTpl< _Scalar >::VectorXs |
sobec::ResidualModelFeetCollisionTpl< Scalar >::ResidualModelFeetCollisionTpl | ( | boost::shared_ptr< StateMultibody > | state, |
const pinocchio::FrameIndex | frame_id1, | ||
const pinocchio::FrameIndex | frame_id2, | ||
const std::size_t | nu | ||
) |
Initialize the residual model.
[in] | state | State of the multibody system |
[in] | frame_id1 | ID of the first frame in the collision pair |
[in] | frame_id2 | ID of the second frame in the collision pair and velocity |
[in] | nu | Dimension of the control vector |
sobec::ResidualModelFeetCollisionTpl< Scalar >::ResidualModelFeetCollisionTpl | ( | boost::shared_ptr< StateMultibody > | state, |
const pinocchio::FrameIndex | frame_id1, | ||
const pinocchio::FrameIndex | frame_id2 | ||
) |
Initialize the residual model.
The default nu
value is obtained from StateAbstractTpl::get_nv()
.
[in] | state | State of the multibody system |
[in] | frame_id1 | ID of the first frame in the collision pair |
[in] | frame_id2 | ID of the second frame in the collision pair |
|
virtual |
|
virtual |
Compute the residual.
[in] | data | CoM velocity residual data |
[in] | x | State point \(\mathbf{x}\in\mathbb{R}^{ndx}\) |
[in] | u | Control input \(\mathbf{u}\in\mathbb{R}^{nu}\) |
|
virtual |
Compute the derivatives of the CoM velocity residual.
[in] | data | CoM velocity residual data |
[in] | x | State point \(\mathbf{x}\in\mathbb{R}^{ndx}\) |
[in] | u | Control input \(\mathbf{u}\in\mathbb{R}^{nu}\) |
|
virtual |
const pinocchio::FrameIndex & sobec::ResidualModelFeetCollisionTpl< Scalar >::get_frame_id1 |
Return the first frame index in the collision pair.
const pinocchio::FrameIndex & sobec::ResidualModelFeetCollisionTpl< Scalar >::get_frame_id2 |
Return the second frame index in the collision pair.
void sobec::ResidualModelFeetCollisionTpl< Scalar >::set_frame_id1 | ( | const pinocchio::FrameIndex & | fid1 | ) |
Set the first frame index in the collision pair.
void sobec::ResidualModelFeetCollisionTpl< Scalar >::set_frame_id2 | ( | const pinocchio::FrameIndex & | fid2 | ) |
Set the second frame index in the collision pair.
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar sobec::ResidualModelFeetCollisionTpl< _Scalar >::Scalar |