This class computes the numerical differentiation of an actuation model. More...
#include <actuation.hpp>
Public Types | |
typedef ActuationDataAbstractTpl< Scalar > | ActuationDataAbstract |
typedef ActuationModelAbstractTpl< Scalar > | Base |
typedef ActuationDataNumDiffTpl< Scalar > | Data |
typedef MathBaseTpl< Scalar > | MathBase |
typedef MathBase::MatrixXs | MatrixXs |
typedef _Scalar | Scalar |
typedef MathBase::VectorXs | VectorXs |
![]() | |
typedef ActuationDataAbstractTpl< Scalar > | ActuationDataAbstract |
typedef MathBaseTpl< Scalar > | MathBase |
typedef MathBase::MatrixXs | MatrixXs |
typedef StateAbstractTpl< Scalar > | StateAbstract |
typedef MathBase::VectorXs | VectorXs |
Public Member Functions | |
ActuationModelNumDiffTpl (std::shared_ptr< Base > model) | |
Initialize the numdiff residual model. | |
virtual | ~ActuationModelNumDiffTpl () |
Destroy the numdiff actuation model. | |
virtual 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) |
Compute the actuation signal from the state point \(\mathbf{x}\in\mathbb{R}^{ndx}\) and joint torque inputs \(\mathbf{u}\in\mathbb{R}^{nu}\). | |
virtual void | calcDiff (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
virtual void | calcDiff (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u) |
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) |
Compute the joint torque input from the generalized torques. | |
virtual std::shared_ptr< ActuationDataAbstract > | createData () |
Create the actuation data. | |
const Scalar | get_disturbance () const |
Return the disturbance constant used by the numerical differentiation routine. | |
const std::shared_ptr< Base > & | get_model () const |
Return the original actuation model. | |
void | set_disturbance (const Scalar disturbance) |
Modify the disturbance constant used by the numerical differentiation routine. | |
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. | |
![]() | |
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. | |
void | calcDiff (const std::shared_ptr< ActuationDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
Ignore the computation of the Jacobians of the actuation function. | |
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. | |
Protected Attributes | |
std::size_t | nu_ |
Dimension of joint torque inputs. | |
![]() | |
std::size_t | nu_ |
Dimension of joint torque inputs. | |
std::shared_ptr< StateAbstract > | state_ |
Model of the state. | |
Additional Inherited Members | |
![]() | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar | Scalar |
This class computes the numerical differentiation of an actuation model.
It computes the Jacobian of the residual model via numerical differentiation, i.e., \(\frac{\partial\boldsymbol{\tau}}{\partial\mathbf{x}}\) and \(\frac{\partial\boldsymbol{\tau}}{\partial\mathbf{u}}\) which denote the Jacobians of the actuation function \(\boldsymbol{\tau}(\mathbf{x},\mathbf{u})\).
ActuationModelAbstractTpl()
, calcDiff()
Definition at line 34 of file actuation.hpp.
typedef _Scalar Scalar |
Definition at line 36 of file actuation.hpp.
typedef MathBaseTpl<Scalar> MathBase |
Definition at line 37 of file actuation.hpp.
typedef ActuationModelAbstractTpl<Scalar> Base |
Definition at line 38 of file actuation.hpp.
typedef ActuationDataNumDiffTpl<Scalar> Data |
Definition at line 39 of file actuation.hpp.
typedef ActuationDataAbstractTpl<Scalar> ActuationDataAbstract |
Definition at line 40 of file actuation.hpp.
typedef MathBase::VectorXs VectorXs |
Definition at line 41 of file actuation.hpp.
typedef MathBase::MatrixXs MatrixXs |
Definition at line 42 of file actuation.hpp.
|
explicit |
Initialize the numdiff residual model.
model | Actuation model that we want to apply the numerical differentiation |
|
virtual |
Compute the actuation signal from the state point \(\mathbf{x}\in\mathbb{R}^{ndx}\) and joint torque inputs \(\mathbf{u}\in\mathbb{R}^{nu}\).
[in] | data | Actuation data |
[in] | x | State point \(\mathbf{x}\in\mathbb{R}^{ndx}\) |
[in] | u | Joint-torque input \(\mathbf{u}\in\mathbb{R}^{nu}\) |
Implements ActuationModelAbstractTpl< _Scalar >.
|
virtual |
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 \(\mathbf{x}\in\mathbb{R}^{ndx}\) |
|
virtual |
Compute the Jacobians of the actuation function.
[in] | data | Actuation data |
[in] | x | State point \(\mathbf{x}\in\mathbb{R}^{ndx}\) |
[in] | u | Joint-torque input \(\mathbf{u}\in\mathbb{R}^{nu}\) |
Implements ActuationModelAbstractTpl< _Scalar >.
|
virtual |
|
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 \(\mathbf{x}\in\mathbb{R}^{ndx}\) |
[in] | tau | Generalized torques \(\mathbf{u}\in\mathbb{R}^{nv}\) |
Implements ActuationModelAbstractTpl< _Scalar >.
|
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 \(\mathbf{x}\in\mathbb{R}^{ndx}\) |
[in] | tau | Joint-torque inputs \(\mathbf{u}\in\mathbb{R}^{nu}\) |
Reimplemented from ActuationModelAbstractTpl< _Scalar >.
|
virtual |
Create the actuation data.
Reimplemented from ActuationModelAbstractTpl< _Scalar >.
|
protected |
Dimension of joint torque inputs.
Definition at line 172 of file actuation-base.hpp.