个人编写的MAPLE程序,请大家帮助调试
我个人编写的程序,对于每一个给定的Tr数值都会给出一组由两个方程组成的方程组的解,比如:{yrG=0.2540855059,yrL=2.353243245}。由于Tr数值比较多,大概需要八万个,所以给出的方程组的数值解也有八万组,由此试图采取单个输入Tr给出解的方案不实用,我试图使用了for循环语句,并尝试把每组数值解写入f:\\solution.txt。写入时候出现了错误,MAPLE的提示为:Error, (in writedata[APPEND]) Bad data found yrG = .2540855059. 我做了另外两个尝试
尝试一:
A:={yrG=0.2540855059,yrL=2.353243245};
writedata[APPEND]("f:\\solution.txt",A};
结果MAPLE程序依然指出bad data
尝试二:
A:={0.2540855059,2.353243245};
writedata[APPEND]("f:\\solution.txt",A};
结果可以顺利的把A写入f:\\solution.txt.
我尝试了几种方法来调试计算程序,试图把数值结果写入f:\\solution.txt都没有成功,特来请教,请大家指教,appreciating...
个人编写的程序是:
restart;
> for Tr from 0.81 to 0.83 by 0.0001 do
> ##Case 1##
> #v:=b/4/y:
> #sigma:=0.7345:
> #yc := .6715121595e-1:
> #ac := 2.666850636*b*R*T:
> #Tc:=a/(2.666850636*b*R):
> ##########
> ##Case 1##
> v:=b/4/y:
> sigma:=1:
> yc := 1/12:
> ac := 27/8*b*R*T:
> Tc:=a/(27/8*b*R):
> ##########
> z:=1/(1-4*y)-4*a*sigma*y^sigma/b/R/T;zc:=subs(a=ac,y=yc,%):
> p:=z*R*T/v:
> vc:=b/4/yc;pc:=zc*R*Tc/vc:
> pr:=subs(y=yr*yc,T=Tr*Tc,p)/pc:
> dp1:=diff(p,y):
> mu:=int(integrator,y)+phi(T):
> integrator:=dp1*b/4/y:
> > ##########
> ##Case 2##
> mu1:= -8/b*a*y+R*T*ln(y)-R*T*ln(1-4*y)-R*T/(-1+4*y)+phi(T):
> muA:=mu1-phi(T):
> mur1:=collect(collect(subs(y=yr*yc,T=Tr*Tc,muA),b),a):
> mur2:=mur1*b/a:
> prG:=subs(yr=yrG,pr):
> prL:=subs(yr=yrL,pr):
> mur2G:=subs(yr=yrG,mur2):
> mur2L:=subs(yr=yrL,mur2):
> f1:=prG-prL:
> g1:=mur2G-mur2L:
> TrLVE:=Tr:
> f:=f1=0:
> g:=g1=0:
> solutions:=fsolve({f,g},{yrG=0.00001..1,yrL=1..3}):subs(%,f1);simplify(%):
> writedata[APPEND]("f:\\solution.txt",solutions):
> od;
|