A さんは数値計算を行ない, KH_Km.nc, KH_VelX.nc, KH_VelZ.nc, KH_BasicZ.nc の各 netcdf ファイルを得た. 各ファイルには乱流拡散係数 Km, 水平速度 VelX, 鉛直流速 VelZ, 密度 DensBasicZ のデータが含まれている. 計算結果を確認する為に, 以下のコマンドを用いて Km, VelX, VelZ, 運動エネルギー 0.5 x DensBasicZ x (VelX x VelX + VelZ x VelZ) の t = 0 -- 1000 sec における 200 sec ごとの絵を描いた (t = xxxx には各時刻が入る). ここで draw_KH-Energy.rb は A さんが運動エネルギーを描く為に作った ruby スクリプトである.
$ gpview --wsn 4 --cint 0.3 --range 0.0:1.5 KH_Km.nc@Km,t=xxxx $ gpview --wsn 4 --cint 1.0 --range -5.0:13.0 KH_VelX.nc@VelX,t=xxxx $ gpview --wsn 4 --cint 0.5 --range -3.5:3.5 KH_VelZ.nc@VelZ,t=xxxx $ ruby draw_KH-Energy.rb --Time xxxx --range 0.0:12.0A さんは計算結果を見て 50 sec ごとに絵を描き直そうと思い立った. そこで A さんは以下の条件を満たす描画用シェルスクリプトを作ることにした.
手順:
0. 先ず, wget コマンドなどを用いて, 事前に以下の URL より netcdf ファイルを入手しておいて下さい. また, 200 sec ごとに描いた画像と, 運動エネルギーを描画する為の ruby スクリプトも用意しましたので, これも入手しておいて下さい. 200 sec ごとに描いた画像については, スクリプトが作りやすいように画像名を変えてもらって構いませんが, レポートに変えた旨を記述して下さい. http://www.ep.sci.hokudai.ac.jp/~inex/y2010/0507/jitsugi/KH_Km.nc http://www.ep.sci.hokudai.ac.jp/~inex/y2010/0507/jitsugi/KH_VelX.nc http://www.ep.sci.hokudai.ac.jp/~inex/y2010/0507/jitsugi/KH_VelZ.nc http://www.ep.sci.hokudai.ac.jp/~inex/y2010/0507/jitsugi/KH_BasicZ.nc http://www.ep.sci.hokudai.ac.jp/~inex/y2010/0507/jitsugi/draw_KH-Energy.rb http://www.ep.sci.hokudai.ac.jp/~inex/y2010/0507/jitsugi/figdir/*.png wget コマンドで figdir 内の png 画像を取得するには, 例えば以下のようにオプションを指定すると良いでしょう (オプションの意味が気になる人は各自調査してみてください). $ wget -r -l1 -nd -A.png http://www.ep.sci.hokudai.ac.jp/~inex/y2010/0507/jitsugi/figdir/ -P figdir 1. gpview や ruby スクリプトを使って絵を描きます. 2. 同時刻における 4 つの物理量の画像を 1 枚の画像に結合します. 3. 画像を作ったら, それらを gif アニメーションに変換します. 画像が時系列の順番に並ぶようにアニメーションを作成しましょう. その為には例えば画像に xx01.png, xx02.png ... と通し番号を付けると良いでしょう.
最終更新日: 2011/05/06(堺 正太朗) | Copyright © 2011 inex |