建筑装修设计网站大全,网页版游戏单机游戏,wordpress附件下载失败,网站搜索功能代码我们要实现的就利用LMI进行求解。首先我们要用setlmis([])命令初始化一个LMI系统。接下来#xff0c;我们就要设定矩阵变量了。采用函数为lmivar语法#xff1a;X lmivar(type,struct)type1: 定义块对角的对称矩阵。每一个对角块或者是全矩阵#xff0c;标量#xff0c;或…我们要实现的就利用LMI进行求解。首先我们要用setlmis([])命令初始化一个LMI系统。接下来我们就要设定矩阵变量了。采用函数为lmivar语法X lmivar(type,struct)type1: 定义块对角的对称矩阵。每一个对角块或者是全矩阵标量或者是零阵。如果X有R个对角块那么后面这个struct就应该是一个Rx2阶的的矩阵在此矩阵中struct(r,1)表示第r个块的大小struct(r,2) 表示第r个块的类型1--全矩阵0--标量-1--零阵)。比如一个矩阵有两个对角块其中一个是2x2的全对称矩阵第二个是1x1的一个标量那么该矩阵变量应该表示为X lmivar(1, [2 1; 1 0]) 。type2: mxn阶的矩阵只需要写作struct [m,n]即可。type3: 其它类型。针对类型3X的每一个条目(each entry of X)被定义为0或者是(-)xn此处xn代表了第n个决策变量。那么针对我们的例子我们如此定义变量% Q is a symmetric matrix, has a block size of 2 and this block is symmetricQ lmivar(1, [2 1]);% S1 a symmeric matrix, size 2S1 lmivar(1, [2 1]);% S2 is 1 by 1 matrixS2 lmivar(1, [1 0]);% Type of 2, size 1 by 2M lmivar(2, [1 2]);定义完成变量之后我们就该用lmiterm来描述LMI中的每一个项了。Matlab 的官方文档提示我们如果要描述一个LMI只需要描述上三角或者下三角元素就可以了否则会描述成另一个LMI。When describing an LMI with several blocks, remember to specify only the terms in the blocks on or below the diagonal (or equivalently, only the terms in blocks on or above the diagonal).语法为lmiterm(termID,A,B,flag)termID是一个四维整数向量来表示该项的位置和包含了哪些矩阵变量。termID(1)可以为p或者-pp代表了这个项位于第p个线性矩阵不等式的左边-p代表了这个项位于第p个线性矩阵不等式的右边。注意按照惯例来讲左边通常指较小的那边。termID(2:3):1、对于外部变量来说取值为[0,0];2、对于左边或者右边的内部变量来说如果该项在(i,j)位置取值[i,j]termID(4):1、对于外部变量取值为02、对于A*X*B取值X3、对于A*X*B取值-X