20template <
typename Scalar>
struct WrenchConeDataTpl;
22template <
typename _Scalar>
28 using Base = StageFunctionTpl<Scalar>;
30 using Data = WrenchConeDataTpl<Scalar>;
33 const double mu,
const double half_length,
34 const double half_width)
37 void evaluate(
const ConstVectorRef &,
const ConstVectorRef &u,
38 const ConstVectorRef &,
BaseData &data)
const;
41 const ConstVectorRef &,
BaseData &data)
const;
44 return allocate_shared_eigen_aligned<Data>(
this);
54template <
typename Scalar>
56 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
57 using Base = StageFunctionDataTpl<Scalar>;
66#include "aligator/modelling/centroidal/wrench-cone.hxx"
68#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
69#include "./wrench-cone.txx"
Base definitions for ternary functions.
Base struct for function data.
Class representing ternary functions .
const int nu
Control dimension.
StageFunctionDataTpl< Scalar > Data
This residual implements the wrench cone for a centroidal model with control with 6D spatial force.
Eigen::Matrix< Scalar, 17, 6 > Jtemp_
WrenchConeDataTpl(const WrenchConeResidualTpl< Scalar > *model)
void computeJacobians(const ConstVectorRef &, const ConstVectorRef &, const ConstVectorRef &, BaseData &data) const
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
WrenchConeDataTpl< Scalar > Data
typename Base::Data BaseData
shared_ptr< BaseData > createData() const
Instantiate a Data object.
WrenchConeResidualTpl(const int ndx, const int nu, const int k, const double mu, const double half_length, const double half_width)
void evaluate(const ConstVectorRef &, const ConstVectorRef &u, const ConstVectorRef &, BaseData &data) const