matlab lmi 定义一个任意方阵,matlab中LMI应用说明

我们要实现的就利用LMI进行求解。首先我们要用setlmis([])命令初始化一个LMI系统。接下来,我们就要设定矩阵变量了。采用函数为lmivar语法:X = lmivar(type,struct)type=1: 定义块对角的对称矩阵。每一个对角块或者是全矩阵,标量,或者是零阵。如果X有R个对角块,那么后面这个struct就应该是一个Rx2阶的的矩阵,在此矩阵中,struct(r,1)表示第r个...
摘要由CSDN通过智能技术生成

我们要实现的就利用LMI进行求解。

首先我们要用setlmis([])命令初始化一个LMI系统。

接下来,我们就要设定矩阵变量了。采用函数为lmivar

语法:X = lmivar(type,struct)

type=1: 定义块对角的对称矩阵。每一个对角块或者是全矩阵,标量,或者是零阵。

如果X有R个对角块,那么后面这个struct就应该是一个Rx2阶的的矩阵,在此矩阵中,struct(r,1)表示第r个块的大小,struct(r,2) 表示第r个块的类型<1--全矩阵,0--标量,-1--零阵)。

比如一个矩阵有两个对角块,其中一个是2x2的全对称矩阵,第二个是1x1的一个标量,那么该矩阵变量应该表示为X = lmivar(1, [2 1; 1 0]) 。

type=2: mxn阶的矩阵,只需要写作struct = [m,n]即可。

type=3: 其它类型。针对类型3,X的每一个条目(each entry of X)被定义为0或者是+(-)xn,此处xn代表了第n个决策变量。

那么针对我们的例子,我们如此定义变量:

% Q is a symmetric matrix, has a block size of 2 and this block is symmetric

Q = lmivar(1, [2 1]);

% S1 a symmeric matrix, size 2

S1 = lmivar(1, [2 1]);

% S2 is 1 by 1 matrix

S2 = lmivar(1, [1

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值