- 积分
- 452
- 贡献
-
- 精华
- 在线时间
- 小时
- 注册时间
- 2012-3-16
- 最后登录
- 1970-1-1
|
登录后查看更多精彩内容~
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
最近借助Python和wgrib提取了美国GFS资料的总降水量,用于其他计算和作图。琢磨尝试花费了一点时间,终于成功提取,现将关键代码分享出来。
import os
convert = "wgrib2\wgrib2 "+filename_gfs+" -match '(:APCP:surface:0-"+str(lday)+")' -text GFSrain1.txt"
os.system("%s" %(convert))
关于wgrib工具,我的使用习惯是在*.py文件的所在位置新建wgrib文件夹,然后将相关的库、可执行文件放置其中,代码体现为“wgrib2\wgrib2”。
filename_gfs为GFS文件名,lday为1、2、3…这样的数字,代码中“:APCPsurface:0-3”即指模式预报产品的3天累积降水量(这时对应的GFS文件应为72小时预报文件)。如果要计算48-72h预报区间的24小时累积降水量,则是用72小时累积降水量减去48小时累积降水量。
后续的具体读取代码如下:
gfsr1 = []
fgfs1 = open('GFSrain1.txt','r')
fgfs1.readline()
for line in fgfs1:
word = line.split()
gfsr1.append(word[0])
fgfs1.close()
gfsrain1 = np.array(gfsr1)
gfsrain1.resize(361, 720)
gfsrain1 = gfsrain1.astype(float)
这一段是代码效率并不高,如果有大神路过,还需指点一二。
|
|