[已答复] 不会了

[复制链接]
Solitude23 发表于 2021-3-25 16:47:03
数组索引必须为正整数或逻辑值。

出错 lmilizi (line 38)
theta=(1-c)^2*(2*r*mu-alpha*rho-beta*rho-lambda)-(1-c)*(1/nu*rho*psi-lambda)-K-n*(K*delta+1)*(1/(1-c)+rho(nu+1/sigma+1/gamma))*(e11*e12+e11*e11+e12*e11+e12*e12+e21*e21+e22*e21+e21*e22+e22*e22);
源代码
a11=0.15;
a12=0.04;
a21=-0.09;
a22=0.01;
b11=0.03;
b12=0.02;
b21=-0.04;
b22=0.01;
e11=0.01;
e12=0.22;
e21=0.11;
e22=0.28;
rho=1;
mu=1;
l=1;
r=1/2;
psi=1/2;
n=2;
alpha=1/8;
beta=1/8;
gamma=1/2;
sigma=1/8;
nu=1/8;
c=1/2;
w=1/2;
delta=1/2;
% 待求解
lambda=sdpvar(1,1,'symmetric');
K=sdpvar(1,1,'symmetric');
A=[a11 a12;a21 a22];
B=[b11 b12;b21 b22];
E=[e11 e12;e21 e22];
theta=(1-c)^2*(2*r*mu-alpha*rho-beta*rho-lambda)-(1-c)*(1/nu*rho*psi-lambda)-K-n*(K*delta+1)*(1/(1-c)+rho(nu+1/sigma+1/gamma))*abs(e11*e12+e11*e11+e12*e11+e12*e12+e21*e21+e22*e21+e21*e22+e22*e22);
chi=rho*(1-c)*(1/alpha+sigma)*abs(a11*a12+a11*a11+a12*a11+a21*a21+a22*a22+a21*a22+a22*a21+a12*a12)+n*(k*delta+1)*(1-c)/(1-w)*rho*(1/beta+gamma)*abs(b11*b11+b11*b12+b12*b12+b12*b11+b21*b21+b22*b22+b21*b22+b22*b21);
%限制条件
theta-l^2*chi>0;
Lmi=Lmi+set(lambda>0);
Lmi=Lmi+set(delta>0);
solvesdp(Lmi);
pres = checkset(Lmi);
if sum(pres>=0)==size(pres,1)
    flag=1;
     disp('OK.');   
else
    flag=0;
    disp('不等式求解不正确.');
end

1 条回复


EngineerLeon 发表于 2021-3-25 23:41:41
这句rho(nu+1/sigma+1/gamma)表示数组rho中的第nu+1/sigma+1/gamma个元素,自己去检查是不是漏写了乘号
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表