Robustness analysis with LTI dynamic uncertainties

The file Demo_002.m is found in IQClab’s folder demos. This demo performs a \mu– and IQC-robustness analysis for an uncertain plant that is affected by LTI dynamic uncertainties. Here it is possible to vary several inputs:

  1. The uncertainty block:
    1. One LTI dynamic 2\times 2 uncertainty block, or
    2. An LTI dynamic scalar uncertainty that is repeated twice
  2. Performance metric:
    1. Induced L_2-gain
    2. H_2-norm
    3. Robust stability test

The uncertain system is given by \Delta\star M with the open-loop LTI plant M=ss(A,B,C,D), where

A=\left(\begin{array}{cc}-2&-3\\1&1\end{array}\right), B=\left(\begin{array}{ccc}1&0&1\\0&0&0\end{array}\right), C=\left(\begin{array}{cc}1&0\\0&0\\1&0\end{array}\right), D=\left(\begin{array}{ccc}1&-2&0\\1&-1&d_{23}\\0&1&0\end{array}\right),

while:

  • d_{23}=1 for Option 3.1 and Option 3.3,
  • d_{23}=0 for Option 3.2.

On the other hand, the uncertainty block is defined by:

  • \Delta=\Delta_1 with \|\Delta_1\|_\infty<\alpha, for Option 1.1, or
  • \Delta=\Delta_2=\delta_2I_2) with \|\delta_2\|_\infty<\alpha for Option 1.2.

The demo file Demo_002.m allows to run an IQC-analysis for various values of \alpha\in[0,0.5] and within the file one can change the inputs mentioned above. For illustration purposes, the following 5 lines of code specify an IQC-analysis for the uncertain plant \Delta_1\star M, \|\Delta_1\|_\infty<\alpha for \alpha=0.2 and the H_2-norm as performance metric. In addition, the following parameters are considered:

  • Length of the basis function: 3
  • Solution check: ‘on’
  • Enforce strictness of the LMIs: \epsilon=1e-8
% Define uncertain plant
M = ss([-2,-3;1,1],[1,0,1;0,0,0],[1,0;0,0;1,0],[1,-2,0;1,-1,0;0,1,0]);

% Define uncertainty block
de = iqcdelta('de','InputChannel',[1;2], 'OutputChannel'[1;2],'StaticDynamic','D', 
'NormBounds',0.2);

% Assign IQC-multiplier to uncertainty block
de = iqcassign(de,'ultid','Length',3);

% Define performance block
pe = iqcdelta('pe','ChannelClass','P','InputChannel',3, 'OutputChannel',3,'PerfMetric','H2');

% Perform IQC-analysis
prob = iqcanalysis(M,{de,pe},'SolChk','on','eps',1e-8);

To continue, if running the IQC-analysis in Demo_002.m for

  1. \Delta=\Delta_1 (Option 1.1)
  2. Induced L_2-gain performance (Option 3.1)

you obtain as output the worst-case induced L_2-gain for increasing values of \alpha\in[0,0.5] computed by the \mu-tools (command: wcgain) and the IQC-tools for different lengths of the basis function. This yields the results shown in the following figure. As can be seen, the IQC-analysis produces worst-case induced L_2-gains (i.e. H_\infty-norms in this example), which are identical to the \mu-analysis. In addition, note that for any length of the basis function, the same results are obtained. This means that static (i.e. non-dynamic) multipliers are sufficient in this analysis.

Worst-case induced L_2-gain for increasing values of \alpha and different lengths of the basis function

Previous page