wgrib2に関するメモ

 wgrib2のインストールと使い方に関するメモです. 詳細はNCEPのドキュメントを参照してください.

インストール

 ダウンロードからコンパイルまで, 公式の手順に従って進める(LinuxマシンでIntel コンパイラを使用する場合).

# 1. ダウンロード (wgrib2.tar.gz がダウンロードされる)
$ wget https://www.ftp.cpc.ncep.noaa.gov/wd51we/wgrib2/wgrib2.tgz

# 2. 解凍する (grib2ディレクトリに展開される)
$ tar -zxvf wgrib2.tar.gz

# 3. コンパイル前にmakefileを変更
$ cd grib2/
$ emacs makefile # USE_AEC=0, USE_OPENJPEG=0に変更

# 4. 環境変数を設定
$ export CC=icc
$ export FC=ifort
$ export COMP_SYS=intel_linux

# 5. コンパイル実行(数分程度)
$ make

 コンパイルが終わると, grib2/wgrib2/ の中に wgrib2 というファイルができているはず. パスを通しておく:

# /hoge/grib2/wgrib2/wgrib2 に実行ファイルがある場合
$ export PATH="/hoge/grib2/wrgib2:${PATH}"

# 毎回パスを通すのは面倒なので~/.bashrcに上記を書いておくとよい

パスを通したらバージョンを確認してみる:

$ wgrib2 --version
# v3.1.3 10/2023 Wesley Ebiszaki, ... と表示されていればok 

その他

古いwgrib2でJRA3Qデータを処理する場合に出るエラー

JRA3QのGRIB2データを処理する際にv3.0.2のwgrib2を使用すると次のようなエラーが出る:

$ wgrib2 anl_mdl_hgt.20180601

    1:0:d=2018060100:HGT:1 hybrid level:anl:

    *** FATAL ERROR (delayed): PDT size error

上記のエラーは, JRA3Qのモデル面データに対する実行の際に現れる. 地表面データの場合には動作する. このエラーは, プロダクト定義節(Product Definition Template; PDT)のサイズをチェックする際に, 想定されるサイズと異なるサイズが検知された際に出力されるらしい. 公式の解説ページがある. PDTのサイズチェックを行わないオプションをつけることでこのエラーは出なくなる

$ wgrib2 -check_pdt_size 0 anl_mdl_hgt.20180601

新しいwgrib2 (v3.1.3)を使用した場合にはPDTサイズのエラーは出ない. wgrib2のバージョン3についてのアップデートの履歴を見てみると, v3.1.0でcheck_pdt_sizeに関する変更が行われたようである. エラーに対してオプションをつけて対応するよりも新しいバージョンを使用するのが望ましいだろう.