|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
clear all
clc
A=[-0.08 -0.03 -0.157 0;-0.73 -0.377 0 1;0 0 0 1;0 -8.65 0 -0.5]
B=[1.54 -0.02;-0.1 -0.056;0 0;0 -6.5]
B1=[0.9;0.02;0.03;0]
C1=[1 0 0 0;0 1 0 0;0 0 1 0]
D1=[0 0;0 0;0 0]
M0=[0.6 0;0 0.7]
M=[0.3 0;0 0.5]
J=[0.667 0;0 0.4286]
q=5
s=4.5
a=0.03
b=0.02
setlmis([])
X=lmivar(1,[4 1])
Y=lmivar(2,[2 4])
r=lmivar(1,[1 1])
e11=lmivar(1,[1 1])
e12=lmivar(1,[1 1])
e13=lmivar(1,[1 1])
e14=lmivar(1,[1 1])
e21=lmivar(1,[1 1])
e22=lmivar(1,[1 1])
e23=lmivar(1,[1 1])
e24=lmivar(1,[1 1])
e25=lmivar(1,[1 1])
lmiterm([1 1 1 X],-s,1)
lmiterm([1 1 1 e11],1,a)
lmiterm([1 1 1 e12],1,B*J*B')
lmiterm([1 1 1 e13],1,b)
lmiterm([1 1 1 e14],1,b)
lmiterm([1 1 2 X],A,1)
lmiterm([1 1 2 X],q,1)
lmiterm([1 1 2 Y],B,1)
lmiterm([1 2 2 X],-s,1)
lmiterm([1 2 3 X],1,1)
lmiterm([1 4 2 Y],1,1)
lmiterm([1 5 2 Y],1,1)
lmiterm([1 6 2 Y],1,1)
lmiterm([1 3 3 e11],-1,1)
lmiterm([1 4 4 e12],-1,inv(J))
lmiterm([1 5 5 e13],-1,1)
lmiterm([1 6 6 e14],-1,inv(J))
lmiterm([2 1 1 X],A,1,'s')
lmiterm([2 1 1 Y],B,1,'s')
lmiterm([2 1 1 e21],1,B*J*B')
lmiterm([2 1 1 e22],1,a)
lmiterm([2 1 1 e23],1,b)
lmiterm([2 1 1 e24],1,b)
lmiterm([2 1 2 0],B1)
lmiterm([2 3 1 X],C1,1)
lmiterm([2 3 1 Y],D1,1)
lmiterm([2 2 2 r],-1,1)
lmiterm([2 3 3 r],-1,1)
lmiterm([2 3 3 e25],1,D1*J*D1')
lmiterm([2 4 1 Y],1,1)
lmiterm([2 1 5 X],1,1)
lmiterm([2 6 1 Y],1,1)
lmiterm([2 7 1 Y],1,1)
lmiterm([2 8 1 Y],1,1)
lmiterm([2 4 4 e21],-1,inv(J))
lmiterm([2 5 5 e22],-1,1)
lmiterm([2 6 6 e23],-1,1)
lmiterm([2 7 7 e24],-1,inv(J))
lmiterm([2 8 8 e25],-1,inv(J))
lmis=getlmis
c=mat2dec(lmis,zeros(4,4),zeros(2,4),eye(1),zeros(1,1),zeros(1,1),zeros(1,1),zeros(1,1),zeros(1,1),zeros(1,1),zeros(1,1),zeros(1,1),zeros(1,1))
options=[1e-5,0,0,0,0]
[copt,xopt]=mincx(lmis,c,options)
Xopt=dec2mat(lmis,xopt,X)
Yopt=dec2mat(lmis,xopt,Y)
ropt=dec2mat(lmis,xopt,r)
K=inv(M0)*Yopt*inv(Xopt)
运行后出现 Error using ==> dec2mat
DECVARS must be a vector of length 28
Error in ==> hshiyan at 78
Xopt=dec2mat(lmis,xopt,X) |
|