Abstract class for the actuation-mapping model. More...
#include <actuation-base.hpp>
Public Types | |
| typedef ActuationDataAbstractTpl< Scalar > | ActuationDataAbstract |
| typedef MathBaseTpl< Scalar > | MathBase |
| typedef MathBase::MatrixXs | MatrixXs |
| typedef StateAbstractTpl< Scalar > | StateAbstract |
| typedef MathBase::VectorXs | VectorXs |
Public Member Functions | |
| ActuationModelAbstractTpl (std::shared_ptr< StateAbstract > state, const std::size_t nu) | |
| Initialize the actuation model. | |
| void | calc (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
| Ignore the computation of the actuation signal. | |
| virtual void | calc (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u)=0 |
| Compute the actuation signal from the state point | |
| void | calcDiff (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
| Ignore the computation of the Jacobians of the actuation function. | |
| virtual void | calcDiff (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u)=0 |
| Compute the Jacobians of the actuation function. | |
| virtual void | commands (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &tau)=0 |
| Compute the joint torque input from the generalized torques. | |
| virtual std::shared_ptr< ActuationDataAbstract > | createData () |
| Create 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. | |
| const VectorXs & | get_u_lb () const |
| Return the actuation lower bound. | |
| const VectorXs & | get_u_ub () const |
| Return the actuation upper bound. | |
| virtual void | print (std::ostream &os) const |
| Print relevant information of the residual model. | |
| void | set_u_lb (const VectorXs &u_lb) |
| Modify the actuation lower bounds. | |
| void | set_u_ub (const VectorXs &u_ub) |
| Modify the actuation upper bounds. | |
| virtual void | torqueTransform (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u) |
| Compute the torque transform from generalized torques to joint torque inputs. | |
Public Attributes | |
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
Protected Attributes | |
| std::size_t | nu_ |
| Dimension of joint torque inputs. | |
| std::shared_ptr< StateAbstract > | state_ |
| Model of the state. | |
| VectorXs | u_lb_ |
| Lower actuation limits. | |
| VectorXs | u_ub_ |
| Upper actuation limits. | |
Friends | |
| template<class Scalar> | |
| std::ostream & | operator<< (std::ostream &os, const ActuationModelAbstractTpl< Scalar > &model) |
| Print information on the actuation model. | |
Abstract class for the actuation-mapping model.
The generalized torques 


The main computations are carried out in calc(), and calcDiff(), where the former computes actuation signal, and the latter computes the Jacobians of the actuation-mapping function, i.e., 

Definition at line 46 of file actuation-base.hpp.
| typedef MathBaseTpl<Scalar> MathBase |
Definition at line 51 of file actuation-base.hpp.
| typedef StateAbstractTpl<Scalar> StateAbstract |
Definition at line 52 of file actuation-base.hpp.
| typedef ActuationDataAbstractTpl<Scalar> ActuationDataAbstract |
Definition at line 53 of file actuation-base.hpp.
| typedef MathBase::VectorXs VectorXs |
Definition at line 54 of file actuation-base.hpp.
| typedef MathBase::MatrixXs MatrixXs |
Definition at line 55 of file actuation-base.hpp.
| ActuationModelAbstractTpl | ( | std::shared_ptr< StateAbstract > | state, |
| const std::size_t | nu ) |
Initialize the actuation model.
| [in] | state | State description |
| [in] | nu | Dimension of joint-torque input |
| inlineprotected |
Definition at line 197 of file actuation-base.hpp.
| pure virtual |
Compute the actuation signal from the state point 

| [in] | data | Actuation data |
| [in] | x | State point |
| [in] | u | Joint-torque input |
Implemented in ActuationModelFloatingBaseThrustersTpl< _Scalar >, ActuationModelFloatingBaseThrustersTpl< double >, ActuationModelFloatingBaseTpl< _Scalar >, ActuationModelFloatingBaseTpl< double >, ActuationModelFullTpl< _Scalar >, ActuationModelFullTpl< double >, ActuationModelNumDiffTpl< _Scalar >, ActuationModelNumDiffTpl< double >, ActuationSquashingModelTpl< _Scalar >, and ActuationSquashingModelTpl< double >.
| void calc | ( | const std::shared_ptr< ActuationDataAbstract > & | data, |
| const Eigen::Ref< const VectorXs > & | x ) |
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.
| [in] | data | Actuation data |
| [in] | x | State point |
| pure virtual |
Compute the Jacobians of the actuation function.
| [in] | data | Actuation data |
| [in] | x | State point |
| [in] | u | Joint-torque input |
Implemented in ActuationModelFloatingBaseThrustersTpl< _Scalar >, ActuationModelFloatingBaseThrustersTpl< double >, ActuationModelFloatingBaseTpl< _Scalar >, ActuationModelFloatingBaseTpl< double >, ActuationModelFullTpl< _Scalar >, ActuationModelFullTpl< double >, ActuationModelNumDiffTpl< _Scalar >, ActuationModelNumDiffTpl< double >, ActuationSquashingModelTpl< _Scalar >, and ActuationSquashingModelTpl< double >.
| void calcDiff | ( | const std::shared_ptr< ActuationDataAbstract > & | data, |
| const Eigen::Ref< const VectorXs > & | x ) |
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.
| [in] | data | Actuation data |
| [in] | x | State point |
| pure virtual |
Compute the joint torque input from the generalized torques.
It stores the results in ActuationDataAbstractTpl::u.
| [in] | data | Actuation data |
| [in] | x | State point |
| [in] | tau | Generalized torques |
Implemented in ActuationModelFloatingBaseThrustersTpl< _Scalar >, ActuationModelFloatingBaseThrustersTpl< double >, ActuationModelFloatingBaseTpl< _Scalar >, ActuationModelFloatingBaseTpl< double >, ActuationModelFullTpl< _Scalar >, ActuationModelFullTpl< double >, ActuationModelNumDiffTpl< _Scalar >, ActuationModelNumDiffTpl< double >, ActuationSquashingModelTpl< _Scalar >, and ActuationSquashingModelTpl< double >.
| virtual |
Compute the torque transform from generalized torques to joint torque inputs.
It stores the results in ActuationDataAbstractTpl::Mtau.
| [in] | data | Actuation data |
| [in] | x | State point |
| [in] | tau | Joint-torque inputs |
Reimplemented in ActuationModelFloatingBaseThrustersTpl< _Scalar >, ActuationModelFloatingBaseThrustersTpl< double >, ActuationModelFloatingBaseTpl< _Scalar >, ActuationModelFloatingBaseTpl< double >, ActuationModelFullTpl< _Scalar >, ActuationModelFullTpl< double >, ActuationModelNumDiffTpl< _Scalar >, ActuationModelNumDiffTpl< double >, ActuationSquashingModelTpl< _Scalar >, and ActuationSquashingModelTpl< double >.
| virtual |
Create the actuation data.
Reimplemented in ActuationModelFloatingBaseThrustersTpl< _Scalar >, ActuationModelFloatingBaseThrustersTpl< double >, ActuationModelFloatingBaseTpl< _Scalar >, ActuationModelFloatingBaseTpl< double >, ActuationModelFullTpl< _Scalar >, ActuationModelFullTpl< double >, ActuationModelNumDiffTpl< _Scalar >, ActuationModelNumDiffTpl< double >, ActuationSquashingModelTpl< _Scalar >, and ActuationSquashingModelTpl< double >.
| virtual |
Print relevant information of the residual model.
| [out] | os | Output stream object |
Reimplemented in ActuationModelFloatingBaseThrustersTpl< _Scalar >, ActuationModelFloatingBaseThrustersTpl< double >, ActuationModelFloatingBaseTpl< _Scalar >, ActuationModelFloatingBaseTpl< double >, ActuationModelFullTpl< _Scalar >, and ActuationModelFullTpl< double >.
| EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar |
Definition at line 50 of file actuation-base.hpp.
| protected |
Dimension of joint torque inputs.
Definition at line 193 of file actuation-base.hpp.
| protected |
Model of the state.
Definition at line 194 of file actuation-base.hpp.
| protected |
Lower actuation limits.
Definition at line 195 of file actuation-base.hpp.
| protected |
Upper actuation limits.
Definition at line 196 of file actuation-base.hpp.