最終更新: keisuketsushima 2011年11月21日(月) 22:04:26履歴
GPhysについてのファイルIOを処理するモジュールです。
このモジュールの多くの関数は、NumRu::GPhys::NetCDF_IOなどの特定のファイルタイプ用のモジュールで実装されており、このモジュールはそれらに処理を渡します。
例えば、GPhys::IO.open(file, name)は単にGPhys::*_IO.open(file, name)を実行しているに過ぎません('*'はNetCDFかGrADSかgrib)。
このモジュールの多くの関数は、NumRu::GPhys::NetCDF_IOなどの特定のファイルタイプ用のモジュールで実装されており、このモジュールはそれらに処理を渡します。
例えば、GPhys::IO.open(file, name)は単にGPhys::*_IO.open(file, name)を実行しているに過ぎません('*'はNetCDFかGrADSかgrib)。
上に挙げられたメソッドは、NumRu::GPhys::NetCDF_IOのマニュアルを参照。
- file (String, Regexp, NetCDF, Grib, or GrADS_Gridded) : これがNetCDFかGribかGrADS_Griddedならば何が返るかはもちろん明白である。これがもしStringオブジェクトの場合はファイルのパスとして解釈され、拡張子が'nc'か'ctl'か'grib'ならばファイルタイプを決定する。その他の場合は、最初の数バイトを読み込むことでタイプを把握する。RegExpオブジェクトの場合は、現在のところNetCDF_IO.openのみがRegExpをサポートしているので、NetCDFと解釈する。
file2typeと同様だが、GPhys::NetCDF_IOかGPhys::GrADS_IOかGPhys::Grib_IOを返す。
file2typeと同様だが、NetCDFかGrADS_GriddedかGribを返す。
GTOOL4型のURLをパースし、パス、変数名、任意の部分集合を指定する。フォーマットは、path@varname[,dimname=pos1[:pos2[:thinning_intv]][,dimname=...]]
- gturl (String) : GTOOL4のURL。このフォーマットはpath@varname[,dimname=pos1[:pos2[:thinning_intv]][,dimname=...]]
- [file, var, slice, cut_slice, thinning]を含むArrayオブジェクト
- file (String) : パス
- var (String) : 変数名
- slice (Array) : GPhys#[slice]のように使われる格子数による部分集合指定子
- cut_slice (Array) : GPhys#cut[cut_slice]のように使われる物理座標系の部分集合指定子
- thinning (Array) : GPhys#cutを適用したあとにGPhys#[thinning]で使われる場合、一様な間隔で間引くための追加的な部分集合指定子
Gtool4型のURLからのGPhysコンストラクタ。フォーマットはparse_gturlを参照。
"U.nc/U"や"U.nc"などのスラッシュ("/")で区切られたStringオブジェクトからGPhysを開く。
対話型セッションによる迅速な処理を補助することを目指している。このメソッドは複数のファイルに渡るGPhysを処理しない。
もし"U.nc"のように変数パスが省略された場合は、その中の変数を探そうとする。つまり、ファイルを読み込み、もし変数が1つだけ見つかった場合はそれが指定される変数であると解釈する。その他の場合は例外を発生させる。
URLは受け付けるが、OPeNDAPを想定したNetCDFのみ。
対話型セッションによる迅速な処理を補助することを目指している。このメソッドは複数のファイルに渡るGPhysを処理しない。
もし"U.nc"のように変数パスが省略された場合は、その中の変数を探そうとする。つまり、ファイルを読み込み、もし変数が1つだけ見つかった場合はそれが指定される変数であると解釈する。その他の場合は例外を発生させる。
URLは受け付けるが、OPeNDAPを想定したNetCDFのみ。
- str (String (file_path[/variable_path])) : 例えば"U.nc/U"、"U.nc"、"http://.../U.nc/U"
最新コメント