|
robotoc
robotoc - efficient ROBOT Optimal Control solvers
|
Riccati factorizer for a time stage. More...
#include <unconstr_riccati_factorizer.hpp>
Public Member Functions | |
| UnconstrRiccatiFactorizer (const Robot &robot) | |
| Constructs a factorizer. More... | |
| UnconstrRiccatiFactorizer () | |
| Default constructor. More... | |
| ~UnconstrRiccatiFactorizer () | |
| Destructor. More... | |
| UnconstrRiccatiFactorizer (const UnconstrRiccatiFactorizer &)=default | |
| Default copy constructor. More... | |
| UnconstrRiccatiFactorizer & | operator= (const UnconstrRiccatiFactorizer &)=default |
| Default copy operator. More... | |
| UnconstrRiccatiFactorizer (UnconstrRiccatiFactorizer &&) noexcept=default | |
| Default move constructor. More... | |
| UnconstrRiccatiFactorizer & | operator= (UnconstrRiccatiFactorizer &&) noexcept=default |
| Default move assign operator. More... | |
| void | backwardRiccatiRecursion (const SplitRiccatiFactorization &riccati_next, const double dt, SplitKKTMatrix &kkt_matrix, SplitKKTResidual &kkt_residual, SplitRiccatiFactorization &riccati, LQRPolicy &lqr_policy) |
| Performs the backward Riccati recursion. More... | |
| void | forwardRiccatiRecursion (const SplitKKTResidual &kkt_residual, const double dt, const LQRPolicy &lqr_policy, SplitDirection &d, SplitDirection &d_next) const |
| Performs forward Riccati recursion and computes state direction. More... | |
Static Public Member Functions | |
| static void | computeCostateDirection (const SplitRiccatiFactorization &riccati, SplitDirection &d) |
| Computes the Newton direction of the costate vector. More... | |
Riccati factorizer for a time stage.
| robotoc::UnconstrRiccatiFactorizer::UnconstrRiccatiFactorizer | ( | const Robot & | robot | ) |
Constructs a factorizer.
| [in] | robot | Robot model. |
| robotoc::UnconstrRiccatiFactorizer::UnconstrRiccatiFactorizer | ( | ) |
Default constructor.
| robotoc::UnconstrRiccatiFactorizer::~UnconstrRiccatiFactorizer | ( | ) |
Destructor.
|
default |
Default copy constructor.
|
defaultnoexcept |
Default move constructor.
| void robotoc::UnconstrRiccatiFactorizer::backwardRiccatiRecursion | ( | const SplitRiccatiFactorization & | riccati_next, |
| const double | dt, | ||
| SplitKKTMatrix & | kkt_matrix, | ||
| SplitKKTResidual & | kkt_residual, | ||
| SplitRiccatiFactorization & | riccati, | ||
| LQRPolicy & | lqr_policy | ||
| ) |
Performs the backward Riccati recursion.
| [in] | riccati_next | Riccati factorization at the next time stage. |
| [in] | dt | Time step between the current time stage and the next |
| [in,out] | kkt_matrix | KKT matrix at the this time stage. |
| [in,out] | kkt_residual | KKT residual at the this time stage. |
| [out] | riccati | Riccati factorization at the this time stage. |
| [out] | lqr_policy | The state feedback control policy of the LQR subproblem. |
|
static |
Computes the Newton direction of the costate vector.
| [in] | riccati | Riccati factorization at the current stage. |
| [in,out] | d | Split direction of the current this time stage. |
| void robotoc::UnconstrRiccatiFactorizer::forwardRiccatiRecursion | ( | const SplitKKTResidual & | kkt_residual, |
| const double | dt, | ||
| const LQRPolicy & | lqr_policy, | ||
| SplitDirection & | d, | ||
| SplitDirection & | d_next | ||
| ) | const |
Performs forward Riccati recursion and computes state direction.
| [in] | kkt_residual | KKT residual at the current time stage. |
| [in] | dt | Time step between the current time stage and the next |
| [in] | lqr_policy | The state feedback control policy of the LQR subproblem. |
| [in,out] | d | Split direction at the current time stage. |
| [out] | d_next | Split direction at the next time stage. |
|
default |
Default copy operator.
|
defaultnoexcept |
Default move assign operator.