|
akreon-control
Optimal and robust control and state estimation in C++26.
|
PolytopicStateFeedback. More...
#include <polytopic_state_feedback.hpp>
Public Types | |
| using | Model = linalg::remove_cvref_t< Plant > |
| using | T = plant_type_t< Model > |
| using | VertexFeedback = StateFeedback< Model > |
| using | PMat = typename VertexFeedback::PMat |
| using | YMat = typename VertexFeedback::YMat |
| using | KMat = typename VertexFeedback::KMat |
| using | FMat = typename VertexFeedback::FMat |
| using | ZSpace = typename VertexFeedback::ZSpace |
| using | Fs = typename VertexFeedback::Fs |
| using | Polytope = linalg::Vector< Plant, N > |
Public Member Functions | |
| template<convex::AtomLike ZVar> | |
| constexpr auto | operator() (const Polytope &poly, const ZVar &Z, T margin=1e-6) const |
| operator overload (form polytopic state feedback) | |
| template<convex::AtomLike ZVar> | |
| constexpr auto | apply (const Polytope &poly, const ZVar &Z, T margin=1e-6) const |
| apply (polytopic state feedback) | |
| constexpr auto | K (const PMat &P, const YMat &Y) const |
| K. | |
Static Public Attributes | |
| static constexpr std::size_t | StateDim = VertexFeedback::StateDim |
| static constexpr std::size_t | InputDim = VertexFeedback::InputDim |
| static constexpr std::size_t | PDim = VertexFeedback::PDim |
| static constexpr std::size_t | YDim = VertexFeedback::YDim |
| static constexpr std::size_t | ZDim = VertexFeedback::ZDim |
Polytopic State Feedback (PLDI) Given the LTV system xdot = A(t) x + B_u(t) u
We seek a static state feedback controller u = K x
s.t. the CL system is quadratically stable.
There exists S > 0, P = S^{-1}, and Y = K P so P A_i^T + A_i P + B_{ui} Y + Y^T B_{ui}^T < 0
This set is represented over the merged decision variable z = [ svec(P); vec(Y) ].
Definition at line 36 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::FMat = typename VertexFeedback::FMat |
Definition at line 51 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::Fs = typename VertexFeedback::Fs |
Definition at line 53 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::KMat = typename VertexFeedback::KMat |
Definition at line 50 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::Model = linalg::remove_cvref_t<Plant> |
Definition at line 37 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::PMat = typename VertexFeedback::PMat |
Definition at line 48 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::Polytope = linalg::Vector<Plant, N> |
Definition at line 54 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::T = plant_type_t<Model> |
Definition at line 39 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::VertexFeedback = StateFeedback<Model> |
Definition at line 40 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::YMat = typename VertexFeedback::YMat |
Definition at line 49 of file polytopic_state_feedback.hpp.
| using control::PolytopicStateFeedback< Plant, N >::ZSpace = typename VertexFeedback::ZSpace |
Definition at line 52 of file polytopic_state_feedback.hpp.
|
inlineconstexpr |
apply (polytopic state feedback)
Definition at line 79 of file polytopic_state_feedback.hpp.
References control::is_continuous_v.
Referenced by control::PolytopicStateFeedback< Plant, N >::operator()().
|
inlineconstexpr |
K.
K = Y P^{-1}
| P | (symmetric Lyapunov variable) |
| Y | (lifted feedback product Y = KP) |
Definition at line 114 of file polytopic_state_feedback.hpp.
References control::is_continuous_v.
|
inlineconstexpr |
operator overload (form polytopic state feedback)
Definition at line 65 of file polytopic_state_feedback.hpp.
References control::PolytopicStateFeedback< Plant, N >::apply(), and control::is_continuous_v.
|
staticconstexpr |
Definition at line 43 of file polytopic_state_feedback.hpp.
|
staticconstexpr |
Definition at line 44 of file polytopic_state_feedback.hpp.
|
staticconstexpr |
Definition at line 42 of file polytopic_state_feedback.hpp.
|
staticconstexpr |
Definition at line 45 of file polytopic_state_feedback.hpp.
|
staticconstexpr |
Definition at line 46 of file polytopic_state_feedback.hpp.