Template Class ResidualModelImpulseCoMTpl
Defined in File impulse-com.hpp
Inheritance Relationships
Base Type
public crocoddyl::ResidualModelAbstractTpl< _Scalar >(Template Class ResidualModelAbstractTpl)
Class Documentation
-
template<typename _Scalar>
class ResidualModelImpulseCoMTpl : public crocoddyl::ResidualModelAbstractTpl<_Scalar> Impulse CoM residual.
This residual function is defined as \(\mathbf{r}=\mathbf{J}_{com}*(\mathbf{v}_{next}-\mathbf{v})\), \(\mathbf{J}_{com}\in\mathbb{R}^{3\times nv}\) is the CoM Jacobian, and \(\mathbf{v}_{next},\mathbf{v}\in T_{\mathbf{q}}\mathcal{Q}\) are the generalized velocities after and before the impulse, respectively. Note that the dimension of the residual vector is 3. Furthermore, the Jacobians of the residual function are computed analytically.
As described in
ResidualModelAbstractTpl(), the residual value and its Jacobians are calculated bycalcandcalcDiff, respectively.See also
Public Types
-
typedef MathBaseTpl<Scalar> MathBase
-
typedef ResidualModelAbstractTpl<Scalar> Base
-
typedef ResidualDataImpulseCoMTpl<Scalar> Data
-
typedef StateMultibodyTpl<Scalar> StateMultibody
-
typedef ResidualDataAbstractTpl<Scalar> ResidualDataAbstract
-
typedef ActivationModelAbstractTpl<Scalar> ActivationModelAbstract
-
typedef DataCollectorAbstractTpl<Scalar> DataCollectorAbstract
Public Functions
Initialize the impulse CoM residual model.
- Parameters:
state – [in] State of the multibody system
-
virtual ~ResidualModelImpulseCoMTpl() = default
Compute the impulse CoM residual.
- Parameters:
data – [in] Impulse CoM residual data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
u – [in] Control input \(\mathbf{u}\in\mathbb{R}^{nu}\)
Compute the Jacobians of the impulse CoM residual.
- Parameters:
data – [in] Impulse CoM residual data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
u – [in] Control input \(\mathbf{u}\in\mathbb{R}^{nu}\)
-
virtual std::shared_ptr<ResidualDataAbstract> createData(DataCollectorAbstract *const data) override
Create the impulse CoM residual data.
-
template<typename NewScalar>
ResidualModelImpulseCoMTpl<NewScalar> cast() const Cast the impulse-com residual model to a different scalar type.
It is useful for operations requiring different precision or scalar types.
- Template Parameters:
NewScalar – The new scalar type to cast to.
- Returns:
ResidualModelImpulseCoMTpl<NewScalar> A residual model with the new scalar type.
-
virtual void print(std::ostream &os) const override
Print relevant information of the impulse-com residual.
- Parameters:
os – [out] Output stream object
Public Members
- EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
Protected Attributes
-
std::size_t nu_
Control dimension.
-
std::shared_ptr<StateAbstract> state_
State description.
-
bool u_dependent_
Label that indicates if the residual function depends on u
-
typedef MathBaseTpl<Scalar> MathBase