Robustness analysis with arbitrarily fast time-varying parametric uncertainties

The file Demo_004.m is found in IQClab’s folder demos. This demo performs an IQC-robustness analysis for an uncertain plant that is affected by arbitrarily fast time-varying parametric uncertainties. Here it is possible to vary several inputs:

  1. The uncertainty block:
    1. Two LTV parametric uncertainties that are diagonally repeated once, or
    2. Four LTV parametric uncertainties packed in a full 2\times 2 delta-block
  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 2.1 and Option 2.3,
  • d_{23}=0 for Option 2.2.

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

  • \Delta=\Delta_1=\mathrm{diag}(\delta_1,\delta_2) with \delta_i\in[-\alpha,\alpha], i\in\{1,2\}, for Option 1.1, or
  • \Delta=\Delta_2=H_1\delta_1+H_2\delta_2+H_3\delta_3+H_4\delta_4 for Option 1.2, where H_1=\left(\begin{array}{cc}1&0\\0&1\end{array}\right), H_3=\left(\begin{array}{cc}1&1\\0&0\end{array}\right), H_3=\left(\begin{array}{cc}0&1\\1&0\end{array}\right), H_4=\left(\begin{array}{cc}1&0\\1&0\end{array}\right), and \delta_i\in[-\alpha,\alpha], i\in\{1,2,3,4\}.

The demo file Demo_004.m allows to run an IQC-analysis for various values of \alpha\in[0,0.4] and different relaxation schemes. Within the file one can change the inputs mentioned above. For illustration purposes, the following code specifies an IQC-analysis for the uncertain plant \Delta_2(\delta_1,\delta_2,\delta_3,\delta_4 )\star M, \delta_i\in[-\alpha,\alpha], \alpha=0.1, and the induced L_2-gain as performance metric. In addition, the following parameters are considered:

  • Relaxation type: ‘CH’
  • 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,1;0,1,0]);

% Define uncertainty block
H{1} = [1,0;0,1]; H{2} = [1,1;0,0]; H{3} = [0,1;1,0]; H{4} = [1,0;1,0];

La = polydec(pvec('box',0.1*[-1,1;-1,1;-1,1;-1,1]))';

de = iqcdelta('de','InputChannel',1:2,'OutputChannel' ,1:2,'Structure','FB','UncertaintyMap',H,'Polytope',La,'TimeInvTimeVar','TV');

% Assign IQC-multiplier to uncertainty block
de = iqcassign(de,'ultv','RelaxationType','CH');

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

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

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

  1. \Delta_2 (Option 1.2)
  2. H_2-gain performance (Option 3.2)

you obtain the worst-case H_2-norm for increasing values of \alpha\in[0,0.2] computed by the IQC-tools. This yields the results shown in the following figure. As can be seen, the IQC-analysis produces roughly the same worst-case H_2-norms for the two considered relaxation schemes.

Worst-case H_2-norm for increasing values of \alpha and different relaxation schemes

Previous page