[已答复] 求大佬看看这段代码有什么问题

[复制链接]
joyan707 发表于 4 天前
本帖最后由 joyan707 于 2021-6-10 18:03 编辑

clear
clc
a=xlsread('work2021.xlsx');
for i=1:2
    mean(a,i);
end
c1=mean(a,1);
c=c1(1,2);
average=mean(mean(a));
std=std2(a);
m=0;
d=400/average;
Q=500;
f=1/2*(std.^0.5);
for k=1:30
    Q0=(2*average*(100+m*d)/(0.05*c)).^0.5;
    d=0.05*Q0*c/400;
    syms q
    eqn=int(f,q,inf)==0.05*Q0*c/400;
    solve(eqn,q);
    eval(q);
    syms x
    m=int((x-q)*f,q,inf);
    n(:,k)=[m,Q,q]';
    Q=Q+Q0;
    for j=1:3
        if n(j:k-1)-n(j:k)<1
            disp(Q)
            disp(q)
        end
    end
end

出现的错误是
错误使用 mupadengine/feval_internal
Index out of range.

出错 sym/solve (第 335 行)
    conditions = transpose(eng.feval_internal('map', sol, '_index', sym(3)));

出错 storage (第 20 行)
    solve(eqn,q);

如肯赐教,感激不尽!


2 条回复


joyan707 发表于 3 天前
有没有大佬救救我

wjb986555360 发表于 前天 20:15
你可以用fsolve代替solve试下,最好把你的excel文档和要求的参数说明清楚
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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