このページは付録のため, 実習資料に比べて説明を大幅に省略しています.
今回の計算例では, 計算量が軽いために 計算しながら可視化することが簡単でした. しかし研究などの実用上では 計算に非常に長い時間 (一週間や一ヶ月) かかることもあるため, この方法は現実的ではありません. たいていは, 計算結果を試行錯誤的に解析したり 共同研究者とデータをやりとりするために, 数値データを一旦ファイルに出力します.
参考文献に, 気象分野で広く用いられているデータフォーマットのひとつである NetCDF (Network Common Data Form) を Ruby で扱う方法について記した資料をページ末尾に挙げておきますので 必要に応じて参照してください.
京都大学生存圏研究所が教育研究機関向けに配布している 気象庁データ のうち, 気象庁データ: NetCDF化した数値予報GPVデータ: 解析値を中心に再構成したNetCDFデータ (MSM, RSM) の MSM-P (メソモデルによる気圧面データ) を用いた例を示します.
以下は 2012/04/03 における日本付近の 500 hPa 面において 温度 (単位 K) をカラートーンで, ジオポテンシャル高度 (単位 m) をコンターで 描画したものの時間発展の動画です. 動画の 1 コマの間隔は 3 時間です.
気象庁 | 日々の天気図 によると 2012/04/03 は日本海で低気圧が急発達した日です.
気圧の谷が東進する様子や 寒気がおおよそ等ジオポテンシャル高度に沿って移流し, 日本上空に入り込む様子が見て取れます.
サンプルの描画スクリプトを.
から取得し, draw_sample.rb とリネームします. データは以下のようにして取得します.
$ wget http://database.rish.kyoto-u.ac.jp/arch/jmadata/data/gpv/netcdf/MSM-P/2012/0403.nc
取得したファイルを Ruby スクリプトと同じディレクトリに置いたうえで
$ ruby draw_sample.rb
を実行し, キーボードの d を押しっぱなしにして png を出力します. 動画を生成するためには
$ convert -delay 50 -loop 0 dcl_???.png draw_sample.gif
を実行します.