24小时热门版块排行榜    

查看: 249  |  回复: 1

攀枝花的花

银虫 (小有名气)

[求助] matlab新手,求帮助,三效逆流工艺,不知道哪里出错 已有1人参与

clear
clc
F0=vpa(50000*10^3*0.92/6600/0.28);
x0=0.28;x1=0.5;
W0=vpa(F0*(1-x0/x1),7);
F1=vpa(F0-W0,6);
w3=W0/3.3;w2=1.1*w3;w1=1.2*w3;
w=vpa([w1,w2,w3],6);
e=0.03;
if e>0.02
     x3=F0*x0/(F0-w3);x2=F0*x0/(F0-w2-w3);
     x=vpa([x1,x2,x3,x0],2);
     P0=392.4;P3=19.62;delta_p=(P0-P3)/3;
     P1=P0-delta_p;P2=P1-delta_p;
     P=vpa([P1,P2,P3,P0],5);
     T=vpa(1657.46./(7.07406-log10(P))-227.02,5);
      Delta=3+2;
     tb0=50;
      tb=vpa([tb0,T(2:4)+Delta],4);
     Ca=4.18;Cb=0.8962;
     Cp=vpa(Ca*(1-x)+Cb*x,4);
     h=vpa(Cp.*tb,5);
     H=vpa(2495.867+1.741*T-2.653*10^(-3)*T.^2,6);
     r=vpa(2495.0-2.219*T-2.128*10^(-3)*T.^2,6);
     yita=0.98;
     syms D W1 W2 W3
     W1=vpa(D*r(1)+(F0-W2-W3)*(h(3)-h(2))/(H(2)-h(2))*yita,3);
     W2=vpa(W1*r(2)+(F0-W3)*(h(4)-h(3))/(H(3)-h(3))*yita,3);
     W3=vpa(W2*r(3)+F0*(h(1)-h(4))/(H(4)-h(4))*yita,3);
     WW=vpa(W1+W2+W3,3);
     D=vpa(double(solve(WW-W0)),6);
     W1=subs(W1,D);W2=subs(W2,D);W3=subs(W3,D);
     W=vpa([W1,W2,W3],6);
     eps=vpa(abs((w-W)./w),4);
     e=max(double(eps));
     w=W;
end
显示错误信息为
??? Error using ==> eval
Undefined function or variable 'D'.

Error in ==> sym.double at 45
D = reshape(eval(X),siz);

Error in ==> Untitled at 31
     D=vpa(double(solve(WW-W0)),6);
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wake_up

木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
matlab 最不擅长做符号计算了。你这个问题用数值程序应该能够更好的解决。

你这里D已经定义成符号了。 在下面的计算中已经不是变量。 应该是这个原因出错。

若想解决你的问题:
将问题描述清楚,写成一个简单的文档,以及计算公式,(那些是变量,变量的范围,要求的值是什么等。)。
再发上来,也许能帮到你。
扫地扫地扫心地,心地不扫空扫地,人人都把心地扫,世上无处不净地.
2楼2016-03-15 11:19:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 攀枝花的花 的主题更新
信息提示
请填处理意见