爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 10031|回复: 5

[脚本编辑] 求教水汽通量哪里错了

[复制链接]

新浪微博达人勋

发表于 2021-1-9 18:43:43 | 显示全部楼层 |阅读模式

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

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

x
做水汽通量,找了好些程序,然后自己修改的写了一个,但是出来的距平值是e-12量级,不知道对不对,感觉不对,但是找不到错误,希望高手指点下。
下面的是GRADS做的距平数据的程序
'reinit'
'sdfopen d:\yy\air.mon.mean.nc'
'sdfopen d:\yy\rhum.mon.mean.nc'
'sdfopen d:\yy\uwnd.mon.mean.nc'
'sdfopen d:\yy\vwnd.mon.mean.nc'
'set gxout fwrite'
'set fwrite d:\850.grd'
nt=1
while(nt<=874)
'set t 'nt''
'set x 1 144'
'set y 1 73'
'set lev 850'
'define p=lev'
'define e=exp(17.67*(air.1-273.15)/(air.1-29.65))*(rhum.2/100)*6.112'
'define q=622*e/(p-0.378*e)'
'define q1=uwnd.3*q/9.8'
'define q2=vwnd.4*q/9.8'
'define uv=mag(q1,q2)'
nt=nt+1
endwhile
'set x 1 144'
'set y 1 73'
'define t1 = ave(uv,time=Jun1962,time=AUG1962)'


'define t2 = ave(uv,time=Jun1968,time=AUG1968)'
'define t3 = ave(uv,time=Juln973,time=AUG1973)'


'define t4 = ave(uv,time=Jun1977,time=AUG1977)'
'define t5 = ave(uv,time=Jun1981,time=AUG1981)'


'define t6 = ave(uv,time=Jun1983,time=AUG1983)'


'define t7 = ave(uv,time=Jun1992,time=AUG1992)'
'define t8 = ave(uv,time=jun1999,time=aug1999)'

'define t9 = ave(uv,time=jun2009,time=aug2009)'
'define t10 = ave(uv,time=jun2016,time=aug2016)'
'define uvave = (t1+t2+t3+t4+t5+t6+t7+t8+t9+t10)/10'




'define a1=ave(uv,t=162,t=874,12)'
'define a2=ave(uv,t=163,t=874,12)'
'define a3=ave(uv,t=164,t=874,12)'
*'define a4=ave(uvq,t=402,t=762,12)'
'define sua=uvave-(a1+a2+a3)/2'
*'define sua=(a1+a2+a3)/2'
'd sua'
'disable fwrite'
'reinit'

得到的结果画图,不知道哪里不对,求大神指教
789.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2021-1-10 09:49:32 | 显示全部楼层
自己顶一下
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2021-1-10 15:12:07 | 显示全部楼层
图感觉挺正常的,量级可能跟单位有关
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-1-10 16:56:20 | 显示全部楼层
我看图也是觉得好像是对的,但是这个量级实在是太大了,所以就感觉是不是哪里不对
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

发表于 2021-1-13 22:49:05 | 显示全部楼层
本帖最后由 kaiofchina 于 2021-1-13 22:52 编辑

我也是新手,你前边的循环,试试改成下边这样。

'set x 1 144'
'set y 1 73'
'set t 1 874’
'set lev 850'
'define p=lev'
'define e=exp(17.67*(air.1-273.15)/(air.1-29.65))*(rhum.2/100)*6.112'
'define q=622*e/(p-0.378*e)'
'define q1=uwnd.3*q/9.8'
'define q2=vwnd.4*q/9.8'
'define uv=mag(q1,q2)'

'set x 1 144'
'set y 1 73'
‘set t 1’
'define t1 = ave(uv,time=Jun1962,time=AUG1962)'
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-1-14 10:14:04 | 显示全部楼层
kaiofchina 发表于 2021-1-13 22:49
我也是新手,你前边的循环,试试改成下边这样。

'set x 1 144'

好,我试试,谢谢
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

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