24小时热门版块排行榜    

查看: 221  |  回复: 1
当前主题已经存档。

vflag

木虫 (正式写手)

[交流] 【求助】matlab lmi中矩阵维数不等的解决办法【已解决】

例如:定义变量  
setlmis([]);
  X=lmivar(1,[4,1]);
  Y1=lmivar(1,[2,1]);
  Y2=lmivar(2,[2,2]);
  Y3=lmivar(1,[2,1]);
  Z1=lmivar(2,[2,2]);
  Z2=lmivar(1,[2,1]);
所求不等式为:
[X+[Y1,Y2;Y2',Y3],[Z1;0;0];
Z1',0,0,Z2]<0;
在matlab的lmi工具箱中,传统做法肯定是把X分块定义才行。
想问下,如果不分块的话有什么解决办法么?
(采用后奖励金币5个)。

[ Last edited by nono2009 on 2009-12-21 at 16:56 ]
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

vflag

木虫 (正式写手)

★ ★
nono2009(金币+2,VIP+0):谢谢分享经验! 12-22 11:24
问题解决了,没有别的好办法,只能分块定义。但用lmiivar的第三种类型定义后,写不等式的时候可以在最高维度来写,不用再分块写,麻烦可以降到最低。比如用lmivar的type3定义了一个4*4的矩阵,是由4个2*2的矩阵变量组合成的。那么写不等式的时候就直接用这个4*4的矩阵来写就行了,就不用那4个2*2的矩阵了。具体可以看http://www.mathworks.cn/access/helpdesk/help/helpdesk.html这里边的帮助。还是很有用的。
2楼2009-12-22 10:38:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 vflag 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见