# Implementing the Bounded Real Lemma

The file Demo_011.m is found in IQClab’s folder demos; it demonstrates how to implement a new LMI problem. More specifically, we show how to implement the Bounded-Real Lemma and demonstrate how we can check if a random LTI system is stable and what the corresponding norm is.

To this end, let us consider the LTI system , and assume that the pair is controllable. This system is stable and has an -norm smaller than if and only if there exists a positive definite solution for which the following matrix inequality is feasible:

.

This can be easily written as a genuine LMI by applying the Schur complement. This yields:

.

This LMI can be easily implemented as follows:

% Define random LTI system with n states
n       = 10;
[no,ni] = size(G);

% Define IQC-LMI problem
prob  = iqcprob;

% Define LMI variables
X     = iqcvar(prob,[n,n],'symmetric');
gamma = iqcvar(prob,[1,1],'full');

% Define LMI
P     = blkdiag(oblkdiag(X),-gamma*eye(no+ni));
A     = [eye(n),zeros(n,no+ni);G.a,G.b,zeros(n,no);...
zeros(ni+no,n),eye(no+ni)];
B     = fHe([zeros(n+ni,n+no+ni);-[G.c,G.d,zeros(no)]]);

prob  = iqclmi(prob,P,-1,B,A);
prob  = iqclmi(prob,X,1);

% Solve IQC-LMI problem
prob  = iqcsolve(prob,gamma);

% Check solution
P     = iqcdec2mat(prob,P);
X     = iqcdec2mat(prob,X);
gamma = iqcdec2mat(prob,gamma);

disp('Check if the main LMI is negative definite:');
disp(eig(A'*P*A-B));
disp('Check if X is positive definite');
disp(eig(X));
disp('The computed bound on the H-infinity norm is:');
disp(gamma);

Previous page