| Index of /arch/horinout/gt3-dcl5_samples/gt2ncdf |
Name Last modified Size Description
Parent Directory 11-Jan-2005 15:30 -
FileFormat 11-Nov-1998 03:37 3k
Makefile 11-Nov-1998 03:37 1k
WorkMemo 11-Nov-1998 03:37 2k
gt2ncdf.F 11-Nov-1998 03:37 32k
-*-Mode: indented-text; fill-column: 74; -*- gtool形式 → netCDF 形式のフィルター gt2ncdf ver.1 1997/09/13 ● 機能 gtool(gt3-dcl5 or an older version gtool3)により作られたファイルを、 netCDF形式に変換する。 ● 作られるnetCDFファイルの仕様について(一般論。詳細は./FileFormatを見よ) できるだけ netCDF ユーザーズガイドに記されたコンベンション(ファイルの作 り方の慣習)に準拠した。さらに必要に応じて、COARDSコンベンション (http://ferret.wrc.noaa.gov/noaa_coop/coop_cdf_profile.html)、"Proposed convention"(http://www-pcmdi.llnl.gov/drach/netCDF.html)、を取り入れ、独 自の仕様も定義した。 ● このプログラムの位置づけと現在の問題点 大部分の gtool 形式のファイルが変換できればよいという立場をとる。つまり このプログラム完璧ではない。このプログラムは単精度、倍精度の両方に対応し、 複数変数を含むファイルも変換できるが、以下のような問題がある。 作られる変数名等が netCDF に許容されるものであるかのチェックが甘い。 gtoolで良く使われると思われる文字(@や.)には対応したが、他に特殊な文字を 含むヘッダーを持つファイルはうまく変換できないかも知れない。その場合は gtoolファイルのヘッダーかこのプログラムを書き換えてから変換せよ。 単位は udunits に準拠するよう変換しているが、うまく変換できない場合もあ るかもしれない。怪しいと思ったら ncdump -h して、うまくいったかどうか確 認すること。 複数変数を含むファイルも変換できるが、各変数の時間進行は揃ってなければな らない。つまり、a(t=1),b(t=1),c(t=1),a(t=2),b(t=2),c(t=2),..という具合い になっていないとうまく働かない。この制限により、agcm5の再スタートファイ ルは渦度と発散項がうまく変換できない。再スタートファイルは u(t=1), v(t=1),..,q(t=1),u(t=2),v(t=2),..,q(t=2),vor(t=1),div(t=1),vor(t=2), div(t=2)となっている。これに対処するには、あらかじめ gtsel で渦度と発散 を切り捨ててから変換すれば良い。ただ、渦度と発散なしでも計算上できるもの の、若干の数値誤差が混入するはずである。