请问关于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 编辑 ]
回复 #1 superstones 的帖子
有人知道吗?谢谢啊参照这个例子看看
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]