爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
123
返回列表 发新帖
楼主: ┏_(゜ω゜)=

(已解决)季节平均,我这样子是对的吗?

[复制链接]
 楼主| 发表于 2014-4-27 14:10:44 | 显示全部楼层
river 发表于 2014-4-27 13:56
一共就两种,哪有第三种更好呢···

采用的你的建议,感觉这个好点
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-4-28 10:06:15 | 显示全部楼层
本帖最后由 ┏_(゜ω゜)= 于 2014-4-28 22:51 编辑

因为我程序很烂,后续还有季节处理。。。。最后我采用了最笨的办法,先把所有的季节的nc的文件放在了一个文件夹上,在用批量改名软件(拖把更名器)统一改名,这样就容易用grads转化成dat文件了,最后再分别做季节处理,最后这种方法画出来的图和前面两个大致画的图有有些不同

如果文件多的话,我觉得可以用fortran把季节数据提取出来,然后最平均,不过fortran程序很烂,所以就麻烦点了

密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-5-1 22:38:50 | 显示全部楼层
本帖最后由 ┏_(゜ω゜)= 于 2014-5-1 23:12 编辑

    今天最后验证了一下,发现我最初的程和我最后把春季的降水提取数据做出来的图是一样的,纠结了这么久,结果发现是殊途同归{:eb303:}                     
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-5-1 22:48:00 | 显示全部楼层
本帖最后由 ┏_(゜ω゜)= 于 2014-5-1 23:15 编辑

想不通,为什么结果不一样,所以最后把所有的程序贴出来一下本次的问题是192个月,16年的数据,我把春季的季平均值画出来。。。前几种按照论坛的方法。。。
第一种程序,提示有错,但可以画图
'reinit'
'open G:\jiangshui\zzz.ctl'
'enable print G:\jiangshui\1.gmf'
'set gxout shaded'
'set lon 100 140'
'set lat 0 30'
'set z 1'
'set t 1'

a1=3
i=a1+2
while(a1<=183)
'define a2=ave(sfcp,t='a1',t='i')'
'd a2'
a1=a1+12
endwhile

'run cbarn.gs'
'print'
'disable print'
'reinit'






1.png
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-5-1 22:57:17 | 显示全部楼层
本帖最后由 ┏_(゜ω゜)= 于 2014-5-1 23:09 编辑

第二种程序

'reinit'
'open G:\jiangshui\zzz.ctl'
'enable print G:\jiangshui\2.gmf'
'set gxout shaded'
'set lon 100 140'
'set lat 0 30'
'set z 1'
'set t 1'
a1=3
while(a1<=183)
'define a2=ave(sfcp,t='a1',t='a1'+2)'
'd a2'
a1=a1+12
endwhile

'run cbarn.gs'
'print'
'disable print'
'reinit'
2.png
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-5-1 23:01:40 | 显示全部楼层
本帖最后由 ┏_(゜ω゜)= 于 2014-5-1 23:09 编辑

第三种方式画的图
'reinit'
'open G:\jiangshui\zzz.ctl'
'enable print G:\jiangshui\3.gmf'
'set gxout shaded'
'set lon 100 140'
'set lat 0 30'
'set z 1'
'set t 1'
a1=3
while(a1<=183)
'define a2=ave(sfcp,t='a1',t='a1+2')'
'd a2'
a1=a1+12
endwhile

'run cbarn.gs'
'print'
'disable print'
'reinit'

3.png
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-5-1 23:04:17 | 显示全部楼层
这就是我帖子开始说到的程序,原理正确
'reinit'
'open G:\jiangshui\zzz.ctl'
'enable print G:\jiangshui\4.gmf'
'set gxout shaded'

'set lon 100 140'
'set lat 0 30'
'set z 1'
'set t 1'
'define a=ave(sfcp,t=3,t=183,12)+ave(sfcp,t=4,t=184,12)+ave(sfcp,t=5,t=185,12)'
' define b=a/3'
'd b'

'run cbarn.gs'
'print'
'disable print'
'reinit'
4.png
密码修改失败请联系微信:mofangbao
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2014-5-1 23:08:31 | 显示全部楼层
最后,我把192个数据,春季的放一个文件夹,夏季的放一个文件夹,再批量统一改名成123。。。的,然后得到春季总的数据,夏季总的数据,,,,在画平均图,,,

'reinit'
'open G:\zongjiangshui\chunji.ctl'
'enable print G:\jiangshui\6.gmf'
'set gxout shaded'

'set lon 100 140'
'set lat 0 30'
'set z 1'
'set t 1'

'd ave(sa,t=1,t=48)'


'run cbarn.gs'
'print'
'disable print'
'reinit'
得到的图和上一幅图一样
5.png
密码修改失败请联系微信:mofangbao
发表于 2014-5-16 22:51:11 | 显示全部楼层
楼主,您好,我想请问一下,你上面的第一种和第二种方法,求的好像是每年夏季的均值吧?我这样设置之后每年的值都会出来一张图,请问怎么才能画192个月所有夏季的均值场呢?我在while循环里面设置不出来
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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