立即注册 登录
气象家园 返回首页

lifestyle http://bbs.06climate.com/?12776 [收藏] [复制] [分享] [RSS]

日志

GrADS读取JRA-55数据的一个问题及解决办法 Error opening pdef file: TL319.pdef Ope ...

热度 1已有 724 次阅读2016-8-17 16:20 |个人分类:科研点滴| GrADS, JRA-55, Invalid, pdef, all, GrADS, Invalid, GrADS, Invalid, GrADS, Invalid, GrADS, Invalid

11月3日最新发现。今天发现windows7以后是可以实现用^代替当前路径这个功能的,但是需要以管理员权限打开grads软件。
设置默认以管理员权限运行也很简单。在grads快捷方式下右键-“快捷方式”-“高级”-勾选“以管理员权限运行”。
从此可以在ctl文件里使用^代替当前路径了,因缺思婷!
以管理员权限运行有个弊端,不能直接把文件拖到grads的命令窗口来运行了:(
原本以为多么复杂的问题,结果是管理员权限搞的。问题总算解决了, Excited!
-------------------------------------------------------------------------------------------------------------------
经清风大侠提醒,参考了论坛帖子后,发现这其实是环境变量设置的问题,参考此链接
http://bbs.06climate.com/forum.php?mod=viewthread&tid=17116
GADDIR C:\OpenGrADS\Classic\data
GASCRP C:\OpenGrADS\Classic\scripts

百度经验有贴子讲,添加环境变量设置的,我找了许久,也设置了选项。试了几个版本(1.8sl11,1.9.0-rc1,2.0)。不幸,都不能实现^字符代替当前目录的特性,而这个特性在ubuntu系统上仍然可以用。事实上, GADDIR,GASCRP和 GAUDFT应该是GrADS在linux下的环境变量。
我在windows7下试着加了GRADS_HOME, GRADS_DIR这两个变量,它们的路径我是根据安装位置估计设置的。修改过后仍然没有作用。前面给出的链接的帖子里有人在windows下貌似通过修改实现了这个特性,我试着修改了,并且分别在管理员/非管理员情况下测试过,都没有实现。

关于ctl文件里用^代替路径,这个特性在本科上课时老师说过,而且在实验课上我也证实了确实可用,当时计算机的系统环境忘记了。后来上课实习,发现^的功能失效了。我估计可能是系统的原因。本科刚学GrADS时,学校的计算机是装的XP系统,到了后来,学校更新了一些设备,新机器多是装的windows7系统,可能是系统的差异。

如哪位好心人在windows下实现了这个特性,请告诉我。谢谢。
=======================分=====割======线=========================
日本的JRA-55再分析资料在windows下用GrADS读取遇到了困难 Error opening pdef file: TL319.pdef  Open Error: Invalid pdef record.

这个问题一年前就遇到过,直到今天才解决。问题在于,ctl 文件里面的路径应当是绝对路径。默认官网下载的ctl文件里面的path是前面加^符号的
后来又做了一个实验,发现如下结果
情况一: 仅有pdef 的路径改成绝对路径  现象: 
Error opening pdef file: TL319.pdef  Open Error: Invalid pdef record.
情况二: pdef 和index的路径改成了绝对路径  现象:提示不出错,但是在图上显示变量时,出现了Cannot contour grid - all undefined values
情况三: dset ,index ,pdef的路径都改成了绝对路径 现象:结果正确!
我觉得,出现Cannot contour grid - all undefined values提示的一个可能的原因是dset路径不是绝对路径

GrADS 下面ctl文件前面可以用^代替当前路径,这个本科时老师就说过。但是我也多次发现在windows7下面行不通(XP系统没试过,试过也可能忘了)。我试过在ubuntu下面是可以的。这可能是windows系统的bug(或者锅应该给GrADS?)总之,实践出真知,在此记下,盼遇到同问题的人看到此文可以少走弯路。(PS:不得不佩服日本气象厅的办事效率,每封邮件都在一小时之内回复)


=============================
新发现10.17
今天又有了一个新发现,从以管理员身份启动命令提示符,输入grads启动,可以打开ctl(该ctl文件的路径是用^代替的相对路径,把ctl和idx所在文件夹 路径加入当前窗口临时的PATH环境变量)。
另外,对于GRIB文件grib2ctl.exe出现的拒绝访问情况,目前的解决方法是:管理员身份启动命令提示符,再把当前环境路径加入当前窗口临时的PATH环境变量。由于我在C:/windows/下也拷了cygwin1.dll,wgrib,wgrib2等文件,所以暂不清楚是哪种方法成功了。

发表评论 评论 (5 个评论)

回复 mofangbao 2016-8-27 08:30
当你正确设置了环境变量后Win下也可以用^的
回复 chinagod 2016-8-27 16:36
mofangbao: 当你正确设置了环境变量后Win下也可以用^的
是在系统的Path环境变量里添加吗?我用的是2.0.1家园整合版的,环境变量应该没有问题,命令行cmd窗口输入grads也可以启动。我检查了一下系统环境变量,Path里面确实添加了环境变量C:\OpenGrADS\Contents\Cygwin\Versions\2.0.1.oga.1\i686
回复 mofangbao 2016-8-27 16:37
GRADS_HOME还有GRADS_DIR也添加了试试,按照GrADS官网
回复 chinagod 2016-8-27 16:39
mofangbao: GRADS_HOME还有GRADS_DIR也添加了试试,按照GrADS官网
好的,多谢版主!
回复 chinagod 2016-11-3 09:59
mofangbao: GRADS_HOME还有GRADS_DIR也添加了试试,按照GrADS官网
今天发现用管理员权限打开grads就可以实现这个功能了。

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 立即注册

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

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

返回顶部