| 
 
	积分202贡献 精华在线时间 小时注册时间2011-7-17最后登录1970-1-1 
 | 
 
 
 楼主|
发表于 2013-10-24 12:43:01
|
显示全部楼层 
| lqouc 发表于 2013-10-24 12:23 别用那么大的数组,算个平均根本不用数组的。
求指点, 这是我的程序,怎么才能做到不用数组呢
 parameter(nl=30,nx=144,ny=73,nz=8,nt=365,nnt=291)
 real a(nx,ny,nz,nnt),q13(nx,ny,nz,nnt)
 real q(nx,ny,nz,nnt,nl),cha(nx,ny,nz,nnt)
 character*9 filename(nl)
 
 open(31,file='D:\tmax\huanliu_daily\sqtl\sj\u-2013.grd',
 &form='binary')
 !!!!!!2013年资料到第291天
 do t=1,nnt
 do k=1,nz
 do j=1,ny
 do i=1,nx
 read(31) q13(i,j,k,t)
 enddo;enddo;enddo;enddo
 close(31)
 
 open(11,file='D:\tmax\huanliu_daily\name.txt')
 do i=1,nl
 read(11,'(a9)')filename(i)
 enddo
 close(11)
 
 do nk=1,nl
 open(21,file='D:\tmax\huanliu_daily\sqtl\sj\u-
 &'//trim(filename(k))//'.grd',form='binary')
 do t=1,nnt
 do k=1,nz
 do j=1,ny
 do i=1,nx
 read(21) q(i,j,k,t,nk)
 enddo;enddo;enddo;enddo
 close(21)
 enddo
 
 do t=1,nnt
 do k=1,nz
 do j=1,ny
 do i=1,nx
 a(i,j,k,t)=0
 do nk=1,nl
 a(i,j,k,t)=a(i,j,k,t)+q(i,j,k,t,nk)
 enddo
 a(i,j,k,t)=a(i,j,k,t)/real(nl)
 enddo;enddo;enddo;enddo
 | 
 |