superstones 发表于 2007-4-17 21:10

请问关于LMI工具箱中直接求矩阵>0的算法

本人对编程很水,最近碰到一个关于LMI的问题,希望各位高手能帮助一下,多谢!!
问题描述如下:
已知一个对称、正定矩阵P>0,(比如P=(x,1,2; 1,y,3; 2,3,z)>0    )
问如何利用LMI方法,在Matlab中编程实现,求出变量x,y,z?
查看了一些关于LMI的论文,发现都没有直接求已知矩阵>0或者<0的
希望各位高手能不吝指教!
   谢谢!

[ 本帖最后由 eight 于 2007-4-17 23:14 编辑 ]

superstones 发表于 2007-4-18 12:56

回复 #1 superstones 的帖子

有人知道吗?谢谢啊

ff630 发表于 2008-10-22 23:36

参照这个例子看看

a=;
b=;
c=;
setlmis([]);
x=lmivar(1,);
y=lmivar(1,);
ew=lmivar(2,);

lmiterm(,1,a','s'); % LMI #1: x*a'+a*x
lmiterm(,b'); % LMI #1: b'
lmiterm(,1,-1); % LMI #1: -y
lmiterm(,c,1); % LMI #1: c*x
lmiterm(,-inv(ew)); % LMI #1: -inv(ew)

lmiterm([-2 1 1 x],1,1); % LMI #2: x 即令正定x>0,默认为<0,所以用-2表示第二个LMI大于0
lmiterm([-3 1 1 ew],1,1); % LMI #3: ew 即令α>0,是正实数,此处将α用ew表示,-3表示第三个LMI大于0
s1=getlmis;

=feasp(s1) %此处用来求s1的可行解,返回的lp<0,则该LMI可行。

x=dec2mat(s1,kp,x)
页: [1]
查看完整版本: 请问关于LMI工具箱中直接求矩阵>0的算法