필터 지우기
필터 지우기

Trying to formulate and solve a LMI

조회 수: 33 (최근 30일)
Ashik Rahman
Ashik Rahman 2021년 12월 18일
댓글: Ashik Rahman 2021년 12월 21일
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
Walter Roberson
Walter Roberson 2021년 12월 21일
Sorry, not a topic I have had reason to look at before.
Ashik Rahman
Ashik Rahman 2021년 12월 21일
Thank you for your time though

댓글을 달려면 로그인하십시오.

답변 (0개)

카테고리

Help CenterFile Exchange에서 LMI Solvers에 대해 자세히 알아보기

제품


릴리스

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by