Plant augmentation for weighted mixed-sensitivity
*H*_{∞} and
*H*_{2} loop-shaping design

computes a state-space model of an augmented LTI plant
`P`

= augw(`G`

,`W1,W2,W3`

)*P*(*s*) with the weighting functions
*W*_{1}(*s*),
*W*_{2}(*s*), and
*W*_{3}(*s*) penalizing the error
signal, control signal, and output signal, respectively. `P`

is the
augmented plant of the following diagram.

This control structure is used in mixed *H*_{∞}
synthesis, which lets you design an *H*_{∞} controller
by simultaneously shaping the frequency responses for tracking and disturbance rejection,
noise reduction and robustness, and controller effort. For more information, see Mixed-Sensitivity Loop Shaping.

For

*H*_{∞}or*H*_{2}synthesis, the models`G`

and`W1,W2,W3`

must be proper. In other words, they must be bounded as $$s\to \infty $$ (for continuous-time transfer functions) or $$z\to \infty $$ (for discrete-time transfer functions). Additionally,`W1,W2,W3`

must be stable. The plant`G`

must be stabilizable and detectable. Otherwise, the resulting`P`

is not stabilizable by any controller.

`augw`

produces the augmented plant
*P*(*s*) given by:

$$P(s)=\left[\begin{array}{cc}{W}_{1}& -{W}_{1}G\\ 0& {W}_{2}\\ 0& {W}_{3}G\\ I& -G\end{array}\right]$$

The partitioning is embedded using `P = mktito(P,NY,NU)`

, which sets the
`P.InputGroup`

and `P.OutputGroup`

properties as
follows.

[r,c] = size(P); P.InputGroup = struct('U1',1:c-NU,'U2',c-NU+1:c); P.OutputGroup = struct('Y1',1:r-NY,'Y2',r-NY+1:r);