爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 35469|回复: 8

[图形美化] grads绘制-180,180范围图

[复制链接]

新浪微博达人勋

发表于 2021-4-10 11:41:17 | 显示全部楼层 |阅读模式
1金钱
大佬们打扰,求教一下,grads绘制-180 180 范围的波通量-180 0 范围内的波通量无法显示出来,怎么解决,谢谢啦,新人只有两个金币,望大佬帮忙

4b43a7b0abc62768bec4142dd8c5322.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2021-4-10 14:54:46 | 显示全部楼层
你代码里有一句set lon -5 365,改成set lon -185 185,再试试?
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-10 21:08:23 | 显示全部楼层
伽蓝鸟 发表于 2021-4-10 14:54
你代码里有一句set lon -5 365,改成set lon -185 185,再试试?

您好,还是不行啊
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2021-4-10 23:39:32 | 显示全部楼层
峰少 发表于 2021-4-10 21:08
您好,还是不行啊

那你好歹把代码贴出来吧。。这样是打算让我们盲猜嘛。。
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-11 09:06:07 | 显示全部楼层
'reinit'

* change the directory name
* u
'sdfopen F:\climatedata\uwnd.mon.mean.nc'
* v
'sdfopen F:\climatedata\vwnd.mon.mean.nc'
* height
'sdfopen F:\climatedata\hgt.mon.mean.nc'

*  gas constant
'define Ra=290'
* earth radius
'define a=6400000'
*角度制转弧度制
'define dlat = cdiff(lat,y)*3.1416/180'
'define dlon = cdiff(lon,x)*3.1416/180'

'define coslat = cos(lat*3.1416/180)'
'define sinlat = sin(lat*3.1416/180)'
* Coriolis parameter
'define f = 2*7.24/100000*sinlat'
'define f0 = 2*7.24/100000*sin(43*3.1416/180)'
'define g=9.8'

* unit [hPa] 200
'set lev 200'

* For drawing polar projection map  
'set lon 0  360'
'set lat 0 90'

* making basic state (climatology)
'define uclm = smth9((ave(u.1,time=jun1981,time=jul2010,1yr)+ave(u.1,time=jul1981,time=jun2010,1yr))/2)'
'define vclm = smth9((ave(v.2,time=jun1981,time=jul2010,1yr)+ave(v.2,time=jul1981,time=jun2010,1yr))/2)'
'define zclm =  smth9((ave(z.3,time=jun1981,time=jul2010,1yr)+ave(z.3,time=jul1981,time=jun2010,1yr))/2/g)'
* anomalies
'define zano=smth9(ave(z.3,time=jun2020,time=jul2020)/g))-zclm'
*去除纬向
'define za=zano-ave(zano,lon=0,lon=360,-b)'

* QG stream function
'define psia=g*za/f'


*psia lat mean
'define psiam=ave(psia,lon=0,lon=360,-b)'

* magnitude of basic state wind speed
'define magU = mag(uclm,vclm)'

'define dpsidlon = cdiff(psia,x)/dlon'
'define ddpsidlonlon = cdiff(dpsidlon,x)/dlon'

'define dpsidlat = cdiff(psia,y)/dlat'
'define ddpsidlatlat = cdiff(dpsidlat,y)/dlat'
'define ddpsidlatlon = cdiff(dpsidlat,x)/dlon'

'define termxu = dpsidlon*dpsidlon-psia*ddpsidlonlon'
'define termxv = dpsidlon*dpsidlat-psia*ddpsidlatlon'
'define termyv = dpsidlat*dpsidlat-psia*ddpsidlatlat'

* "p" is normalized by 1000hPa
'define coeff=coslat*(lev/1000)/(2*magU)'
*x-component
*'define px = coeff/(a*a*coslat)*( uclm*termxu+ vclm/coslat*termxv)'
* corrected on 14th Sep. 2015: Thanks to Yan Jin.
'define px = coeff/(a*a*coslat)*( uclm*termxu/coslat + vclm*termxv)'
*y-component
'define py = coeff/(a*a)*( uclm/coslat*termxv + vclm*termyv)'

'set parea 0.5 5.5  0 8.5'
'set lon  180 360'
'set lat 0 90'
'set ccolor 1'
'set cint 10'
'set gxout contour'
'set map 0'

* QG stream-function
*'set black -0.1 0.1'
*'set cthick 20'
*'set cint 2000000'
*'d maskout( (psia-psiam),  abs(lat)-10)'
'd za'


* horizontal wave-activity flux
'set arrscl 0.6 10 '
'set arrowhead -0.3'
* maskout regions where
* (i) QG approximation is supposed to be invalid (lower latitudes)
* (ii) westerly wind speed is weak or negative
*'d skip(px,2,2);maskout(maskout( py , abs(lat)-10),magU-5)'
'd skip(px,30,20);maskout(maskout( py , abs(lat)-10),magU-5)'

'set parea 5.5 10.5  0 8.5'
'set lon  0 180'
'set lat 0 90'
'set gxout contour'
'set ccolor 1'
'set mpdset lowres'
'set map 1'
'set ylab off'

* QG stream-function
*'set black -0.1 0.1'
*'set cthick 20'
*'set cint 2000000'
*'d maskout( (psia-psiam),  abs(lat)-10)'
*'d za'


* horizontal wave-activity fluza
'set arrscl 0.6 10 '
'set arrowhead -0.3'
* maskout regions where
* (i) QG approximation is supposed to be invalid (lower latitudes)
* (ii) westerly wind speed is weak or negative
*'d skip(px,2,2);maskout(maskout( py , abs(lat)-10),magU-5)'
'd skip(px,30,20);maskout(maskout( py , abs(lat)-10),magU-5)'
'set parea 0.5 10.5  0 8.5'
'set lon -180 180'
'set ccolor 1 '
'set xlab off'
'd za'


'draw title  WAF in Jun and July,meanly,2020'
'printim F:\200hPajunjulqvchuweixiang2020-TN01.png white'
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-11 09:08:19 | 显示全部楼层
我d过psia,其实在psia计算的时候就会产生问题显示不全,目前的代码是通过虚页设置画了两张图拼了起来,但是0度有坐标轴线
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-11 09:10:42 | 显示全部楼层
F:\200hPajunjulqvchuweixiang2020-TN01.png
200hPajunjulqvchuweixiang2020-TN01.png
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-11 09:22:05 | 显示全部楼层
伽蓝鸟 发表于 2021-4-10 23:39
那你好歹把代码贴出来吧。。这样是打算让我们盲猜嘛。。

麻烦大佬了
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-11 09:28:42 | 显示全部楼层
已经自己解决,问题出在了有几个变量定义之前未选择-180 180 范围,系统默认是0 360 ,自己又将问题复杂化,谢谢论坛里的大佬
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

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

本版积分规则

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

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

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