1,451
社区成员
function[gamma,Y,G]=LMI_01()
%%程序参数初始化
C1=[0 0 1 0;0 0 0 1];
C=[0 1 0];
Mr=10;
R=[1 0 0;0 1 0;0 0 1];
Q=[1 0 0;0 1 0;0 0 1];
A1=[-0.0004 0.00006 0 0;0.00046 2.87 0 0;3 0 0 3;0 1 0 0];4×4的矩阵
Gpr=[0 -1 0 0 0 0 0 0 0 0 0;0 0 0 0 0 0 0 0 0 0 0];11×2的矩阵
Ar=[0 1 0 0 0 0 0 0 0 0 0;0 0 1 0 0 0 0 0 0 0 0;0 0 0 1 0 0 0 0 0 0 0;0 0 0 0 1 0 0 0 0 0 0;0 0 0 0 0 1 0 0 0 0 0;0 0 0 0 0 0 1 0 0 0 0;0 0 0 0 0 0 0 1 0 0 0;0 0 0 0 0 0 0 0 1 0 0;0 1 0 0 0 0 0 0 0 1 0;0 1 0 0 0 0 0 0 0 0 1;0 0 0 0 0 0 0 0 0 0 0];11×11的矩阵
M=C1*A1;
M=[3 0 0 3;0 1 0 0];4×2的矩阵
A=[A1 0 0;M 0 Gpr;0 0 Ar];该位置报错了
B1=[0.0002 0;0.0005 0.00065;0 0;-1.03 0];
B=[B1 C1*B1 0];
%%描述矩阵不等式
setlims([]);%初始化LMI系统
G=lmivar(1,[3,1]);%n阶对称正定矩阵
Y=lmivar(2,[3,3]);%m×n阶正定矩阵
gamma=limvar(1,[1,1]);%γ是一个标量
lmiterm([-1,1,1,G],1,1);%矩阵1行1列
lmiterm([-1,2,1,G],A);%矩阵2行1列
lmiterm([-1,2,1,Y],B,C);%矩阵2行1列
lmiterm([-1,2,2,G],1,1);%矩阵2行2列
lmiterm([-1,3,1,G],Q^0.5,1);%矩阵3行1列,Q的0.5次方
lmiterm([-1,3,3,gamma],1,1);%矩阵3行3列
lmiterm([-1,4,1,Y],R^0.5,C);%矩阵4行1列
lmiterm([-1,4,4,gamma],1,1);%矩阵4行4列
lmiterm([-2,1,1,G],1,1);%G是正定的
lmiterm([-3,1,1,Y],1,1);%Y是正定的
lmisys=getlmis;%获取lmi信息
%%求解LMI
[tmin,xfeas]=feasp(lmisys);%可行解
if(tmin<0)
disp('Feasible');
G=dec2mat(lmisys,xfeas,G);
Y=dec2mat(lmisys,xfeas,Y);
else
G=nan;
Y=nan;
end
%cell
end