crocoddyl  1.9.0
Contact RObot COntrol by Differential DYnamic programming Library (Crocoddyl)
ContactModelNumDiffTpl< _Scalar > Class Template Reference

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
 

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< ContactDataAbstractcreateData (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)
 

Public Attributes

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
 

Protected Attributes

Scalar disturbance_
 Numerical disturbance used in the numerical differentiation.
 
boost::shared_ptr< Basemodel_
 Model of the Contact.
 
std::size_t nc_
 
std::size_t nu_
 
std::vector< ReevaluationFunction > reevals_
 Functions that needs execution before calc or calcDiff.
 
boost::shared_ptr< StateMultibodystate_
 

Detailed Description

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

Definition at line 61 of file fwd.hpp.

Constructor & Destructor Documentation

◆ ContactModelNumDiffTpl()

ContactModelNumDiffTpl ( const boost::shared_ptr< Base > &  model)
explicit

Construct a new ContactModelNumDiff object from a ContactModelAbstract.

Parameters
model

Member Function Documentation

◆ calc()

void calc ( const boost::shared_ptr< ContactDataAbstract > &  data,
const Eigen::Ref< const VectorXs > &  x 
)

◆ calcDiff()

void calcDiff ( const boost::shared_ptr< ContactDataAbstract > &  data,
const Eigen::Ref< const VectorXs > &  x 
)

◆ updateForce()

void updateForce ( const boost::shared_ptr< ContactDataAbstract > &  data,
const VectorXs &  force 
)

◆ createData()

boost::shared_ptr<ContactDataAbstract> createData ( pinocchio::DataTpl< Scalar > *const  data)

Create a Data object.

Parameters
datais the Pinocchio data
Returns
boost::shared_ptr<ContactModelAbstract>

◆ get_model()

const boost::shared_ptr<Base>& get_model ( ) const

Get the model_ object.

Returns
ContactModelAbstract&

◆ get_disturbance()

const Scalar get_disturbance ( ) const

Get the disturbance_ object.

Returns
Scalar

◆ set_disturbance()

void set_disturbance ( const Scalar  disturbance)

Set the disturbance_ object.

Parameters
disturbanceis the value used to find the numerical derivative

◆ set_reevals()

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.

Parameters
reevalsare the registered functions.

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