c name:guolushui.for,锅炉用水水质评价
c 可输出:锅垢总量H0(m),硬垢总量Hh(m);硬垢系数aKn(m),腐蚀系数aKk(m),起泡系数F(m)
c 程序中有m=6个水样,每个水样占一行,每个水样含n=15项检测组分,顺序为:1-悬浮物,2-可溶性SiO2,3Fe2O3,4-Al2O3,5-Mg2+,6-Cl-,7-SO4/2-,8-Na+,9-K+,10-pH,11-Al3+,12-CO3/-,13 HCO3/-,14-Fe2+,15-Ca2+除pH 值外,皆为mg/L
c x(m),y(m)-水样点x、y坐标,id(m)-水样点编号,sh(m,n)-m个水样点n项检测组分的测试值mg/L,缺测项赋-1占位,胶体重量C(m),
parameter(m=6,n=15)
dimension x(m),y(m),id(m),sh(m,n),c(m),h0(m),hh(m),akn(m)
dimension akk(m),f(m),rfe(m),ral(m),rmg(m),rca(m),rcl(m),rna(m)
dimension rk(m),rh(m),rso(m),rco(m),rhco(m),ckk(m)
c 逐个输入水样资料:点号 x、y坐标15项检测组分数据:
open(1,file=’shuiyang.dat’)
do 10 i=1,m
read(1,*)id(i),x(i),y(i),(sh(i,j),j=1,15)
10 continue
close(1)
c 输入11种组分的当量数据
open(1,file=’dangliang.dat’)
read(1,*)fe,al,amg,ca,cl,ana,ak,h,so,co,hco
close(1)
do 40 i=1,m
c 第1段计算每个水样的锅垢总量H0(i);计算每个水样的胶体重量C(i):
c(i)=sh(i,2)+sh(i,4)+sh(i,3)
c 计算每个水样的11种组分的当量浓度:
rfe(i)=sh(i,14)/fe
ral(i)=sh(i,11)/al
rmg(i)=sh(i,5)/amg
rca(i)=sh(i,15)/ca
rcl(i)=sh(i,6)/cl
rso(i)=sh(i,7)/so
rna(i)=sh(i,8)/ana
rk(i)=sh(i,9)/ak
rh(i)=1/10**sh(i,10)/h
rco(i)=sh(i,12)/co
rhco(i)=sh(i,13)/hco
c 用斯代勃莱公式1计算每个水样的锅垢总量H0(i):
h0(i)=sh(i,1)+c(i)+36*rfe(i)+17*ral(i)+20*rmg(i)+59*rca(i)
c 第2段计算每个水样的硬垢系数akn(i),先对每个水样计算斯代勃莱公式2中第3项括号中的数hhh,看其是否<0 hhh=rcl(i)+rso(i)-rna(i)-rk(i)
if(hhh.lt.0)hhh=0
c 用斯代勃莱公式2计算每个水样的硬垢重量hh(i):
hh(i)=sh(i,2)+20*rmg(i)+68*hhh
c 计算每个水样的硬垢系数akn(i)
akn(i)=hh(i)/h0(i)
c 第3 段计算每个水样的腐蚀系数akk(i),如果pH>7 则 goto 20:
if(sh(i,10).gt.7)goto 20
c 如果pH<=7则:
akk(i)=1.008*(rh(i)+ral(i)+rfe(i)+rmg(i)-rco(i)-rhco(i))
goto 30
20 akk(i)=1.008*(rmg(i)-rhco(i))
c ckk(i)=akk(i)+0.0503Ca
30 ckk(i)=akk(i)+0.0503*sh(i,15)
c 第4段计算每个水样的起泡系数f(i)
f(i)=62*rna(i)+78*rk(i)
40 continue
open(1,file=’jieguo.dat’)
c数据顺序:A:x坐标;B:y坐标;C:锅垢总量H0;D:硬垢总量Hh;E:硬垢系数Kn;F:腐蚀系数Kk;G:腐蚀系数Kk+0.0503Ca;H:起泡系数f;I:点号id
do 50 i=1,m
write(1,60)x(i),y(i),h0(i),hh(i),akn(i),akk(i),ckk(i),f(i),
* id(i)
50 continue
60 format(2f4.0,f6.0,4f7.2,f7.0,i3)
stop
end
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)