Public Types | |
typedef ContactModelAbstractTpl< Scalar > | Base |
typedef ContactDataAbstractTpl< Scalar > | ContactDataAbstract |
typedef ContactDataNumDiffTpl< Scalar > | Data |
typedef MathBaseTpl< Scalar > | MathBase |
typedef boost::function< void(const VectorXs &, const VectorXs &)> | ReevaluationFunction |
typedef MathBaseTpl< Scalar >::VectorXs | VectorXs |
![]() | |
typedef ContactDataAbstractTpl< Scalar > | ContactDataAbstract |
typedef MathBaseTpl< Scalar > | MathBase |
typedef MathBase::MatrixXs | MatrixXs |
typedef StateMultibodyTpl< Scalar > | StateMultibody |
typedef MathBase::VectorXs | VectorXs |
Public Member Functions | |
ContactModelNumDiffTpl (const boost::shared_ptr< Base > &model) | |
Construct a new ContactModelNumDiff object from a ContactModelAbstract. More... | |
virtual | ~ContactModelNumDiffTpl () |
Default destructor of the ContactModelNumDiff object. | |
void | calc (const boost::shared_ptr< ContactDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
void | calcDiff (const boost::shared_ptr< ContactDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
boost::shared_ptr< ContactDataAbstract > | createData (pinocchio::DataTpl< Scalar > *const data) |
Create a Data object. More... | |
const Scalar | get_disturbance () const |
Get the disturbance_ object. More... | |
const boost::shared_ptr< Base > & | get_model () const |
Get the model_ object. More... | |
void | set_disturbance (const Scalar disturbance) |
Set the disturbance_ object. More... | |
void | set_reevals (const std::vector< ReevaluationFunction > &reevals) |
Register functions that take a pinocchio model, a pinocchio data, a state and a control. The updated data is used to evaluate of the gradient and hessian. More... | |
void | updateForce (const boost::shared_ptr< ContactDataAbstract > &data, const VectorXs &force) |
![]() | |
ContactModelAbstractTpl (boost::shared_ptr< StateMultibody > state, const std::size_t nc) | |
ContactModelAbstractTpl (boost::shared_ptr< StateMultibody > state, const std::size_t nc, const std::size_t nu) | |
virtual void | calc (const boost::shared_ptr< ContactDataAbstract > &data, const Eigen::Ref< const VectorXs > &x)=0 |
virtual void | calcDiff (const boost::shared_ptr< ContactDataAbstract > &data, const Eigen::Ref< const VectorXs > &x)=0 |
virtual boost::shared_ptr< ContactDataAbstract > | createData (pinocchio::DataTpl< Scalar > *const data) |
pinocchio::FrameIndex | get_id () const |
Return the reference frame id. | |
std::size_t | get_nc () const |
std::size_t | get_nu () const |
const boost::shared_ptr< StateMultibody > & | get_state () const |
virtual void | print (std::ostream &os) const |
Print relevant information of the contact model. More... | |
void | set_id (const pinocchio::FrameIndex id) |
Modify the reference frame id. | |
void | setZeroForce (const boost::shared_ptr< ContactDataAbstract > &data) const |
void | setZeroForceDiff (const boost::shared_ptr< ContactDataAbstract > &data) const |
virtual void | updateForce (const boost::shared_ptr< ContactDataAbstract > &data, const VectorXs &force)=0 |
void | updateForceDiff (const boost::shared_ptr< ContactDataAbstract > &data, const MatrixXs &df_dx, const MatrixXs &df_du) const |
Public Attributes | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
![]() | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
Protected Attributes | |
Scalar | disturbance_ |
Numerical disturbance used in the numerical differentiation. More... | |
boost::shared_ptr< Base > | model_ |
Model of the Contact. More... | |
std::size_t | nc_ |
std::size_t | nu_ |
std::vector< ReevaluationFunction > | reevals_ |
Functions that needs execution before calc or calcDiff. More... | |
boost::shared_ptr< StateMultibody > | state_ |
![]() | |
pinocchio::FrameIndex | id_ |
Reference frame id of the contact. More... | |
std::size_t | nc_ |
std::size_t | nu_ |
boost::shared_ptr< StateMultibody > | state_ |
Definition at line 19 of file contact.hpp.
typedef ContactDataAbstractTpl<Scalar> ContactDataAbstract |
Definition at line 24 of file contact.hpp.
typedef ContactModelAbstractTpl<Scalar> Base |
Definition at line 25 of file contact.hpp.
typedef ContactDataNumDiffTpl<Scalar> Data |
Definition at line 26 of file contact.hpp.
typedef MathBaseTpl<Scalar> MathBase |
Definition at line 27 of file contact.hpp.
typedef MathBaseTpl<Scalar>::VectorXs VectorXs |
Definition at line 28 of file contact.hpp.
typedef boost::function<void(const VectorXs&, const VectorXs&)> ReevaluationFunction |
Definition at line 29 of file contact.hpp.
|
explicit |
Construct a new ContactModelNumDiff object from a ContactModelAbstract.
model |
void calc | ( | const boost::shared_ptr< ContactDataAbstract > & | data, |
const Eigen::Ref< const VectorXs > & | x | ||
) |
void calcDiff | ( | const boost::shared_ptr< ContactDataAbstract > & | data, |
const Eigen::Ref< const VectorXs > & | x | ||
) |
void updateForce | ( | const boost::shared_ptr< ContactDataAbstract > & | data, |
const VectorXs & | force | ||
) |
|
virtual |
Create a Data object.
data | is the Pinocchio data |
Reimplemented from ContactModelAbstractTpl< _Scalar >.
const boost::shared_ptr< Base > & get_model | ( | ) | const |
Get the model_ object.
const Scalar get_disturbance | ( | ) | const |
Get the disturbance_ object.
void set_disturbance | ( | const Scalar | disturbance | ) |
Set the disturbance_ object.
disturbance | is the value used to find the numerical derivative |
void set_reevals | ( | const std::vector< ReevaluationFunction > & | reevals | ) |
Register functions that take a pinocchio model, a pinocchio data, a state and a control. The updated data is used to evaluate of the gradient and hessian.
reevals | are the registered functions. |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar |
Definition at line 23 of file contact.hpp.
|
protected |
Model of the Contact.
Definition at line 101 of file contact.hpp.
|
protected |
Numerical disturbance used in the numerical differentiation.
Definition at line 104 of file contact.hpp.
|
protected |
Functions that needs execution before calc or calcDiff.
Definition at line 107 of file contact.hpp.
|
protected |
Definition at line 75 of file contact-base.hpp.
|
protected |
Definition at line 76 of file contact-base.hpp.
|
protected |
Definition at line 74 of file contact-base.hpp.