Template Class ContactModelNumDiffTpl
Defined in File contact.hpp
Inheritance Relationships
Base Type
public crocoddyl::ContactModelAbstractTpl< _Scalar >(Template Class ContactModelAbstractTpl)
Class Documentation
-
template<typename _Scalar>
class ContactModelNumDiffTpl : public crocoddyl::ContactModelAbstractTpl<_Scalar> Public Types
-
typedef ContactDataAbstractTpl<Scalar> ContactDataAbstract
-
typedef ContactModelAbstractTpl<Scalar> Base
-
typedef ContactDataNumDiffTpl<Scalar> Data
-
typedef MathBaseTpl<Scalar> MathBase
-
typedef MathBaseTpl<Scalar>::VectorXs VectorXs
Public Functions
Construct a new ContactModelNumDiff object from a ContactModelAbstract.
- Parameters:
model –
-
virtual ~ContactModelNumDiffTpl() = default
Default destructor of the ContactModelNumDiff object.
Compute the contact Jacobian and acceleration drift.
- Parameters:
data – [in] Contact data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
u – [in] Control input \(\mathbf{u}\in\mathbb{R}^{nu}\)
Compute the derivatives of the acceleration-based contact.
- Parameters:
data – [in] Contact data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
u – [in] Control input \(\mathbf{u}\in\mathbb{R}^{nu}\)
Convert the force into a stack of spatial forces.
- Parameters:
data – [in] Contact data
force – [in] Contact force
-
virtual std::shared_ptr<ContactDataAbstract> createData(pinocchio::DataTpl<Scalar> *const data) override
Create a Data object.
- Parameters:
data – is the Pinocchio data
- Returns:
std::shared_ptr<ContactModelAbstract>
-
template<typename NewScalar>
ContactModelNumDiffTpl<NewScalar> cast() const
-
const std::shared_ptr<Base> &get_model() const
Return the acton model that we use to numerical differentiate.
-
const Scalar get_disturbance() const
Return the disturbance constant used in the numerical differentiation routine.
-
void set_disturbance(const Scalar disturbance)
Modify the disturbance constant used in the numerical differentiation routine.
-
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:
reevals – are the registered functions.
Public Members
- EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
Protected Attributes
-
Scalar e_jac_
Constant used for computing disturbances in Jacobian calculation
-
std::vector<ReevaluationFunction> reevals_
functions that need execution before calc or calcDiff
-
std::size_t nc_
-
std::size_t nu_
-
std::shared_ptr<StateMultibody> state_
-
typedef ContactDataAbstractTpl<Scalar> ContactDataAbstract