爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 9030|回复: 38

[分享资料] gs文件中define的一个问题,求大神指教啊

[复制链接]

新浪微博达人勋

发表于 2013-3-27 20:50:52 | 显示全部楼层 |阅读模式

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

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

x
最近在用NCAR/NCEP的再分析资料计算青藏高原的热源,遇到这样一个问题:
比如根据降水率资料计算1981-2010这30年平均的6月凝结潜热(资料:1981.1-2010.12降水率的月平均资料,192*94高斯网格),已知凝结潜热系数为2.5E6J/kg。
编写的gs文件如下:
'reinit'
'sdfopen e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12monprate.nc'
'enable print e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12junelhtfl.gmf'
'set grads off'
'set lon 60 130'
'set lat -10 50'
'define lp=prate*2500000'
'set gxout contour'
'set cthick 6'
'set ccolor 1'
'd ave(lp,t=6,t=360,12)'
'draw title The monthly mean distribution\of latent heating in June,1981-2010'
'print'
'disable print'
'c'
;

但发现,如果将其中'define lp=prate*2500000'删掉,将'd ave(lp,t=6,t=360,12)'改为
'd ave(prate*2500000,t=6,t=360,12)'
两者的结果不一样,这是为什么呢?哪个是对的呢?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-3-27 21:22:23 | 显示全部楼层
我觉得最好不要在ave里*2500000
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-3-27 21:39:33 | 显示全部楼层
在set lat 后面加上set z   set t试一下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-3-27 22:11:00 | 显示全部楼层
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-3-27 22:15:18 | 显示全部楼层
ave里面不可以代表达式吗
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-3-27 22:38:21 | 显示全部楼层
小胖子 发表于 2013-3-27 22:15
ave里面不可以代表达式吗

可以带表达式,但是define还有用fwrite输出二进制的时候一定要把x,y,z,t都设置,也就是说涉及到计算的时候最好都写上,不然会出错的。画图的时候不设置没问题。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-3-27 23:11:13 | 显示全部楼层
Aires 发表于 2013-3-27 22:38
可以带表达式,但是define还有用fwrite输出二进制的时候一定要把x,y,z,t都设置,也就是说涉及到计算的时候 ...

又有另外一个问题,我按照版主所说的方法,计算大气净辐射通量,发现在青藏高原北部附近有明显的正值中心,这跟实际情况差的有点大啊,这是怎么回事呢?
gs文件如下:
'reinit'
'sdfopen e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12mondlwrf-sfc.nc'
'sdfopen e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12mondswrf-sfc.nc'
'sdfopen e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12monulwrf-sfc.nc'
'sdfopen e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12monuswrf-sfc.nc'
'sdfopen e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12mondswrf-ntat.nc'
'sdfopen e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12monulwrf-ntat.nc'
'sdfopen e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12monuswrf-ntat.nc'
'enable print e:\TP-Q1Q2\1981-2010mon.mean\1981.1-2010.12juneRnet.gmf'
'set grads off'
'set lon 0 360'
'set lat -86.6531 86.6531'
‘set z 1’
'set t 1 360'
'define Rnet=-dlwrf.1-dswrf.2+ulwrf.3+uswrf.4+dswrf.5-ulwrf.6-uswrf.7'
'set lon 60 130'
'set lat -10 50'
'set gxout contour'
'set cthick 6'
'set ccolor 1'
'set cint 20'
'd ave(Rnet,t=6,t=360,12)'
'draw title The monthly mean distribution\of net radiative heating in June,1981-2010'
'print'
'disable print'
'c'
;
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2013-3-28 07:11:12 | 显示全部楼层
小胖子 发表于 2013-3-27 23:11
又有另外一个问题,我按照版主所说的方法,计算大气净辐射通量,发现在青藏高原北部附近有明显的 ...

不是所有人都知道这个实际情况吧,所以楼主可否说明一下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2013-3-28 08:53:06 | 显示全部楼层
river 发表于 2013-3-28 07:11
不是所有人都知道这个实际情况吧,所以楼主可否说明一下

整层大气的净辐射通量=大气层吸收的短波辐射净通量+地面向上长波辐射净通量+地面和大气层向宇宙空间逸出的长波辐射净通量,就年平均而言,大气辐射收支净通量总是负值。可是,这里画出来的图上出现了明显的正值中心,而且对比文献中的图,出入也是很大,不知道原因在哪里啊?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2013-3-28 08:57:46 | 显示全部楼层
说句题外话,为啥你这里
‘set z 1’
第一个引号是中文的?
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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