class
#include <BipedalLocomotion/Math/CARE.h>
CARE Computes the unique stabilizing solution S to the continuous-time algebraic equation.
Constructors, destructors, conversion operators
Public functions
-
auto initialize(std::weak_ptr<ParametersHandler::
IParametersHandler> handler) -> bool - Initialize the continuous algebraic riccati equation solver.
- auto setMatrices(Eigen::Ref<const Eigen::MatrixXd> A, Eigen::Ref<const Eigen::MatrixXd> B, Eigen::Ref<const Eigen::MatrixXd> Q, Eigen::Ref<const Eigen::MatrixXd> R) -> bool
- Initialize the matrices.
- auto solve() -> bool
- Run the algorithm to compute the unique stabilizing solution of the continuous algebriac Riccati equation.
- auto getSolution() const -> Eigen::Ref<const Eigen::MatrixXd>
- Get the solution.
Function documentation
bool BipedalLocomotion:: Math:: CARE:: initialize(std::weak_ptr<ParametersHandler:: IParametersHandler> handler)
Initialize the continuous algebraic riccati equation solver.
Parameters | |
---|---|
handler | pointer to the parameter handler. |
Returns | true in case of success/false otherwise. |
bool BipedalLocomotion:: Math:: CARE:: setMatrices(Eigen::Ref<const Eigen::MatrixXd> A,
Eigen::Ref<const Eigen::MatrixXd> B,
Eigen::Ref<const Eigen::MatrixXd> Q,
Eigen::Ref<const Eigen::MatrixXd> R)
Initialize the matrices.
Parameters | |
---|---|
A | n x n square matrix |
B | n x m matrix |
Q | n x n symmetric-square matrix |
R | m x m square positive definite matrix |
Returns | True in case of success and false otherwise. |
bool BipedalLocomotion:: Math:: CARE:: solve()
Run the algorithm to compute the unique stabilizing solution of the continuous algebriac Riccati equation.
Returns | True in case of success and false otherwise. |
---|
Eigen::Ref<const Eigen::MatrixXd> BipedalLocomotion:: Math:: CARE:: getSolution() const
Get the solution.
Returns | the solution |
---|