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

[dennou-ruby:000372] Re: NumArray test version



堀之内です。

さっきの続きです。

> > >mask の使い方が私には今一つしっくりこない. 生成した mask を
> > >
> > >	a[mask,true,true]
> > >
> > >のように引数として(といういい方が Ruby では適切かどうかわかりませんが)
> > >指定するようになっていますが, 気分としては

メソッド名をどうするかはさておき、想定されている maskの使い方に
ついてです。上の例で a は例えば lon,lat,time の3次元配列だった
として、

  a[lon.gt(180.0), true, true]

などとします。メソッド gt (未実装)は比較演算を行って lon と同じ
長さの論理型の配列を返し、それが mask となります。この例では 
mask は次元毎に適用されますが、もっと良く使いそうなのは配列全体
に適用する場合です。例えば

   a[a.gt(0.0)] = 0.0

とか。この機能は未実装です(JSTに奉納された私が ruby で書いた試
作品には実装されてます)。

この例でお分かりと思いますが、maskの機能は fortran90 の where 文
に相当するものです。

# 比較演算子、配列全体のマスキングの実装をよろしく > 川那辺君

# ところで川那辺君のホームページにある NumArray のドキュメント
   は少し前に作られたので、現状を正しく反映しておらず、特に mask 
   のところはちょっとまずいです。復帰したら早急にアップデートし
   てください > 川那辺君。(あと、ファイルは1個にまとめてリン
   クは # を使ってファイル内にするのがいいように思います)

堀之内 武                     horinout@xxxxxx
京都大学宙空電波科学研究センター (旧超高層電波研究センター)
611-0011 宇治市五ヶ庄  phone:0774-38-3812  fax:0774-31-8463