- 积分
- 4
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2013-3-9
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
运行没有错误,但是结果是array bounds exceeded
求高手求解!!!!!!
程序如下:
program mian
!声明变量
real::e !水汽压
real::t !干球温度
real::p !本站气压
real,parameter::t1=273.16
real::t0
integer,parameter::n=1500
real::tw(0:n) !湿球温度估算值序列
real::etw !饱和水汽压
real,parameter::a=8.15*10**(-4)
real::ej(0:n) !水汽压的计算值
real::err(0:n) !计算误差
real::ermin !计算误差的最小值
!输入变量
write(*,*)"水汽压为"
read(*,*)e
write(*,*)"干球温度为"
read(*,*)t
write(*,*)"本站气压为"
read(*,*)p
t0=273.15+t
tw(0)=t-15
do i=0,n
if(tw(i)>0)then
etw=10**(10.79574*(1-t1/t0)-5.02800*log(t0/t1)+1.50475*10**(-4)*(1-10**((-8.2969*(t0/t1-1))))+0.42873*10**(-3)*(10**(4.76955*(1-t1/t0))-1)+0.78614)
else
etw=10**((-9.09685)*(t1/t0-1)-3.56654*log(t1/t0)+0.87682*(1-t0/t1)+0.78614)
end if
ej(i)=etw-a*p*(e-etw)
err(i)=abs(e-ej(i))
tw(i+1)=tw(i)+0.01
end do
errmin=err(0)
do i=1,n
if(err(i)<err(i-1))then
errmin=err(i)
end if
twmin=tw(i)
end do
write(*,*)"湿球温度为"write(*,*)twmin
stop
end
有问题 希望指出来 本人fortran菜鸟。 或者有人可以编译湿球温度迭代算法可以联系我。QQ281381605 谢谢 注明:气象。 |
|