dkpy.HinfSynSlicot
- class dkpy.HinfSynSlicot
Bases:
ControllerSynthesisH-infinity synthesis using SLICOT’s Riccati equation method.
Examples
H-infinity controller synthesis
>>> P, n_y, n_u = example_scherer1997_p907 >>> K, N, gamma, info = dkpy.HinfSynSlicot().synthesize(P, n_y, n_u) >>> gamma 9.51
- __init__()
Instantiate
HinfSynSlicot.
Methods
__init__()Instantiate
HinfSynSlicot.synthesize(P, n_y, n_u)Synthesize controller.
- synthesize(P, n_y, n_u)
Synthesize controller.
- Parameters:
P (control.StateSpace) – Generalized plant, with
yanduas last outputs and inputs respectively.n_y (int) – Number of measurements (controller inputs).
n_u (int) – Number of controller outputs.
- Returns:
Controller, closed-loop system, objective function value, solution information. If a controller cannot by synthesized, the first three elements of the tuple are
None, but solution information is still returned.- Return type:
Tuple[control.StateSpace, control.StateSpace, float, Dict[str, Any]]
- Raises:
ValueError – If the solver specified is not recognized by CVXPY.
ValueError – If the generalized plant is not continuous-time (i.e., if
p.dt != 0).