|
akreon-control
Optimal and robust control and state estimation in C++26.
|
H2 Polytopic State Observer. More...
#include <h2_polytopic_state_observer.hpp>
Public Types | |
| using | Model = linalg::remove_cvref_t< Plant > |
| extracting alias and types | |
| using | T = plant_type_t< Model > |
| using | VertexObserver = H2StateObserver< Model > |
| using | QMat = typename VertexObserver::QMat |
| using | WMat = typename VertexObserver::WMat |
| using | LMat = typename VertexObserver::LMat |
| using | ZMat = typename VertexObserver::ZMat |
| using | DecVarSpace = typename VertexObserver::DecVarSpace |
| using | Polytope = linalg::Vector< Plant, N > |
Public Member Functions | |
| template<convex::AtomLike DecVar> | |
| constexpr auto | operator() (const Polytope &poly, const DecVar &Z_hat, T margin=1e-6) const |
| operator overload to form H2 polytopic state observer | |
| template<convex::AtomLike DecVar> | |
| constexpr auto | apply (const Polytope &poly, const DecVar &Z_hat, T margin=1e-6) const |
| apply | |
| template<convex::AtomLike DecVar> | |
| constexpr auto | objective (const DecVar &Z_hat) const |
| objective | |
| constexpr auto | L (const QMat &Q, const WMat &W) const |
| L (observer gain) | |
Static Public Attributes | |
| static constexpr std::size_t | StateDim = VertexObserver::StateDim |
| static constexpr std::size_t | ExogenousDim = VertexObserver::ExogenousDim |
| static constexpr std::size_t | MeasurementDim = VertexObserver::MeasurementDim |
| static constexpr std::size_t | PerformanceDim = VertexObserver::PerformanceDim |
| static constexpr std::size_t | QDim = VertexObserver::QDim |
| static constexpr std::size_t | WDim = VertexObserver::WDim |
| static constexpr std::size_t | ZDim = VertexObserver::ZDim |
| static constexpr std::size_t | DecVarDim = VertexObserver::DecVarDim |
H2 Polytopic State Observer.
Uses a common H2 state-observer decision variable z = [svec(Q); vec(W); svec(Z)]
across every plant vertex and intersects each vertex H2 certificate: Q : observability Gramian W : lifted observer product, W = Q L Z : shared H2 epigraph block
Definition at line 27 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::DecVarSpace = typename VertexObserver::DecVarSpace |
Definition at line 46 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::LMat = typename VertexObserver::LMat |
Definition at line 44 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::Model = linalg::remove_cvref_t<Plant> |
extracting alias and types
Definition at line 29 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::Polytope = linalg::Vector<Plant, N> |
Definition at line 47 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::QMat = typename VertexObserver::QMat |
Definition at line 42 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::T = plant_type_t<Model> |
Definition at line 30 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::VertexObserver = H2StateObserver<Model> |
Definition at line 31 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::WMat = typename VertexObserver::WMat |
Definition at line 43 of file h2_polytopic_state_observer.hpp.
| using control::H2PolytopicStateObserver< Plant, N >::ZMat = typename VertexObserver::ZMat |
Definition at line 45 of file h2_polytopic_state_observer.hpp.
|
inlineconstexpr |
apply
| poly | (Polytope of plant models) |
| Z_hat | (dec var) |
| margin | (for PD) |
Definition at line 74 of file h2_polytopic_state_observer.hpp.
References control::is_continuous_v.
Referenced by control::H2PolytopicStateObserver< Plant, N >::operator()().
|
inlineconstexpr |
L (observer gain)
| Q | (Observability Gramian) |
| W | (Lifted convex object) |
Definition at line 116 of file h2_polytopic_state_observer.hpp.
References control::is_continuous_v.
|
inlineconstexpr |
objective
| Z_hat | (dec var) |
Definition at line 104 of file h2_polytopic_state_observer.hpp.
References control::is_continuous_v.
|
inlineconstexpr |
operator overload to form H2 polytopic state observer
| poly | (Polytope of plant models) |
| Z_hat | (dec var) |
| margin | (for PD) |
Definition at line 59 of file h2_polytopic_state_observer.hpp.
References control::H2PolytopicStateObserver< Plant, N >::apply(), and control::is_continuous_v.
|
staticconstexpr |
Definition at line 40 of file h2_polytopic_state_observer.hpp.
|
staticconstexpr |
Definition at line 34 of file h2_polytopic_state_observer.hpp.
|
staticconstexpr |
Definition at line 35 of file h2_polytopic_state_observer.hpp.
|
staticconstexpr |
Definition at line 36 of file h2_polytopic_state_observer.hpp.
|
staticconstexpr |
Definition at line 37 of file h2_polytopic_state_observer.hpp.
|
staticconstexpr |
Definition at line 33 of file h2_polytopic_state_observer.hpp.
|
staticconstexpr |
Definition at line 38 of file h2_polytopic_state_observer.hpp.
|
staticconstexpr |
Definition at line 39 of file h2_polytopic_state_observer.hpp.