Riccati factorizer.
More...
#include <riccati_factorizer.hpp>
|
| RiccatiFactorizer (const Robot &robot, const double max_dts0=0.1) |
| Constructs a factorizer. More...
|
|
| RiccatiFactorizer () |
| Default constructor. More...
|
|
| ~RiccatiFactorizer () |
| Destructor. More...
|
|
| RiccatiFactorizer (const RiccatiFactorizer &)=default |
| Default copy constructor. More...
|
|
RiccatiFactorizer & | operator= (const RiccatiFactorizer &)=default |
| Default copy operator. More...
|
|
| RiccatiFactorizer (RiccatiFactorizer &&) noexcept=default |
| Default move constructor. More...
|
|
RiccatiFactorizer & | operator= (RiccatiFactorizer &&) noexcept=default |
| Default move assign operator. More...
|
|
void | setRegularization (const double max_dts0) |
| Sets the regularization on the STO. More...
|
|
void | backwardRiccatiRecursion (const SplitRiccatiFactorization &riccati_next, SplitKKTMatrix &kkt_matrix, SplitKKTResidual &kkt_residual, SplitRiccatiFactorization &riccati, LQRPolicy &lqr_policy) |
| Performs the backward Riccati recursion. More...
|
|
void | backwardRiccatiRecursion (const SplitRiccatiFactorization &riccati_next, SplitKKTMatrix &kkt_matrix, SplitKKTResidual &kkt_residual, SplitRiccatiFactorization &riccati, LQRPolicy &lqr_policy, const bool sto, const bool has_next_sto_phase) |
| Performs the backward Riccati recursion. More...
|
|
void | backwardRiccatiRecursionPhaseTransition (const SplitRiccatiFactorization &riccati, SplitRiccatiFactorization &riccati_m, STOPolicy &sto_policy, const bool has_next_sto_phase) const |
| Performs the backward Riccati recursion for the phase transition. More...
|
|
void | backwardRiccatiRecursion (const SplitRiccatiFactorization &riccati_next, SplitKKTMatrix &kkt_matrix, SplitKKTResidual &kkt_residual, SplitRiccatiFactorization &riccati) |
| Performs the backward Riccati recursion. More...
|
|
void | backwardRiccatiRecursion (const SplitRiccatiFactorization &riccati_next, SplitKKTMatrix &kkt_matrix, SplitKKTResidual &kkt_residual, SplitRiccatiFactorization &riccati, const bool sto) |
| Performs the backward Riccati recursion. More...
|
|
◆ RiccatiFactorizer() [1/4]
robotoc::RiccatiFactorizer::RiccatiFactorizer |
( |
const Robot & |
robot, |
|
|
const double |
max_dts0 = 0.1 |
|
) |
| |
Constructs a factorizer.
- Parameters
-
[in] | robot | Robot model. |
[in] | max_dts0 | Maximum magnitude of the nominal direction of the switching time. Used in a heuristic regularization on the dynamic programming recursion. Must be positive. Default is 0.1. |
◆ RiccatiFactorizer() [2/4]
robotoc::RiccatiFactorizer::RiccatiFactorizer |
( |
| ) |
|
◆ ~RiccatiFactorizer()
robotoc::RiccatiFactorizer::~RiccatiFactorizer |
( |
| ) |
|
◆ RiccatiFactorizer() [3/4]
Default copy constructor.
◆ RiccatiFactorizer() [4/4]
Default move constructor.
◆ backwardRiccatiRecursion() [1/4]
Performs the backward Riccati recursion.
- Parameters
-
[in] | riccati_next | Riccati factorization of the next stage. |
[in,out] | kkt_matrix | Split KKT matrix of this impact stage. |
[in,out] | kkt_residual | Split KKT residual of this impact stage. |
[in,out] | riccati | Riccati factorization of this impact stage. |
◆ backwardRiccatiRecursion() [2/4]
Performs the backward Riccati recursion.
- Parameters
-
[in] | riccati_next | Riccati factorization of the next stage. |
[in,out] | kkt_matrix | Split KKT matrix of this impact stage. |
[in,out] | kkt_residual | Split KKT residual of this impact stage. |
[in,out] | riccati | Riccati factorization of this impact stage. |
[in] | sto | If true, the STO sensitivities are also considered. |
◆ backwardRiccatiRecursion() [3/4]
Performs the backward Riccati recursion.
- Parameters
-
[in] | riccati_next | Riccati factorization of the next stage. |
[in,out] | kkt_matrix | Split KKT matrix of this stage. |
[in,out] | kkt_residual | Split KKT residual of this stage. |
[in,out] | riccati | Riccati factorization of this stage. |
[in,out] | lqr_policy | LQR policy of this stage. |
◆ backwardRiccatiRecursion() [4/4]
Performs the backward Riccati recursion.
- Parameters
-
[in] | riccati_next | Riccati factorization of the next stage. |
[in,out] | kkt_matrix | Split KKT matrix of this stage. |
[in,out] | kkt_residual | Split KKT residual of this stage. |
[in,out] | riccati | Riccati factorization of this stage. |
[in,out] | lqr_policy | LQR policy of this stage. |
[in] | sto | If true, the STO sensitivities are also considered. |
[in] | has_next_sto_phase | Flag for wheather this phase has the next phase involving the STO problem. |
◆ backwardRiccatiRecursionPhaseTransition()
Performs the backward Riccati recursion for the phase transition.
- Parameters
-
[in] | riccati | Riccati factorization of this stage. |
[in,out] | riccati_m | Data for modified Riccati factorization. |
[in,out] | sto_policy | STO policy. |
[in] | has_next_sto_phase | Flag for wheather this phase has the next phase involving the STO problem. |
◆ operator=() [1/2]
◆ operator=() [2/2]
Default move assign operator.
◆ setRegularization()
void robotoc::RiccatiFactorizer::setRegularization |
( |
const double |
max_dts0 | ) |
|
Sets the regularization on the STO.
- Parameters
-
[in] | max_dts0 | Maximum magnitude of the nominal direction of the switching time. Used in a heuristic regularization on the dynamic programming recursion. Must be positive. |
The documentation for this class was generated from the following file: