1#ifndef ROBOTOC_STO_POLICY_HPP_
2#define ROBOTOC_STO_POLICY_HPP_
23 :
dtsdx(Eigen::VectorXd::
Zero(2*robot.dimv())),
86 if (!
dtsdx.isApprox(other.dtsdx))
return false;
87 Eigen::Vector2d vec, vec_other;
89 vec_other << other.dtsdts, other.dts0;
90 if (!vec.isApprox(vec_other))
return false;
Dynamics and kinematics model of robots. Wraps pinocchio::Model and pinocchio::Data....
Definition: robot.hpp:32
The state feedback and feedforward policy of the switching time optimization (STO).
Definition: sto_policy.hpp:16
STOPolicy & operator=(const STOPolicy &)=default
Default copy operator.
bool isApprox(const STOPolicy &other) const
Checks the equivalence of two STOPolicy.
Definition: sto_policy.hpp:85
STOPolicy(STOPolicy &&) noexcept=default
Default move constructor.
STOPolicy(const STOPolicy &)=default
Default copy constructor.
STOPolicy()
Default constructor.
Definition: sto_policy.hpp:31
double dts0
Feedforward term of the STO policy.
Definition: sto_policy.hpp:78
Eigen::VectorXd dtsdx
Feedback gain of the STO policy, i.e. the sensitivity w.r.t. the state. Size is 2 * Robot::dimv().
Definition: sto_policy.hpp:67
double dtsdts
Feedback gain of the STO policy, i.e. the sensitivity w.r.t. the previous switching time.
Definition: sto_policy.hpp:73
~STOPolicy()
Destructor.
Definition: sto_policy.hpp:40
STOPolicy(const Robot &robot)
Constructs STO gain and feedforward term.
Definition: sto_policy.hpp:22
Definition: constraint_component_base.hpp:17