Scilab Reference Manual |
---|
h_inf — H-infinity (central) controller
[Sk,ro]=h_inf(P,r,romin,romax,nmax) [Sk,rk,ro]=h_inf(P,r,romin,romax,nmax)
P | : syslin list : continuous-time linear system (``augmented'' plant given in state-space form or in transfer form) |
r | : size of the P22 plant i.e. 2-vector [#outputs,#inputs] |
romin,romax | : a priori bounds on ro with ro=1/gama^2; (romin=0 usually) |
nmax | : integer, maximum number of iterations in the gama-iteration. |
h_inf computes H-infinity optimal controller for the continuous-time plant P.
The partition of P into four sub-plants is given through the 2-vector r which is the size of the 22 part of P.
P is given in state-space e.g. P=syslin('c',A,B,C,D) with A,B,C,D = constant matrices or P=syslin('c',H) with H a transfer matrix.
[Sk,ro]=H_inf(P,r,romin,romax,nmax) returns ro in [romin,romax] and the central controller Sk in the same representation as P.
(All calculations are made in state-space, i.e conversion to state-space is done by the function, if necessary).
Invoked with three LHS parameters,
[Sk,rk,ro]=H_inf(P,r,romin,romax,nmax) returns ro and the Parameterization of all stabilizing controllers:
a stabilizing controller K is obtained by K=lft(Sk,r,PHI) where PHI is a linear system with dimensions r' and satisfy:
H_norm(PHI) < gamma. rk (=r) is the size of the Sk22 block and ro = 1/gama^2 after nmax iterations.
Algorithm is adapted from Safonov-Limebeer. Note that P is assumed to be a continuous-time plant.
F.Delebecque INRIA (1990)
<< h_inf_st | hinf >> |