GRIB & wgrib 情報
- とにかく操作方法(読み出し・デコード方法)が知りたい人は,下記参照
- GRIB1 ファイルの dump: wgrib の使用方法
- GRIB2 ファイルの dump: wgrib2 の使用方法
基礎情報
wgrib は GRIB1 (WMO 標準フォーマット)ファイルを操作するためのコマンドです. Cで書かれた source が公開されており, コンパイルさえすればどのようなプラットホームでも GRIB1 データの取扱がこのコマンド一発で出来るようになります.
オリジナルの情報は, wgrib 配布元 (Climate Prediction Center, U.S. National Weather Service, NOAA) を参照して下さい.
また,近年(個人的な実感としては2006-2007年頃から?)は,GRIB2 形式で配布されるデータもぼちぼち見かけるようになりました (例えば JMA GPV データ, NCEP tropospheric final analyses, NCEP CFS再解析, など). GRIB2 でも,GRIB1 に対する wgrib と同様に,wgrib2 というコマンドが開発&配布されています.
開発途中なので, バージョンがあがるとオプション名が変わる(無くなる)事があるので, 使用時にはバージョンに注意.
オリジナルの情報源・配布元など
- wgrib
- wgrib 情報源・配布元 = http://www.cpc.noaa.gov/products/wesley/wgrib.html
- 長所
- GRIB1 は,かなり以前から(1996-1997年頃?)使われているので,使用可能なデータソースが多い
- 単純なコマンドなので,ソースはCのプログラム1つだけ.コンパイルが簡単
- 短所
- GRIB1 はGRIB2 に比べて圧縮効率が低いため,ファイルサイズが大きくなりがち
- GRIB2 形式のファイルは扱えない(wgrib2 コマンドも共存出来るので,あまり大きな問題ではない)
- wgrib2
- wgrib2 情報源・配布元 = http://www.cpc.noaa.gov/products/wesley/wgrib2/
- 長所
- wgrib よりも多彩な入出力形式をサポート(例:出力=ASCII text, CSV, IEEE, MySQL database)
- 圧縮効率が高く(データにもよるだろうが,GRIB1 の約半分強程度),かつ動作が高速
- 気象庁GPVや NCEP tropospheric final (FNL) analyses など,GRIB2で配布される最新データの利用が容易
- 並列処理(OpenMP)をサポート(デフォルト設定のコンパイルで使用可能.ただし,実行時には OMP_NUM_THREADS でコア数が指定されていなければならない)
- 格子間隔の変換(grid interpolation, regrid)が出来る(-new_grid オプション).
- C言語から wgrib2 を直接コールして GRIB2 の読み書きができる. Fortranからの書き込みもサポート(after Jan2015 version; ただし動作速度のパフォーマンスは高くないらしい). Fortranからの読み込みは将来課題(See p.14 of Changes in wgrib2 from 5/2012 to 1/2015)
- 短所
- GRIB1 形式のファイルは扱えない(wgrib コマンドも共存出来るので,あまり大きな問題ではない) データを切り出すことは可能(らしい.未確認 checked 2015-11-05)
- wgrib と異なり,wgrib のコンパイルには幾つかの外部ライブラリが必要になる. 必要な外部ライブラリは,png, jpeg2000, jasper, netcdf など (ただし,RPM などのパッケージでも配布されているため,実用上は大きな問題となりにくい)
導入手順
wgrib コンパイル・インストール
といっても,コンパイルはコマンド一発です:
gcc -o wgrib -lm wgrib.c
特殊なオプションは不要. 後は,できあがった実行ファイル wgrib を /usr/loca/bin/ 以下などにコピーするだけ.
また,GrADS ユーザであれば, 標準で付いてるはず(ちょっとバージョンは古いが,実用上は問題ないはず).
wgrib2 コンパイル・インストール
Linux 初心者~普通の人は, yum などのパッケージ管理ツールでインストールすればよいでしょう. 以下は,それが嫌なひと (source/tar-ball からコンパイルしたい奇特な人, 最新版を使いたい専門家)向けの情報:
- wgrib2 配布元ページから, wgrib2.tgz (最新バージョンへのリンク)を取得
- wgrib2.tgz の解凍 (./grib2/ ディレクトリ以下)
- ./grib2/ 以下に移動, makefile の編集(これの意味がわからないなら,特になにもしなくてよい)
- make の実行
- (正常終了していれば) wgrib2/ 以下に出来ている実行コマンド wgrib2 を
path の通ったディレクトリ (/usr/local/bin/ など) にコピー
- (オプション設定: 並列処理)2つの環境変数を設定.See wgrib2 本家webの "OpenMP Configuration"
OMP_NUM_THREADS=4 (4スレッド並列の場合) OMP_WAIT_POLICY=PASSIVE
- (オプション設定: 並列処理)2つの環境変数を設定.See wgrib2 本家webの "OpenMP Configuration"
動作確認済み Linux
私自身が手動コンパイル & インストールで動作確認した distribution/version,という意味です. これ以外のものでも普通に動作するはずです.
- CentOS 5.{3-8}, CentOS 6.{4-5}, CentOS 7.{0-1}
- Fedora 11, 14, 19
GRIB1・GRIB2 ファイルの操作(データの dump, decode)
- GRIB1 ファイルの dump: wgrib の使用方法
- HOW2USE-jp
- tricks.wgrib-jp(本家の tricks.wgrib の簡易日本語訳)
- GRIB2 ファイルの dump: wgrib2 の使用方法
- 私的 wgrib2 メモ (早崎私家版; HOW2USE-jp_wgrib2)
- tricks.wgrib2-jp(本家の tricks.wgrib2 の簡易日本語訳)
wgrib & GRIB 関連リンク
- wgrib 本家サイト
- grib2ctl 本家サイト: このページの後半部分の "Files" にて,ソースコードや anonymous FTP サイトの情報がある
- wgrib2 本家サイト
- WMO International Code (GRIB1 およびGRIB2のマニュアル)
更新履歴
日付 | 変更内容 |
---|---|
2015-11-05 | wgrib2 新バージョン(Jan2015)用の記述を追加. まだ追加しきれてない情報もあるようだ.しばらくチェックしてなかったので,随分と進歩してる. |
2011-10-27 | 関連ページ(GrADS関連,その他)との相互リンク追加,grib2ctl.pl の情報も追記 |
2011-06-22 | FSWikiから XHTML に変換.記述内容はほとんど変えてない |
2010-01-06 | wgrib & wgrib2 情報を wiki に移植,公開開始 |
2002-04-24 | grib2ctl & gribmap の使用方法 (make-ctl) の最終更新日 |
2001-09-18 | wgrib のトップ (古い index.html) および wgrib の使用方法 (HOW2USE-jp) の最終更新日 |
2000-08-08 | リンク先を追加 |
1998-04-19 | tricks.wgrib-jp (tricks.wgrib の簡易日本語訳) の最終更新日 |
1998-06-17 | wgrib使用法を記述した HTML のうち,手元に存在する最古の更新日.最初の作成日は不明 |