用Grads处理GRIB格式文件的准备_2007-07-12

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Grads处理GRIB格式文件的准备

LYanbing

2007-7-2初稿,2007-7-12修改1 开场说明

WHAT IS GRIB?

GRIB (GRIdded Binary) is an international, public, binary format for the efficient storage of meteorological/oceanographic variables. Typically, GRIB data consists of a sequence of 2-D (lon,lat) chunks of a (in most general sense) 4-D variable (e.g., u comp on the wind = f(lon,lat,level,time)). The sequence is commonly organized in files containing all variables at a particular time (i.e., 3-D (lon,lat,level) volume).

大气所的NCEP再分析资料使用这种格式。

这里针对6小时一次的1°×1°,26层数据来处理。

Grads中识别路径的方式基本为Unix的方式,即路径中用斜杠/,而不是反斜杠\,cmd中也支持这种方式,所以,使用Grads及其相关组件时,指定路径用斜杠/会很方便。

Grads中用!pwd可以看到当前目录,C:盘对应/cygdrive/c/,d:盘对应/cygdrive/d/。cmd中用pwd看到的也是如此,cygdrive是怎么来的?与cygwin程序有关,它能把Unix程序嫁接到windows下使用,它的目录系统以/cygdrive/为根目录。

如果ctl文件中,数据文件指定不是全路径,而是^,则可以在open命令中指定上述形式的全路径,例如:

ga-> open /cygdrive/d/data/ncep/grib2006060100.ctl

它等效于:

ga-> open d:/data/ncep/grib2006060100.ctl

2 生成描述文件

PCGrads软件的User’s Guide中介绍了GRIB及其处理方法,但不完全。实际上有两种方法:1)利用工具grib2ctl.exe生成整个文件的描述文件.ctl,再利用工具gribmap.exe生成映射文件.idx;2)利用工具wgrib.exe解码文件中需要使用的部分记录,建立新的数据文件,然后人工建立描述文件.ctl。

为了使用方便,环境变量Path中增加Grads可执行文件所在目录,则在cmd中其他路径下亦可访问所有该目录下的工具。

2.1 方法1

使用工具grib2ctl.exe生成GRIB数据文件的描述文件ctl,之后还要使用gribmap工具生成映射文件.idx。

1. 工具grib2ctl.exe的获得。

查看相关信息:

/products/wesley/grib2ctl.html

一般网上得到的是源码文件grib2ctl.pl。

ftp:///wd51we/wgrib.scripts/grib2ctl.pl

grib2ctl.pl是perl语言代码,转换成exe格式需要使用perl2exe工具。转换的过程还需要借助perl编译器,如ActivePerl。

perl2exe工具可从以下网址查看和下载:

/perl2exe.htm

/download/p2x-8.60-Win32.zip

ActivePerl可从以下网址下载:

/ActivePerl/Windows/5.8/ActivePerl-5.8.6.811-MSWin32-x86-1222 08.msi

ActivePerl下载后安装好,perl2exe下载后解压到某个目录,把grib2ctl.pl拷贝入该目录。在cmd命令行窗口执行:

grib2ctl.pl

perl2exe

于是生成grib2ctl.exe。为了方便使用,把它拷贝到Grads目录下,这里是PCGrads\win32e\。

2. 工具grib2ctl.exe的使用。

使用过程中要用到wgrib工具,Grads自带了但不是最新的,最新版本需要自己下载。

查看:

/products/wesley/wgrib.html

可选择下载源码或已编译版本。

这里使用已编译版本,下载wgrib.exe和其依赖的cygwin1.dll文件:

ftp:///wd51we/wgrib/machines/Windows/wgrib.exe

ftp:///wd51we/wgrib/machines/Windows/cygwin1.dll

把这两个文件放置在可以访问到的地方,例如和grib2ctl.exe放置在同一目录下,在cmd 命令行窗口,cd到数据文件所在路径(这里是d:/data/ncep/),然后执行:grib2ctl.exe grib2006060100 >grib2006060100.ctl

注意,这样生成的.ctl文件还不能直接使用,需要处理:

去掉文件结尾多余部分,即ENDV ARS之后的关于Perl2exe声明的部分(因为我们按照前文地址得到的Perl2exe是试用版)。

得到的ctl文件举例见附录1。

3.gribmap的使用

在cmd命令行窗口,cd到数据文件所在路径,然后执行:

gribmap –v –i grib2006060100.ctl >b.txt

则,该路径下生成映射文件grib2006060100.idx,b.txt中记录了映射的过程,打开它可以查看所有field匹配的情况,全是!!!!!MATCH才是完全匹配成功。(这里发现有的行不是!!!!!MATCH,而是..... NOOOO,问题已经解决,见2.3节)

相关文档
最新文档