爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 10165|回复: 3

[图形美化] 输出nc文件只有最后一个时次的数据

[复制链接]

新浪微博达人勋

发表于 2017-3-10 21:00:06 | 显示全部楼层 |阅读模式
1金钱
我想计算2014年1月1日至9日,与2010、2011、2012三年同样时间段平均值的差值,并输出。可是我写的却是只有最后一次的结果,gs文件如下:
'reinit'
'sdfopen C:\OPenGrADS\olr.day.mean.nc'
'set sdfwrite f:\cz.nc'
dy=1
Mo=Jan
'set lat 40'
'set lon 25'
'set time 00z01Jan2014 00z09Jan2014'
while(dy<=9)
'set time 00z01Jan2014 00z09Jan2014'
'set lat 40'
'set lon 25'
'x1y1=olr(time=00z0'dy''Mo'2010)+olr(time=00z0'dy''Mo'2011)'
'x1y2=olr(time=00z0'dy''Mo'2011)+olr(time=00z0'dy''Mo'2012)'
'x1y3=olr(time=00z0'dy''Mo'2010)+olr(time=00z0'dy''Mo'2012)'
'meanxy=(x1y1+x1y2+x1y3)/6'
'dert=olr(time=00z0'dy''Mo'2014)-meanxy'
#'set gxout line'
'sdfwrite dert'
dy=dy+1
endwhile
;
烦请大家指点,不胜感激!

密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2017-3-10 21:02:15 | 显示全部楼层
麻烦大家帮帮忙,倒腾了好久倒腾不出来
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2017-3-11 14:38:52 | 显示全部楼层
'x1y1=olr(time=00z0'dy''Mo'2010)+olr(time=00z0'dy''Mo'2011)'
'x1y2=olr(time=00z0'dy''Mo'2011)+olr(time=00z0'dy''Mo'2012)'
'x1y3=olr(time=00z0'dy''Mo'2010)+olr(time=00z0'dy''Mo'2012)'
'meanxy=(x1y1+x1y2+x1y3)/6'
'dert=olr(time=00z0'dy''Mo'2014)-meanxy'
这几句,前面加define,例如 'define dert=olr(time=00z0'dy''Mo'2014)-meanxy'
还有多嘴一句,求meanxy,为啥定义x1y1,x1y2,x1y3,三年数据各加两遍再除6啊,直接加一遍除以3就是了呗。。。。
另外,我不是很明白grads写nc文件,一般我写dat文件,都直接‘d dert’就好
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2017-3-13 09:08:31 | 显示全部楼层
嗯嗯,多谢你的帮助,主要是写dat文件我不知道ctl文件怎么写,倒腾了半天也弄不出来,刚开始学grads
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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