| 
 
	积分538贡献 精华在线时间 小时注册时间2013-1-21最后登录1970-1-1 
 | 
 
| 
本帖最后由 言深深 于 2014-4-5 17:42 编辑
x
登录后查看更多精彩内容~您需要 登录 才可以下载或查看,没有帐号?立即注册 
  
 我先把我的想法说下,txt文件里有一个时间序列的值,因为每年只有一个值,想把这个值铺满区域的每个格点中,得出一时间序列的区域文件,所以想把这个文件转成铺满整个区域格点的二进制文件,然后给其配ctl文件,然后用grads与其他资料作图。
 用下面的Fortran程序把一txt文件转成我想要的二进制grd格式文件,但是给grd文件配上ctl后,在grads里输出只有第一年有数据,其余年份全是0,不知道为什么,求解!谢谢
 
 program main
 integer,parameter::nx=72, ny=36, na=40
 real:: xinjifeng(na,ny,nx)
 integer ::year
 open(10,file='c:\grads19\data\xinjifeng.txt',form='formatted')
 open(20,file='c:\grads19\data\xinjifeng.grd',form='unformatted',status='replace',access='direct',recl=72*36*4)
 do i=1,na
 read(10,*)year,xinjifeng(i,1,1)
 do j=1,ny
 do k=1,nx
 xinjifeng(i,j,k)=xinjifeng(i,1,1)
 end do
 end do
 print*,xinjifeng(i,1,1)
 write(20,rec=i)((xinjifeng(i,j,k),k=1,nx),j=1,ny)
 end do
 1000 format('F')
 end
 
 txt文件是这样的
 
 
 | 
 |