爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 6095|回复: 12

[秀图] gs程序

[复制链接]

新浪微博达人勋

发表于 2016-3-21 22:03:26 | 显示全部楼层 |阅读模式

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

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

x
走过路过的学神学仙儿帮我看看这个gs好么???我是想实现一个ctl描述多个数据,然后读取输出。ctl和idx都木有问题,就是程序出现语法错误了,改了好几天还是这样,求救。。。SOS
GS:
'open E:\sj\grib1\1999\fnl_1999.ctl'
'set gxout fwrite'
i=1
while(i<=487)
'set lat 32 42'
'set lon 110 120'
'set z 1'
'set t 'i
'd RHprs'
'close 1'
i=i+1
endwhile
i=1
while(i<=487)   
'open E:\sj\grib1\1999\fnl_1999.ctl'
'grads2ascii RHprs E:\sj\grib1\1999\1999_RH.csv n %9.4'
i=i+1
endwhile
错误提示:
捕获.PNG
然后还有一个问题是,我提取的是相对湿度的信息,一次数据为什么会输出121个值呢???对气象数据物理参数也不怎么理解,正在学习中。。。

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

新浪微博达人勋

 楼主| 发表于 2016-3-21 22:04:50 | 显示全部楼层
我把ctl也附上吧
dset E:/sj/grib1/1999/fnl_1999%m2%d2_%h2_00.grib1.spasub.dong152823
options template
index E:/sj/grib1/1999/fnl_19990801_00_00.grib1.spasub.dong152823.idx
undef 9.999E+20
title E:/sj/grib1/1999/fnl_19990801_00_00.grib1.spasub.dong152823
*  produced by grib2ctl v0.9.12.5p33k
dtype grib 255
options yrev
ydef 16 linear 30.000000 1
xdef 21 linear 105.000000 1.000000
tdef 487 linear 00Z01aug1999 6hr
zdef 26 levels
1000 975 950 925 900 850 800 750 700 650 600 550 500 450 400 350 300 250 200 150 100 70 50 30 20 10
vars 33
HPBLsfc  0 221,1,0  ** surface Planetary boundary layer height [m]
RHprs 21 52,100,0 ** Relative humidity [%]
RH2m  0 52,105,2 ** 2 m Relative humidity [%]
RHsig995  0 52,107,9950 ** sig=.995 Relative humidity [%]
RHsg44_100  0 52,108,11364 ** sigma=0.44-1.00 layer Relative humidity [%]
RHsg72_94  0 52,108,18526 ** sigma=0.72-0.94 layer Relative humidity [%]
RHsg44_72  0 52,108,11336 ** sigma=0.44-0.72 layer Relative humidity [%]
RHsg33_100  0 52,108,8548 ** sigma=0.33-1.00 layer Relative humidity [%]
RH30_0mb  0 52,116,7680 ** 30-0 mb above gnd Relative humidity [%]
RHclm  0 52,200,0 ** atmos column Relative humidity [%]
TMPsfc  0 11,1,0  ** surface Temp. [K]
TMPprs 26 11,100,0 ** Temp. [K]
TMP1829m  0 11,103,1829 ** 1829 m Temp. [K]
TMP2743m  0 11,103,2743 ** 2743 m Temp. [K]
TMP3658m  0 11,103,3658 ** 3658 m Temp. [K]
TMP2m  0 11,105,2 ** 2 m Temp. [K]
TMPsig995  0 11,107,9950 ** sig=.995 Temp. [K]
TMPSoilT  0 11,112,10 ** 0-10 cm undergnd Temp. [K]
TMPSoilM  0 11,112,2760 ** 10-200 cm undergnd Temp. [K]
TMP30_0mb  0 11,116,7680 ** 30-0 mb above gnd Temp. [K]
TMPmwl  0 11,6,0 ** max wind level Temp. [K]
TMPtrp  0 11,7,0 ** tropopause Temp. [K]
VGRDprs 26 34,100,0 ** v wind [m/s]
VGRD1829m  0 34,103,1829 ** 1829 m v wind [m/s]
VGRD2743m  0 34,103,2743 ** 2743 m v wind [m/s]
VGRD3658m  0 34,103,3658 ** 3658 m v wind [m/s]
VGRD10m  0 34,105,10 ** 10 m v wind [m/s]
VGRDsig995  0 34,107,9950 ** sig=.995 v wind [m/s]
VGRD30_0mb  0 34,116,7680 ** 30-0 mb above gnd v wind [m/s]
VGRDmwl  0 34,6,0 ** max wind level v wind [m/s]
VGRDtrp  0 34,7,0 ** tropopause v wind [m/s]
VVELprs 21 39,100,0 ** Pressure vertical velocity [Pa/s]
VVELsig995  0 39,107,9950 ** sig=.995 Pressure vertical velocity [Pa/s]
ENDVARS

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

新浪微博达人勋

 楼主| 发表于 2016-3-21 22:14:12 | 显示全部楼层
然后输出来的都是n
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-3-22 08:15:05 | 显示全部楼层
n是什么鬼,你仔细看看grads2ascii 的用法
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-3-22 19:44:41 | 显示全部楼层
river 发表于 2016-3-22 08:15
n是什么鬼,你仔细看看grads2ascii 的用法

n/a          数据存到新建(n)的文件或追加(a)到老文件
表示把它存到指定的新文件夹呀
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-3-22 20:41:23 | 显示全部楼层
还有, 这个gs实现了487次循环,但是每次都输出121个值,而且487次的数据都一样{:eb303:}{:eb303:}
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-3-22 20:56:43 | 显示全部楼层
爱高斯拉普拉斯 发表于 2016-3-22 19:44
n/a          数据存到新建(n)的文件或追加(a)到老文件
表示把它存到指定的新文件夹呀

这是我看到的用法
使用方法:
*   ①使用前将 grads2ascii.gs 放到GrADS安装目录的lib目录下;
*   ②使用此函数前需用GrADS打开需要转换的数据文件;
*   ③用法:
*       grads2ascii expr filename [format numl numb ]
*          expr         要输出变量的变量名
*          filename     变量输出的ASCII文件路径及文件名
*          format       输出数据的格式,与C语言类似,默认是%g
*          numl         每个记录(行)输出的数据个数,默认是8
*          numb         每两个数据间插入的空格数,默认是1
*          u            输出'Undef'代替数据中的缺省值
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-3-22 21:11:12 | 显示全部楼层
river 发表于 2016-3-22 20:56
这是我看到的用法
使用方法:
*   ①使用前将 grads2ascii.gs 放到GrADS安装目录的lib目录下;

哦哦哦,谢谢你哈,我看到的还是兰溪2012年发的,估计是老版的。我直接把n去掉了,但是输出的都是一样的值是咋回事呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 成长值: 0
发表于 2016-3-23 02:28:39 | 显示全部楼层
爱高斯拉普拉斯 发表于 2016-3-22 21:11
哦哦哦,谢谢你哈,我看到的还是兰溪2012年发的,估计是老版的。我直接把n去掉了,但是输出的都是一样的 ...

是不是你得用aave函数?
你设定了lon, lat. 然后再展示一个变量,grads出的不应该是一个图而不是数字么。。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-3-23 07:49:44 | 显示全部楼层
爱高斯拉普拉斯 发表于 2016-3-22 21:11
哦哦哦,谢谢你哈,我看到的还是兰溪2012年发的,估计是老版的。我直接把n去掉了,但是输出的都是一样的 ...

'open E:\sj\grib1\1999\fnl_1999.ctl' 今天才看见,这句为什么要放在循环里?
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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