Crocoddyl
 
Loading...
Searching...
No Matches
ActuationModelFullTpl< _Scalar > Class Template Reference

Full actuation model. More...

#include <full.hpp>

Inheritance diagram for ActuationModelFullTpl< _Scalar >:
ActuationModelAbstractTpl< _Scalar >

Public Types

typedef ActuationModelAbstractTpl< Scalar > Base
 
typedef ActuationDataAbstractTpl< Scalar > Data
 
typedef MathBaseTpl< Scalar > MathBase
 
typedef MathBase::MatrixXs MatrixXs
 
typedef _Scalar Scalar
 
typedef StateAbstractTpl< Scalar > StateAbstract
 
typedef MathBase::VectorXs VectorXs
 
- Public Types inherited from ActuationModelAbstractTpl< _Scalar >
typedef ActuationDataAbstractTpl< Scalar > ActuationDataAbstract
 
typedef MathBaseTpl< Scalar > MathBase
 
typedef MathBase::MatrixXs MatrixXs
 
typedef StateAbstractTpl< Scalar > StateAbstract
 
typedef MathBase::VectorXs VectorXs
 

Public Member Functions

 ActuationModelFullTpl (std::shared_ptr< StateAbstract > state)
 Initialize the full actuation model.
 
virtual void calc (const std::shared_ptr< Data > &data, const Eigen::Ref< const VectorXs > &, const Eigen::Ref< const VectorXs > &u)
 Compute the full actuation.
 
virtual void calcDiff (const std::shared_ptr< Data > &data, const Eigen::Ref< const VectorXs > &, const Eigen::Ref< const VectorXs > &)
 Compute the Jacobians of the full actuation model.
 
virtual void commands (const std::shared_ptr< Data > &data, const Eigen::Ref< const VectorXs > &, const Eigen::Ref< const VectorXs > &tau)
 Compute the joint torque input from the generalized torques.
 
virtual std::shared_ptr< DatacreateData ()
 Create the full actuation data.
 
virtual void torqueTransform (const std::shared_ptr< Data > &data, const Eigen::Ref< const VectorXs > &, const Eigen::Ref< const VectorXs > &)
 Compute the torque transform from generalized torques to joint torque inputs.
 
- Public Member Functions inherited from ActuationModelAbstractTpl< _Scalar >
 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::shared_ptr< StateAbstractstate_
 Model of the state.
 
- Protected Attributes inherited from ActuationModelAbstractTpl< _Scalar >
std::size_t nu_
 Dimension of joint torque inputs.
 
std::shared_ptr< StateAbstractstate_
 Model of the state.
 

Additional Inherited Members

- Public Attributes inherited from ActuationModelAbstractTpl< _Scalar >
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
 

Detailed Description

template<typename _Scalar>
class crocoddyl::ActuationModelFullTpl< _Scalar >

Full actuation model.

This actuation model applies input controls for all the nv dimensions of the system.

Both actuation and Jacobians are computed analytically by calc and calcDiff, respectively.

See also
ActuationModelAbstractTpl, calc(), calcDiff(), createData()

Definition at line 30 of file full.hpp.

Member Typedef Documentation

◆ Scalar

template<typename _Scalar >
typedef _Scalar Scalar

Definition at line 32 of file full.hpp.

◆ MathBase

template<typename _Scalar >
typedef MathBaseTpl<Scalar> MathBase

Definition at line 33 of file full.hpp.

◆ Base

template<typename _Scalar >
typedef ActuationModelAbstractTpl<Scalar> Base

Definition at line 34 of file full.hpp.

◆ Data

template<typename _Scalar >
typedef ActuationDataAbstractTpl<Scalar> Data

Definition at line 35 of file full.hpp.

◆ StateAbstract

template<typename _Scalar >
typedef StateAbstractTpl<Scalar> StateAbstract

Definition at line 36 of file full.hpp.

◆ VectorXs

template<typename _Scalar >
typedef MathBase::VectorXs VectorXs

Definition at line 37 of file full.hpp.

◆ MatrixXs

template<typename _Scalar >
typedef MathBase::MatrixXs MatrixXs

Definition at line 38 of file full.hpp.

Constructor & Destructor Documentation

◆ ActuationModelFullTpl()

template<typename _Scalar >
ActuationModelFullTpl ( std::shared_ptr< StateAbstract state)
inlineexplicit

Initialize the full actuation model.

Parameters
[in]stateState of the dynamical system

Definition at line 45 of file full.hpp.

◆ ~ActuationModelFullTpl()

template<typename _Scalar >
virtual ~ActuationModelFullTpl ( )
inlinevirtual

Definition at line 47 of file full.hpp.

Member Function Documentation

◆ calc()

template<typename _Scalar >
virtual void calc ( const std::shared_ptr< Data > &  data,
const Eigen::Ref< const VectorXs > &  ,
const Eigen::Ref< const VectorXs > &  u 
)
inlinevirtual

Compute the full actuation.

Parameters
[in]dataFull actuation data
[in]xState point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
[in]uJoint torque input \(\mathbf{u}\in\mathbb{R}^{nu}\)

Implements ActuationModelAbstractTpl< _Scalar >.

Definition at line 56 of file full.hpp.

◆ calcDiff()

template<typename _Scalar >
virtual void calcDiff ( const std::shared_ptr< Data > &  data,
const Eigen::Ref< const VectorXs > &  ,
const Eigen::Ref< const VectorXs > &   
)
inlinevirtual

Compute the Jacobians of the full actuation model.

Parameters
[in]dataFull actuation data
[in]xState point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
[in]uJoint torque input \(\mathbf{u}\in\mathbb{R}^{nu}\)

Implements ActuationModelAbstractTpl< _Scalar >.

Definition at line 75 of file full.hpp.

◆ commands()

template<typename _Scalar >
virtual void commands ( const std::shared_ptr< Data > &  data,
const Eigen::Ref< const VectorXs > &  x,
const Eigen::Ref< const VectorXs > &  tau 
)
inlinevirtual

Compute the joint torque input from the generalized torques.

It stores the results in ActuationDataAbstractTpl::u.

Parameters
[in]dataActuation data
[in]xState point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
[in]tauGeneralized torques \(\mathbf{u}\in\mathbb{R}^{nv}\)

Implements ActuationModelAbstractTpl< _Scalar >.

Definition at line 90 of file full.hpp.

◆ torqueTransform()

template<typename _Scalar >
virtual void torqueTransform ( const std::shared_ptr< Data > &  data,
const Eigen::Ref< const VectorXs > &  x,
const Eigen::Ref< const VectorXs > &  u 
)
inlinevirtual

Compute the torque transform from generalized torques to joint torque inputs.

It stores the results in ActuationDataAbstractTpl::Mtau.

Parameters
[in]dataActuation data
[in]xState point \(\mathbf{x}\in\mathbb{R}^{ndx}\)
[in]tauJoint-torque inputs \(\mathbf{u}\in\mathbb{R}^{nu}\)

Reimplemented from ActuationModelAbstractTpl< _Scalar >.

Definition at line 102 of file full.hpp.

◆ createData()

template<typename _Scalar >
virtual std::shared_ptr< Data > createData ( )
inlinevirtual

Create the full actuation data.

Parameters
[in]datashared data (it should be of type DataCollectorContactTpl)
Returns
the cost data.

Reimplemented from ActuationModelAbstractTpl< _Scalar >.

Definition at line 121 of file full.hpp.

Member Data Documentation

◆ nu_

template<typename _Scalar >
std::size_t nu_
protected

Dimension of joint torque inputs.

Definition at line 172 of file actuation-base.hpp.

◆ state_

template<typename _Scalar >
std::shared_ptr<StateAbstract> state_
protected

Model of the state.

Definition at line 173 of file actuation-base.hpp.


The documentation for this class was generated from the following file: