- 积分
- 93
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2018-3-19
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
想要画站点的温度数据,然而一直报错,也参考了网上一些类似报错的情况修改了不少,但仍然没法生成.map文件,跪求各位大佬指点迷津!
我的Fortran代码:
program main
integer,parameter::s=160,y=68
integer air(12,s,y),airclm(s,12),lat(s),lon(s),test(1126)
integer i,iy,im
character*2 mon
character(len=4) stid(s),testid(160)
do im=1,12
if(im.lt.10) then
write(mon(1:1),'(a)') '0'
write(mon(2:2),'(i1)') im
else
write(mon(1:2),'(i2)') im
endif
open(1,file='D:\Limeo\study\senior1\course\data.application\practice\data\station\t16'//mon//'.txt')
read(1,*)((air(im,i,iy),i=1,s),iy=1,y)
end do
open(2,file='D:\Limeo\study\senior1\course\data.application\practice\data\station\station.dat',status='old')
do i=1,s
read(2,*) lat(i),lon(i)
enddo
close(2)
do im=1,12
do i=1,s
do iy=1,y
airclm(i,im)=airclm(i,im)+air(im,i,iy)
end do
airclm(i,im)=airclm(i,im)/y
end do
end do
open(3,file='D:\Limeo\study\senior1\course\data.application\practice\data\station\air.grd',form='binary')
do i=1,s
write(stid(i),'(i4)') i
tim=0.0
nlev=1
nflag=1
write(3)stid(i),lat(i),lon(i),tim,nlev,nflag,airclm(i,1)
write(*,*)stid(i),lat(i),lon(i),tim,nlev,nflag,airclm(i,1)
enddo
tim=0.0
nlev=0
nflag=1
write(3)stid(i-1),lat(i-1),lon(i-1),tim,nlev,nflag
close(3)
end
fortran输出的结果:
站点数据的ctl:
dset c:\users\smliu\desktop\air.grd
dtype station
stnmap c:\users\smliu\desktop\air.map
undef -999.0
title the 160 station winter r anomaly
tdef 1 linear jan1984 1mo
vars 1
air 0 99 1 temperature
endvars
报错结果:
|
|