修改系统lmi完成
一旦指定,一个lmi)系统可以修改在几个方面的功能dellmi
,delmvar
,setmvar
。
删除一个LMI
第一种可能性是删除整个LMI的系统dellmi
。例如,假设的LMI系统指定LMI系统描述的是LMISYS
我们想要删除的积极约束X。这是通过
报童= dellmi (LMISYS, 2)
在第二个参数指定删除第二个LMI。结果系统返回两个lmi)报童
。
LMI标识符(最初的排名的LMI LMI系统)不被删除。因此,最后一个LMI
年代>我
仍然被称为第三LMI即使它现在修改系统中排名第二。为了避免混淆,安全是指通过标识符返回的lmi)newlmi
。如果强
,Xpos
,Slmi
的标识符三lmi)中描述的吗指定LMI系统,Slmi
保持指向年代>我即使删除第二LMI
报童= dellmi (LMISYS Xpos)
删除一个矩阵变量
修改一个LMI系统的另一种方法是删除一个矩阵变量,也就是说,删除所有变量术语涉及这个矩阵变量。执行这个操作delmvar
。例如,考虑LMI
一个TX + XA + BW + WTBT+我< 0
与变量X=XT∊R4×4和W∊R2×4。这是定义的LMI
setlmis ([]) X = lmivar (1、1 [4]) % X W = lmivar (2、2 [4]) % W lmiterm ([1 1 1 X], 1, ' s ') lmiterm ([1 1 1 W], B, 1, ' s ') lmiterm ([1 1 1 0], 1) LMISYS = getlmis
删除变量W
,输入命令
报童= delmvar (LMISYS W)
由此产生的报童
现在介绍了李雅普诺夫不平等
一个TX+XA+我< 0
请注意,delmvar
自动删除所有lmi只取决于删除矩阵变量。
矩阵变量标识符是不受删除,继续指向相同的矩阵变量。对于后续的操作,因此建议把剩余的变量标识符。最后,请注意,删除一个矩阵变量等于零矩阵的设置相同的维数setmvar
。
实例化一个矩阵变量
这个函数setmvar
用于将一个矩阵变量设置为给定值。结果,这个变量从问题,删除所有条款涉及它成为常数项。这是有用的,例如,修复setmvar
一些变量和优化对其余的人。
再次考虑指定LMI系统假设我们想要知道的峰值增益G本身是小于1的,也就是说,如果
∥G∥∞< 1
这相当于设置缩放矩阵D(或等价,年代=DTD)的多个单位矩阵。记住约束条件年代>我,一个合理的选择年代= 2-βψ-我。设置年代这个值,输入
报童= setmvar (LMISYS, S, 2)
第二个参数是变量标识符年代
,第三个参数的值年代值应该设置。2是简称2 -我。由此产生的系统报童
读取
注意,最后一个LMI现在自由变量和非常满意。因此,它可以被删除
报童= dellmi(报童,3)
或
报童= dellmi(报童,Slmi)
如果Slmi
标识符返回的newlmi
。