lats4d

GrADSバイナリ形式からGRIB, NetCDFへの変換に威力を発揮するGrADSスクリプト、lats4dのメモ。GTOOLのようにマイナーな形式でも、GrADS形式を経由させてより一般的な形式に変換することができる。

参考サイト

IT memo/GrADS memoに戻る。

GrADS to GRIB

基本

ga-> run lats4d -v -i T2002.ctl -o T2002 -ftype ctl -format grads_grib

など。変数名は8文字以内など、いくつかの制約(上記参考サイト参照)をクリアすると、ほぼ自動でgrib化してくれる。

tableファイル

gribファイルでのIDや属性、精度を指定したい場合、"-table tablefile"を追加する。

  • tableオプションなしでlats4dを実行すると.grads.lats.tableが作成されるので、それを変更するのが便利。

風変わりな仕様(たぶんバグ)

  • 緯度方向が"levels"で、個数が大きい場合、gribファイル用のctlファイルのzdefがydefにつなげて書かれてしまう。よってgribmapが正常動作しない。gribファイル自体はできているため、あとでctlファイルを修正して "gribmap -i ctlfile" すればよい。

諸注意

  • 大文字に注意:lats4dのtableファイルでの変数名は小文字でないといけない。
  • gridオプション:内容がガウシアン格子の場合、"-grid gaussian"を追加することを忘れずに。(コントロールファイルのydefがきちんと記載されているだけではダメ)
  • NetCDF→GRIBの際、元データの鉛直レベルの値に1以下が含まれていると自動的にhybrid座標と判断される。このことを用いて、xdfopen用のコントロールファイルにて鉛直座標を定義しなおすと良い。(zdefの値にわざと1以下を含ませればhybrid、そうでなければp座標としてGRIBが作られる)

GrADS to NetCDF

  • format オプションをcoardsにする。
    $ grads -bl -c "run lats4d -v -i XXX.ctl -ftype ctl -o XXX -format coards -q"
    上記は、GrADS起動から行うとき。

NetCDF to GRIB

  • ftypeをsdf(ncファイルがsdfopenで一発で読めるとき)あるいはxdf(xdfファイルが別途必要なとき)にする。
  • formatをgrads_gribにする。