Template Class ActuationModelAbstractTpl
Defined in File actuation-base.hpp
Inheritance Relationships
Base Type
public crocoddyl::ActuationModelBase(Class ActuationModelBase)
Derived Types
public crocoddyl::ActuationModelFloatingBaseThrustersTpl< _Scalar >(Template Class ActuationModelFloatingBaseThrustersTpl)public crocoddyl::ActuationModelFloatingBaseTpl< _Scalar >(Template Class ActuationModelFloatingBaseTpl)public crocoddyl::ActuationModelFullTpl< _Scalar >(Template Class ActuationModelFullTpl)public crocoddyl::ActuationModelNumDiffTpl< _Scalar >(Template Class ActuationModelNumDiffTpl)public crocoddyl::ActuationSquashingModelTpl< _Scalar >(Template Class ActuationSquashingModelTpl)
Class Documentation
-
template<typename _Scalar>
class ActuationModelAbstractTpl : public crocoddyl::ActuationModelBase Abstract class for the actuation-mapping model.
The generalized torques \(\boldsymbol{\tau}\in\mathbb{R}^{nv}\) can by any nonlinear function of the joint-torque inputs \(\mathbf{u}\in\mathbb{R}^{nu}\), and state point \(\mathbf{x}\in\mathbb{R}^{nx}\), where
nv,nu, andndxare the number of joints, dimension of the joint torque input and state manifold, respectively. Additionally, the generalized torques are also named as the actuation signals of our system.The main computations are carried out in
calc(), andcalcDiff(), where the former computes actuation signal, and the latter computes the Jacobians of the actuation-mapping function, i.e., \(\frac{\partial\boldsymbol{\tau}}{\partial\mathbf{x}}\) and \(\frac{\partial\boldsymbol{\tau}}{\partial\mathbf{u}}\). Note thatcalcDiff()requires to runcalc()first.See also
Subclassed by crocoddyl::ActuationModelFloatingBaseThrustersTpl< _Scalar >, crocoddyl::ActuationModelFloatingBaseTpl< _Scalar >, crocoddyl::ActuationModelFullTpl< _Scalar >, crocoddyl::ActuationModelNumDiffTpl< _Scalar >, crocoddyl::ActuationSquashingModelTpl< _Scalar >
Public Types
-
typedef MathBaseTpl<Scalar> MathBase
-
typedef StateAbstractTpl<Scalar> StateAbstract
-
typedef ActuationDataAbstractTpl<Scalar> ActuationDataAbstract
Public Functions
Initialize the actuation model.
- Parameters:
state – [in] State description
nu – [in] Dimension of joint-torque input
-
virtual ~ActuationModelAbstractTpl() = default
Compute the actuation signal from the state point \(\mathbf{x}\in\mathbb{R}^{ndx}\) and joint torque inputs \(\mathbf{u}\in\mathbb{R}^{nu}\).
- Parameters:
data – [in] Actuation data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
u – [in] Joint-torque input \(\mathbf{u}\in\mathbb{R}^{nu}\)
Ignore the computation of the actuation signal.
It does not update the actuation signal as this function is used in the terminal nodes of an optimal control problem.
- Parameters:
data – [in] Actuation data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
Compute the Jacobians of the actuation function.
- Parameters:
data – [in] Actuation data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
u – [in] Joint-torque input \(\mathbf{u}\in\mathbb{R}^{nu}\)
Ignore the computation of the Jacobians of the actuation function.
It does not update the Jacobians of the actuation function as this function is used in the terminal nodes of an optimal control problem.
- Parameters:
data – [in] Actuation data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
Compute the joint torque input from the generalized torques.
It stores the results in
ActuationDataAbstractTpl::u.- Parameters:
data – [in] Actuation data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
tau – [in] Generalized torques \(\mathbf{u}\in\mathbb{R}^{nv}\)
Compute the torque transform from generalized torques to joint torque inputs.
It stores the results in
ActuationDataAbstractTpl::Mtau.- Parameters:
data – [in] Actuation data
x – [in] State point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
tau – [in] Joint-torque inputs \(\mathbf{u}\in\mathbb{R}^{nu}\)
-
virtual std::shared_ptr<ActuationDataAbstract> createData()
Create the actuation data.
- Returns:
the actuation data
-
std::size_t get_nu() const
Return the dimension of the joint-torque input.
-
const std::shared_ptr<StateAbstract> &get_state() const
Return the state.
-
virtual void print(std::ostream &os) const
Print relevant information of the residual model.
- Parameters:
os – [out] Output stream object
Public Members
- EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
Protected Functions
-
inline ActuationModelAbstractTpl()
Protected Attributes
-
std::size_t nu_
Dimension of joint torque inputs.
-
std::shared_ptr<StateAbstract> state_
Model of the state.
Friends
-
template<class Scalar>
friend std::ostream &operator<<(std::ostream &os, const ActuationModelAbstractTpl<Scalar> &model) Print information on the actuation model.
-
typedef MathBaseTpl<Scalar> MathBase