matlab中decnbr,LMI 求解时调用decnbr()函数得到的决策变量的个数为小数是为什么

在使用MATLAB LMI工具箱时遇到一个问题,调用decnbr(lmisys)得到的决策变量个数是个小数,而非整数。这导致在feasp解释器中出现错误。代码中创建了一系列的LMI变量,但计算决策变量个数时出现问题。寻求帮助以理解原因。
摘要由CSDN通过智能技术生成

调用LMI工具箱feasp解释器的时候报错(如下图):

5ad04698258d7bfd3a94ec2c17ecbd19.png

我看了feasp.m的代码后发现是sizex=decnbr(lmisys)这句得到的决策变量个数是个小数(78.8),实在不能理解请各位大佬解惑

具体代码如下(附件为代码的txt文件):[url=]test.txt[/url]

setlmis([]);

[beta1,e,sbeta1] = lmivar(1,[1,0]);

[beta2,e,sbeta2] = lmivar(1,[1,0]);

[P1,e,sP1] = lmivar(1,[8,1]);

[P21,e,sP21] = lmivar(1,[n,1]);

[P22,e,sP22] = lmivar(1,[n,1]);

[P23,e,sP23] = lmivar(1,[n,1]);

[P24,e,sP24] = lmivar(1,[n,1]);

[P2,e,sP2]=lmivar(3,[sP21 zeros(2,2) zeros(2,2) zeros(2,2);zeros(2,2) sP22 zeros(2,2) zeros(2,2);zeros(2,2) zeros(2,2) sP23 zeros(2,2); zeros(2,2) zeros(2,2) zeros(2,2) sP24]);

[P,e,sP]=lmivar(3,[sP1 zeros(8,8);zeros(8,8) sP2]);

[Y1,e,sY1]&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值