matlab小程序,请教高手,在线等。看看下面程序运行为啥没有结果
T=700+273.15;Q=360000;Qc=220;A=5.34e-6;R=8.314;n=7.9;m=0.0474;beita=1.15;eb0=0;forvar...
T=700+273.15;
Q=360000;
Qc=220;
A=5.34e-6;
R=8.314;
n=7.9;
m=0.0474;
beita=1.15;
eb0=0;
for var = 0:5:100000000000
ebm=A*((50)^n)*exp(-Q/(R*T))*(1+beita*var*exp(-Qc/(R*T)))^m;
ebt=5*ebm+eb0;
if ebm<=0.5;
eb0=ebt;
continue
else tr=var;
end
end
tr 展开
Q=360000;
Qc=220;
A=5.34e-6;
R=8.314;
n=7.9;
m=0.0474;
beita=1.15;
eb0=0;
for var = 0:5:100000000000
ebm=A*((50)^n)*exp(-Q/(R*T))*(1+beita*var*exp(-Qc/(R*T)))^m;
ebt=5*ebm+eb0;
if ebm<=0.5;
eb0=ebt;
continue
else tr=var;
end
end
tr 展开
3个回答
展开全部
不知您最终是想得到哪个输出值?是ebt 还是tr?
首先,你的循环值太大,达到了一千亿。一般的计算器是需要相当长的时间才可以运算出结果。你可以改一个数试试(比如100)。这样就可以的得到相应的结果。
其次,建议用向量化的程序,因为循环体太浪费时间。
有问题,我们可以继续探讨。希望您采纳。
首先,你的循环值太大,达到了一千亿。一般的计算器是需要相当长的时间才可以运算出结果。你可以改一个数试试(比如100)。这样就可以的得到相应的结果。
其次,建议用向量化的程序,因为循环体太浪费时间。
有问题,我们可以继续探讨。希望您采纳。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
少了个end吧。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询