爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 4517|回复: 0

[求助] 构建时间场的问题

[复制链接]

新浪微博达人勋

发表于 2017-3-10 12:41:35 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 反战Z 于 2017-3-10 12:55 编辑

想算降水在时间域上的回归,需要建立一个时间场,目标是建立128*72格点在55年内的场。
但是我建立的场感觉做完以后是55层高度?
程序如下:
program  xx
implicit none
integer:: i,j,y
integer::a(128,72,1),b(128,72,55)

a(:,:,:)=1  !对a整层格点赋值为1
b(:,:,1)=1  !对b第一层格点赋值为1
do y=1,54
b(:,:,y+1)=b(:,:,y)+a(:,:,1)
end do

open(12,file='G:\55year\1961-2015\1961-2015time.dat',form='unformatted',access='direct',recl=128*72*55)
do y=1,55
write(12,rec=y) ((b(i,j,y),i=1,128),j=1,72)
end do
close(12)

print*,b(:,:,40)  !此处检查数组的真确性
pause
stop
end


得出的DAT是没有问题的,每一层都是对的,
CTL如下:
dset G:\55year\1961-2015\1961-2015time.dat
undef -9999.0
xdef 128 linear 72 0.5
ydef 72 linear 18 0.5
zdef 1 linear 0 1
tdef 55 linear jun1961 1yr
vars 1
year 1 99***
endvars


感觉我这里是不是zdef 不该这么写,读的数全为0,我感觉是把zdef给读了出来,
我在想怎么该才能让系统认为55层是T而不是Z。
希望大家帮助下,谢谢了。

密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表