of states as P. The LTI system P is partitioned where inputs to B1 are the disturbances, inputs to B2 are the control inputs, output of C1 are the errors to be kept small, and outputs of C2 are the output measurements provided to the controller. B2 has column size (NCON) and C2 has row size (NMEAS).
If P is constructed with mktito, you can omit NMEAS and NCON from the arguments.
The closed-loop system is returned in CL and the achieved H2 cost γ in GAM. INFO is a struct array that returns additional information about the design.
H2 control system CL= lft(P,K)=.
LTI closed-loop system
|GAM = norm(CL)|
H2 optimal cost γ =
Additional output information
Additional output — structure array INFO containing possible additional information depending on METHOD)
Norms of four different quantities, full information control cost (FI), output estimation cost (OEF), direct feedback cost (DFL) and full control cost (FC). NORMS = [FI OEF DFL FC];
Full-information gain matrix (constant feedback)
Full-information closed-loop system GFI=ss(A-B2*KFI,B1,C1-D12*KFI,D11)
X Hamiltonian matrix (state-feedback)
Y Hamiltonian matrix (Kalman filter)
Example 1: Stabilize 4-by-5 unstable plant with three states, NMEAS=2, NCON=2.
rng(0,'twister'); P = rss(3,4,5)'; [K,CL,GAM] = h2syn(P,2,1); open_loop_poles = pole(P) closed_loop_poles = pole(CL)
open_loop_poles = 0.2593 15.9497 20.7994 closed_loop_poles = -26.8951 -22.4817 -20.6965 -17.6041 -0.8694 -2.6697
Example 2: Mixed-Sensitivity H2 loop-shaping. Here the goal is to shape the sigma plots of sensitivity S: = (I + GK)–1 and complementary sensitivity T: = GK (I+GK)–1, by choosing a stabilizing K the minimizes the H2 norm of
s=zpk('s'); G=10*(s-1)/(s+1)^2; W1=0.1*(s+1000)/(100*s+1); W2=0.1; W3=; P=ss(G,W1,W2,W3); [K,CL,GAM]=h2syn(P); L=G*K; S=inv(1+L); T=1-S; sigma(L,'k-.',S,'r',T,'g')
(A, B2, C2) must be stabilizable and detectable.
D12 must have full column rank and D21 must have full row rank
The H2 optimal control theory has its roots in the frequency domain interpretation the cost function associated with time-domain state-space LQG control theory . The equations and corresponding nomenclature used here are taken from the Doyle et al., 1989 -.
h2syn solves the H2 optimal control problem by observing that it is equivalent to a conventional Linear-Quadratic Gaussian (LQG) optimal control problem. For simplicity, we shall describe the details of algorithm only for the continuous-time case, in which case the cost function JLQG satisfies
with plant noise u1 channel of intensity I, passing through the matrix [B1;0;D12] to produce equivalent white correlated with plant ξ and white measurement noise θ having joint correlation function
The H2 optimal controller K(s) is thus realizable in the usual LQG manner as a full-state feedback KFI and a Kalman filter with residual gain matrix KFC.
where Y = YT≥0 solves the Kalman filter Riccati equation
where X = XT≥0 solves the state-feedback Riccati equation
The final positive-feedback H2 optimal controller has a familiar closed-form
h2syn implements the continuous optimal H2 control design computations using the formulae described in the Doyle, et al. ; for discrete-time plants, h2syn uses the same controller formula, except that the corresponding discrete time Riccati solutions (dare) are substituted for X and Y. A Hamiltonian is formed and solved via a Riccati equation. In the continuous-time case, the optimal H2-norm is infinite when the plant D11 matrix associated with the input disturbances and output errors is non-zero; in this case, the optimal H2 controller returned by h2syn is computed by first setting D11 to zero.
Optimal Cost GAM
The full information (FI) cost is given by the equation . The output estimation cost (OEF) is given by , where . The disturbance feedforward cost (DFL) is , where L2 is defined by and the full control cost (FC) is given by . X2 and Y2 are the solutions to the X and Y Riccati equations, respectively. For for continuous-time plants with zero feedthrough term (D11 = 0), and for all discrete-time plants, the optimal H2 cost γ = is
GAM =sqrt(FI^2 + OEF^2+ trace(D11*D11'));
otherwise, GAM = Inf.
 Doyle, J.C., K. Glover, P. Khargonekar, and B. Francis, "State-space solutions to standard H2 and H∞ control problems," IEEE Transactions on Automatic Control, vol. 34, no. 8, pp. 831–847, August 1989.
 Glover, K., and J.C. Doyle, "State-space formulae for all stabilizing controllers that satisfy an H∞ norm bound and relations to risk sensitivity," Systems and Control Letters, 1988. vol. 11, pp. 167–172, August 1989.