[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:002686] Re: Grid#cut の挙動



hirocyです.

On Tue, 15 Aug 2006 10:38:48 +0900,
Takeshi Horinouchi wrote:
> 遅くなりましたが、ドキュメントを直して cvs commit しました。

ありがとうございます.ちなみに,Numru::Axis#cutも同様です.

> # ところで、よければ GPhys をどう活用されてるか、ご紹介いただけ
>    ないでしょうか。「同業者」でないとすると、どのような方面で
>    活用されているか興味がありますので。

はい.企業での仕事なので詳細は書きにくいのですが,
気象データと災害の相関を調べてます.
例えば台風や雷雨があると人身事故や故障が発生します.
そういった事象の件数等をNetCDF形式に落として,気象データと比較してます.

私が主にRubyを使っているので,まずRubyNetCDFに飛びついたのですが,
さらにGPhysの存在を知り,複数のncファイルをバーチャルにまとめられる
ところや,GrADSも扱えるところが気に入りまして,使わせていただいてます.

あと,気象データは格子サイズがばらばらだったりしますが,それを気にせず
物理座標で値を串刺しにできるところも助かってます.
(本当は,より細かいGridにあわせて内挿してくれるライブラリでもあれば…
と思ってるのですが,意外とないんですよね)

ある格子サイズにあわせて情報をメッシュ化しようとするときに,
まずGridオブジェクトを作って,each(に準ずるmethod)で回しながら
値を代入して,最後にGPhys.new->NetCDFする,という手順でやっているので,
GridオブジェクトやAxisオブジェクト自体を操作する必要が多々あり,
件の挙動に気づいた次第です.

おそらく内部でprivateメソッドがあるのだろうなぁと思いつつ,
[x, y]形式と{'lon'=>x, 'lat'=>y}形式を相互変換するメソッドや,
物理座標とインデックス座標を相互変換するメソッドを作ったり,
時間軸のunits属性を使って時間の値をTimeオブジェクトに変換する
メソッドなど,いろいろ独自に追加したりしてます.

今後ともよろしくお願いします.

-- 
// hirocy