文档

setmvar

实例化矩阵变量并评估所有涉及此矩阵变量的LMI术语

句法

mnewsys = setMvar(lmisys,x,xval)

描述

setmvar设置矩阵变量X带有标识符Xxval。所有涉及的术语X对评估,恒定条款进行相应更新,并且X从矩阵变量列表中删除。返回结果的LMI系统的描述新闻

整数X是返回的标识符lmivar什么时候X被宣布。实例化Xsetmvar不会更改其余矩阵变量的标识符。

功能setmvar对于冻结某些矩阵变量并相对于其余的矩阵变量很有用。它通过避免部分或完全重新定义LMI约束来节省时间。

例子

考虑系统

X=斧头+bu

以及找到稳定的国家反馈法的问题=Kx在哪里k是一个未知的矩阵。

由Lyapunov定理,这等同于寻找p> 0和k这样

((a + bkp+p((a + bkt) +<0。

随变量的变化y:=KP,这种情况减少到LMI

AP+PAt+经过+ytbt+<0。

此LMI由命令输入

n = size(a,1)%状态数ncon = size = size(b,2)%输入数量setlmis([])p = lmivar(1,[n 1])%p完整对称y = lmivar(2,2,2,[ncon n])%y矩形lmiterm([1 1 1 p],a,1,'s')%ap+pa'lmiterm([1 1 1 y],b,1,'s')%by+y'b'lmiterm([1 1 1 0],1)%i lmis = getlmis

找出这个问题是否有解决方案k对于特定的Lyapunov矩阵p=, 放p通过打字

新闻= setMvar(LMIS,p,1)

生成的LMI系统消息只有一个变量y=k。通过致电评估其可行性feasp

[tmin,xfeas] = feasp(新闻)y = dec2mat(新闻,Xfeas,y)

计算的y无论何时可行Tmin<0。

也可以看看

|

在R2006a之前引入

这个话题有帮助吗?