- 积分
 - 8953
 
	- 贡献
 -  
 
	- 精华
 
	- 在线时间
 -  小时
 
	- 注册时间
 - 2013-3-17
 
	- 最后登录
 - 1970-1-1
 
 
 
 
 
 
 | 
	
 
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册 
 
 
 
x
 
 本帖最后由 绯宜物语 于 2014-8-18 18:52 编辑  
 
Fortran菜鸟……求助一下大家!!!刚开始入门,很纠结! 
现在有一个grd文件,是用grads转的nc资料,nc资料是1900-2009逐月的2米气温。转的GRD数据是1900-2009年1320个月的逐月全球平均2米气温资料。想要做出1900-2009年逐年平均的资料,要怎么写这个程序呀!!!不太会写循环呀,大家帮帮忙吧……非常感谢!!! 
这是写的gs: 
'sdfopen f:\nc\1.nc' 
'set gxout fwrite' 
'set fwrite f:\1gc.grd' 
'set x 1' 
'set y 1' 
'set z 1 1' 
i=1 
while(i<=1320) 
    'set t 'i'' 
'define var=aave(t2m,x=1,x=721,y=1,y=361)' 
'set x 1 721'  
'set y 1 361' 
'd var' 
i=i+1 
endwhile 
'disable fwrite' 
; 
 
之后写了Fortran程序, 
program main 
integer,parameter(i=1320,t=110) 
integer ii,it 
real var(i),year(t)  
open(1,file='f:\f\1gc.grd',status='old',form='binary') 
do ii=1,i 
do it=1,t 
read(1) var(ii) 
year(it)=(var(t*12-11)+var(t*12-10)+var(t*12-9)+var(t*12-8)+var(t*12-7)+var(t*12-6)+var(t*12-5)+var(t*12-4)+var(t*12-3)+var(t*12-2)+var(t*12-1)+var(t*12))/12 
enddo 
enddo 
open(2,file='f:\1gc.txt',status='new') 
write(*,*) year 
close(1) 
close(2) 
end 
有错误,要怎么写才对啊?
 
1gc.grd
(5.16 KB, 下载次数: 2)
 |   
 
 
 
 |