Trying to formulate and solve a LMI

52 views (last 30 days)
Ashik Rahman
Ashik Rahman on 18 Dec 2021
Commented: Ashik Rahman on 21 Dec 2021
I am very new to LMI and trying to solve the following LMI
((I + UC)A)'P + P(I + UC)A
+ (VCA)'Y' + Y(VCA)
-C'K' -KC< 0
and P>0
I have formulated the code below following https://www.mathworks.com/help/robust/ref/lmiterm.html
Am I doing it correct? geting a warning Warning: In (1,1) block of LMI #1, non-symmetric term AXB was replaced by (AXB+B'XA')/2. For safety, set FLAG='s' to specify AXB+B'XA' in one shot.
and following message
These LMI constraints were found infeasible
Thank you in advance
CD_Plus = inv((C*D)'*(C*D))*(C*D)';
U = -D*CD_Plus;
V1 = (C*D)*CD_Plus;
V = eye(length(V1))-((C*D)*CD_Plus);
%% LMI
Q = (eye(size(U*C,1))+U*C)*A;
M = V*C*A;
C1(1,:) =C;
setlmis([]);
P = lmivar(1,[size(Q,1) 1]);
K1 = lmivar(1,[size(C1,1) 1]);
Y1 = lmivar(1,[size(M,2) 1]);
lmiterm([-1 1 1 P],1,1); % P>0
lmiterm([1 1 1 P],1,(eye(size(U*C,1))+U*C)*A,'s'); % ((I+UC)*A)'*P+P*(I+UC)*A
lmiterm([1 1 2 Y1],1,V*C*A); % Y*(V*C*A)
lmiterm([1 1 2 -Y1],(V*C*A)',1); % (V*C*A)'Y'
lmiterm([1 2 1 0],-1);
lmiterm([1 2 2 0],1);
lmiterm([-1 1 1 K1],1,C1); % K*C
lmiterm([-1 1 1 -K1],C1',1); % C'*K'
LMISYS = getlmis;
[tmin,XFEAS]=feasp(LMISYS);
P=dec2mat(LMISYS,XFEAS,P);
K1=dec2mat(LMISYS,XFEAS,K1);
  8 Comments
Walter Roberson
Walter Roberson on 21 Dec 2021
Sorry, not a topic I have had reason to look at before.
Ashik Rahman
Ashik Rahman on 21 Dec 2021
Thank you for your time though

Sign in to comment.

Answers (0)

Products


Release

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!