李 健,陳衛麗,戴念軍
(民航河北空管分局,河北 石家莊 050802)
Linux系統下GRIB2格式GFS資料轉為GRIB1格式的方法詳解
李健,陳衛麗,戴念軍
(民航河北空管分局,河北石家莊050802)
文章介紹了一種如何在Linux系統下將美國GFS資料由GRIB2格式轉換為GRIB1格式的方法,另外對cnvgrib執行的編程設計方案作了簡要介紹。
Linux系統;GFS資料;格式轉換;編程設計
從2009年開始GFS產品從GRIB1格式升級為GRIB2格式,近年來發展起來的WRF、ARPS等模式均可以直接使用GRIB2格式資料,而早期的MM5模式無法直接使用,必須轉換為GRIB1格式。國內有關MM5模式運行的文獻均已無法應對,NCEP網站提供了一種轉換方式(cnvgrib),配備了必須安裝的程序及其指導性文檔,但是在實際操作過程中發現該文檔個別地方有錯誤,并且需要正確理解該文檔的指導意義,而不是照搬命令。筆者經過摸索,成功實現格式轉換并維持了原MM5模式的正常運行,本文重點是詳細介紹整套程序的安裝流程,并介紹執行cnvgrib的shell編程設計方案。
GFS資料的下載和cnvgrib配套程序的下載均在Windows系統下進行,只有Windows系統能夠連接互聯網;GFS資料的格式轉換和cnvgrib程序的生成在Linux系統下進行。Linux系統要通過Windows系統獲取所需要程序或數據,首先要求這兩個系統在同一個內部網絡上,假定Linux系統的IP地址為192.9.100.002,登陸賬戶為abc,賬戶密碼12345,Window系統192.9.100.001,管理員賬戶administrator,密碼為12345;其次要在Windows系統下建立一個共享目錄(假定為F盤的share目錄,共享目錄名稱默認定為share),在Linux系統的abc賬戶下選取一個目錄(假定home/abc/share/),鏈接兩個目錄(編輯/etc/rc.local文件,增加一行命令:mount□-o□username=admistrator,password=12345//192.9.100.001/share□home/abc/share即可),此時兩個系統的文件夾內容完全一樣。在Linux系統下的abc賬戶中,其目錄為/home/abc/,假定建立如下目錄用于不同的功能:home/abc/data/grib2—存放GRIB2格式的GFS資料和cnvgrib.exe,其下以日期和時刻為名稱分別建有目錄,cnvgrib.exe是最終使用的可執行文件;home/abc/ data/grib1—存放GRIB1格式的GFS資料,其下以日期和時刻為名稱分別建有目錄,MM5模式可以直接調用該目錄下的資料;home/abc/tools—存放cnvgrib所有程序的壓縮文件和解壓縮后的目錄;home/abc/local—存放所有安裝程序和相關文件,此目錄會存在諸如bin、include,lib,share等下一級目錄。
NCEP網站上cnvgrib系列程序的鏈接為http://www.nco. ncep.noaa.gov/pmb/codes/GRIB2/,所需要的一共有6個壓縮文件,還有一個指導性文檔build_cnvgrib.pdf。所有文件均可在Windows系統下正常下載,存放在F:/share下面即可。在Linux系統abc賬戶下,將6個文件從home/abc/share/拷貝到home/abc/tools/下進行安裝操作,特別需要注意的是要生成最終的cnvgrib程序,一定要按照如下順序逐個安裝:Zlib-1.2.3.tar,libpng-1.2.34.tar,jasper-1.900.1.tar,g2lib-1.2.1.tar,w3lib-1.9.tar,cnvgrib-1.2.1.tar。在下面的介紹中采取給出操作命令并說明結果的方式。
2.1安裝zlib
【命令行】cd/home/abc/tools
【命令行】tar-xvfZlib-1.2.3.tar
【命令行】cdZlib-1.2.3
【命令行】./ confgure -prefx=/home/abc/local
【命令行】viMakefle
【命令行】make
【命令行】make install
【命令行】cd.
2.2安裝libpng
【命令行】tar -xvf libpng-1.2.34.tar
【命令行】cd libpng-1.2.34
【命令行】./ confgure -prefx=/home/abc/local
【命令行】make
【命令行】make install
【命令行】cd.
2.3安裝jasper
【命令行】tar -xvfjasper-1.900.1.tar
【命令行】cd jasper-1.900.1
【命令行】LDFLAGS=”-L/home/abc/local/lib -lpng -lz”
【命令行】export LDFLAGS
【命令行】./confgure -prefx=/home/abc/local
【命令行】make
【命令行】make install
依孔子提供的標準,剛毅木訥近仁,陰柔顯然不在此例,士大夫最好蓄上胡子,仗劍走天涯,貼身戴著的玉佩按進行曲的節奏發出脆響,配合威武雄壯之姿,步入波瀾壯闊的歷史畫卷。
【命令行】cd.
2.4安裝g2lib
【命令行】tar -xvfg2lib-1.2.1.tar
【命令行】cd g2lib-1.2.1
【命令行】vi makefle
【命令行】make
【命令行】cp libg2.a/home/abc/local/lib(注意:官方指導性文檔上,誤寫為g2lib.a)
2.5安裝w3lib
【命令行】tar-xvfw3lib-1.9.tar
【命令行】cdw3lib-1.9
【命令行】viMakefle
【命令行】make
【命令行】cplibw3.a/home/abc/local/lib
【命令行】cd.
2.6安裝cnvgrib
【命令行】tar-xvfcnvgrib-1.2.1.tar
【命令行】cdcnvgrib-1.2.1
【命令行】vimakefle
【命令行】make
【命令行】cpcnvgrib/home/abc/data/grib2/,用于轉換GFS數據格式
【命令行】cd.
運行轉換工作利用shell編程,設定好日期時刻,將下載的GFS資料從共享目錄中拷貝到/home/abc/data/grib2中進行轉換,最后將轉換完畢的grib1格式文件存放在grib1目錄內。關鍵要按照日期時刻建立相應的目錄,把文件存放正確。以下以cnvgrib00.sh(用于處理00UTC的資料)為參考,轉換的內容按照需要增加,cnvgrib12.sh(用于處理12UTC的資料)則作相應的修改。

在Linux系統下cnvgrib的安裝是十分復雜的,該程序能否正確安裝與機器性能有關,其他機器上生成的程序在本機上不能使用。本文詳細介紹了cnvgrib的安裝過程,對其中可能出現的問題作了提示,以期對運行MM5模式的技術人員有所幫助。
[1]貝剛.在微機上運行MM5V3模式系統[J].氣象,2001(2):16-20.
[2]周小珊,楊森,張立祥. 中尺度數值模式(MM5V3)在沈陽區域氣象中心的試用[J].氣象 ,2001(8):28-32.
[3]金蓮姬,錢明.如何在PC_Linux環境下運行MM5V3模式系統[J].廣西氣象,2003(4):53-55.
[4]李江南,吳池勝.在PC機上安裝MM5的方法和運行要點[J].廣東氣象,2004(1):32-33,27.
Detailed annotation method of converting GFS data from GRIB2 format to GRIB1 format in Linux system
Li Jian, Chen Weili, Dai Nianjun
(Hebei Branch of Civil Aviation Air Traffc Control Offce, Shijiazhuang 050802, China)
This paper introduces a method of converting GFS data from GRIB2 format to GRIB1 format in Linux system, and makes a introduction of programming scheme performed by cnvgrib.
linux system; GFS data; format conversion; programming design
李健(1983— ),男,河北邯鄲,工程師,副主任。