#include <DynamicalSystem.h>
Base class of all Dynamical Systems (DS)
Definition at line 48 of file DynamicalSystem.h.
◆ DynamicalSystem()
Rcs::DynamicalSystem::DynamicalSystem |
( |
| ) |
|
|
default |
◆ ~DynamicalSystem()
virtual Rcs::DynamicalSystem::~DynamicalSystem |
( |
| ) |
|
|
virtualdefault |
◆ clone()
◆ create()
◆ getGoal()
virtual Eigen::VectorXd Rcs::DynamicalSystem::getGoal |
( |
| ) |
const |
|
pure virtual |
◆ getStateDim()
unsigned int Rcs::DynamicalSystem::getStateDim |
( |
| ) |
const |
◆ goalDistance()
double Rcs::DynamicalSystem::goalDistance |
( |
const Eigen::VectorXd & |
x_curr | ) |
const |
|
virtual |
Compute the L2 norm between the current state and the goal state.
- Parameters
-
[in] | x_curr | current system state |
- Returns
- euclidean distance to goal
Reimplemented in Rcs::DSSlice.
Definition at line 188 of file DynamicalSystem.cpp.
◆ setGoal()
virtual void Rcs::DynamicalSystem::setGoal |
( |
const Eigen::VectorXd & |
x_des | ) |
|
|
pure virtual |
Set the goal state for this dynamical system. The goal state is the system's desired equilibrium state. In the presence of repellers, this Systems without an explicit goal state do not need to override this. By default, it does othing.
- Parameters
-
[in] | x_des | desired state for the system to pursue |
Implemented in Rcs::DSSlice, Rcs::DSMassSpringDamper, Rcs::DSLinear, and Rcs::DSConst.
◆ step()
virtual void Rcs::DynamicalSystem::step |
( |
Eigen::VectorXd & |
x_dot, |
|
|
const Eigen::VectorXd & |
x, |
|
|
double |
dt |
|
) |
| const |
|
pure virtual |
Advance the dynamical system one step in time. Compute the velocity x_dot with the desired velocity in state x. For acceleration-based systems, x_dot is prefilled with the current velocity.
- Parameters
-
[in,out] | x_dot | current velocity, override with new desired velocity |
[in] | x | current state |
[in] | dt | time step size for integration |
Implemented in Rcs::DSSlice, Rcs::DSLinear, Rcs::DSConst, and Rcs::DSSecondOrder.
◆ x_dot_des
Eigen::VectorXd Rcs::DynamicalSystem::x_dot_des |
The desired task space velocity of the DS, which is equal to x_dot coming from step(). The robot will most likely not execute the commaded x_dot (e.g. due to the IK or other active DS). We store the desired task space velocity of the DS for potential using it in AMDynamicalSystemActivation or debugging.
Definition at line 100 of file DynamicalSystem.h.
The documentation for this class was generated from the following files: