爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 8289|回复: 5

求助: NCL 如何读取 位存放顺序取反序(byteswapped)的二进制 .grd文件

[复制链接]

新浪微博达人勋

发表于 2016-11-7 10:09:11 | 显示全部楼层 |阅读模式
NCL
系统平台: ubuntu14.04
问题截图:
问题概况: 想请教大家,如何用NCL读取位存放顺序取反序的二进制.grd文件,就是用grads打开的话,ctl文件在options有描述为byteswapped。目前我已经试过NCL的 cbinread,fbindirread,fbinread,fbinrecread等函数,cbinread和fbindirread这两个函数能读取.grd文件数据,但是变量的数值明显不对,缺省值设置都检查了,另外三个函数,读取的时候就报错了。.grd数据的ctl文件截图已上传
我看过提问的智慧: 看过
自己思考时长(天): 3

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

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

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

新浪微博达人勋

发表于 2016-11-7 13:09:21 | 显示全部楼层
这个问题没遇到过。。官网上提供了几种方法,http://www.ncl.ucar.edu/Applications/grads.shtml,感觉这一页应该能解决你这个问题,例子中提到的 setfileoption 这一句应该是关键
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-11-7 13:15:08 | 显示全部楼层
另外还查到一个和你问题很相似的帖子,https://www.ncl.ucar.edu/Support/talk_archives/2012/1095.html,也是byteswapped的问题
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-11-8 10:00:42 | 显示全部楼层
Trinity 发表于 2016-11-7 13:15
另外还查到一个和你问题很相似的帖子,https://www.ncl.ucar.edu/Support/talk_archives/2012/1095.html, ...

非常感谢你的回答,我认真看了你给我的两个链接,然后尝试在调用函数读取数据前,
setfileoption("bin","ReadByteOrder","BigEndian"),然后再调用fbinrecread读取二进制文件,变量的值就对了。上面还提到有个叫cdo的工具,能根据ctl文件把grads二进制文件转成nc格式,我还没试。总之,谢谢啦!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-11-8 11:13:04 | 显示全部楼层
DevilMaySmile 发表于 2016-11-8 10:00
非常感谢你的回答,我认真看了你给我的两个链接,然后尝试在调用函数读取数据前,
setfileoption("bin", ...

嗯 解决了就好,CDO是个很好用的工具呢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-11-9 10:04:57 | 显示全部楼层
Trinity 发表于 2016-11-8 11:13
嗯 解决了就好,CDO是个很好用的工具呢

嗯,有空再研究研究这个工具
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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