- 积分
- 1646
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-7-11
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
为了计算北极海冰面积,先将海冰密集度的nc文件转换成grd文件
nc_grd.gs:
'reinit'
'sdfopen f:\HadISST_ICE\HadISST_ice.nc'
'set gxout fwrite'
'set fwrite f:\HadISST_ICE\area.grd'
i=1
while(i<=1701)
'set x 1 360'
'set y 91 180'
'set t 'i
'set z 1'
'd sea_ice_area_fr'
i=i+1
endwhile
'close 1'
'disable fwrite'
用fortran计算海冰总面积:
IMPLICIT NONE
INTEGER,PARAMETER::NX=360,NY=90,NT=1701
REAL FR(NX,NY,NT)
REAL S(NT)
INTEGER I,J,K,P
OPEN(10,FILE='area.grd',FORM='UNFORMATTED',STATUS='REPLACE',ACCESS='DIRECT',RECL=360*90)
OPEN(20,FILE='tot_area.grd',FORM='UNFORMATTED',STATUS='REPLACE',ACCESS='DIRECT',RECL=360*90)
OPEN(30,FILE='area.txt',FORM='FORMATTED')
P=1
DO K=1,NT
DO J=1,NY
DO I=1,NX
READ(10,REC=P) FR(I,J,K)
P=P+1
ENDDO
ENDDO
ENDDO
DO K=1,NT
S(K)=0.0
DO J=1,NY
DO I=1,NX
IF (FR(I,J,K)>0.0) THEN
S(K)=S(K)+12351.77853*COS((J-0.5)*3.14159/180)*FR(I,J,K)
ENDIF
ENDDO
ENDDO
ENDDO
P=1
DO K=1,NT
WRITE(30)S(K)
WRITE(20,REC=P)S(K)
P=P+1
ENDDO
CLOSE(20)
CLOSE(30)
STOP
END
运行后fortran报错
run-time error F6414:open(area.grd) access not allowed
以为是area.grd中数据太大(360*90*1701),就把时次1701改成了10,但还是同样的错误。。
请教是为什么啊?
|
|