|
| ResidualModelContactControlGravTpl (std::shared_ptr< StateMultibody > state) |
| Initialize the contact control gravity contact residual model.
|
|
| ResidualModelContactControlGravTpl (std::shared_ptr< StateMultibody > state, const std::size_t nu) |
| Initialize the contact control gravity contact residual model.
|
|
virtual void | calc (const std::shared_ptr< ResidualDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
| Compute the residual vector for nodes that depends only on the state.
|
|
virtual void | calc (const std::shared_ptr< ResidualDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u) |
| Compute the contact control gravity contact residual.
|
|
virtual void | calcDiff (const std::shared_ptr< ResidualDataAbstract > &data, const Eigen::Ref< const VectorXs > &x) |
| Compute the Jacobian of the residual functions with respect to the state only.
|
|
virtual void | calcDiff (const std::shared_ptr< ResidualDataAbstract > &data, const Eigen::Ref< const VectorXs > &x, const Eigen::Ref< const VectorXs > &u) |
| Compute the Jacobians of the contact control gravity contact residual.
|
|
virtual std::shared_ptr< ResidualDataAbstract > | createData (DataCollectorAbstract *const data) |
| Create the contact-control-gravity residual data.
|
|
virtual void | print (std::ostream &os) const |
| Print relevant information of the contact-control-grav residual.
|
|
| ResidualModelAbstractTpl (std::shared_ptr< StateAbstract > state, const std::size_t nr, const bool q_dependent=true, const bool v_dependent=true, const bool u_dependent=true) |
|
| ResidualModelAbstractTpl (std::shared_ptr< StateAbstract > state, const std::size_t nr, const std::size_t nu, const bool q_dependent=true, const bool v_dependent=true, const bool u_dependent=true) |
| Initialize the residual model.
|
|
virtual void | calcCostDiff (const std::shared_ptr< CostDataAbstract > &cdata, const std::shared_ptr< ResidualDataAbstract > &rdata, const std::shared_ptr< ActivationDataAbstract > &adata, const bool update_u=true) |
| Compute the derivative of the cost function.
|
|
std::size_t | get_nr () const |
| Return the dimension of the residual vector.
|
|
std::size_t | get_nu () const |
| Return the dimension of the control input.
|
|
bool | get_q_dependent () const |
| Return true if the residual function depends on q.
|
|
const std::shared_ptr< StateAbstract > & | get_state () const |
| Return the state.
|
|
bool | get_u_dependent () const |
| Return true if the residual function depends on u.
|
|
bool | get_v_dependent () const |
| Return true if the residual function depends on v.
|
|
template<typename _Scalar>
class crocoddyl::ResidualModelContactControlGravTpl< _Scalar >
Control gravity residual under contact.
This residual function is defined as \(\mathbf{r}=\mathbf{u}-(\mathbf{g}(\mathbf{q}) - \sum
\mathbf{J}_c(\mathbf{q})^{\top} \mathbf{f}_c)\), where \(\mathbf{u}\in~\mathbb{R}^{nu}\) is the current control input, \(\mathbf{J}_c(\mathbf{q})\) is the contact Jacobians, \(\mathbf{f}_c\) contains the contact forces, \(\mathbf{g}(\mathbf{q})\) is the gravity torque corresponding to the current configuration, \(\mathbf{q}\in~\mathbb{R}^{nq}\) is the current position joints input. Note that the dimension of the residual vector is obtained from state->get_nv()
.
As described in ResidualModelAbstractTpl()
, the residual value and its Jacobians are calculated by calc()
and calcDiff()
, respectively.
- See also
ResidualModelAbstractTpl
, calc()
, calcDiff()
, createData()
Definition at line 40 of file contact-control-gravity.hpp.
template<typename _Scalar >
virtual void calcDiff |
( |
const std::shared_ptr< ResidualDataAbstract > & |
data, |
|
|
const Eigen::Ref< const VectorXs > & |
x |
|
) |
| |
|
virtual |
Compute the Jacobian of the residual functions with respect to the state only.
It updates the Jacobian of the residual function based on the state only (i.e., it ignores the contact forces). This function is used in the terminal nodes of an optimal control problem.
- Parameters
-
[in] | data | Residual data |
[in] | x | State point \(\mathbf{x}\in\mathbb{R}^{ndx}\) |
Reimplemented from ResidualModelAbstractTpl< _Scalar >.