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

[dennou-ruby:002186] grads_gridded



西澤です。

リリース直後で申し訳ありませんが
griads_gridded.rb
にバグがあると思われますので報告します。

コントロールファイルが

	:
zdef  23 levels
	:
vars 20
rc       0 99 accum conv pcn (cm)
	:

となっているとき、
1レベルしか無いのに23レベル読み込もうとしてエラーになります。
該当するところは以下の部分です。


    1198       h_sta = [0, 0, 0, 0]
    1199       h_end = [-1, -1, -1, -1]
			:
    1216       idx_z = NArray.int(@ctl.dimensions[2][:len]).indgen!
			:
    1220       str_z = idx_z[h_sta[2]]; end_z = idx_z[h_end[2]]
			:
    1225         for lev in str_z..end_z
    1226 #          na_xy = @ctl.get(@varname,lev,time).swap_byte
    1227           na_xy = @ctl.get(@varname,lev,time)


あと同じファイルで後半の変数を読み出そうとするとファイルのEOFにたどり着いて
/usr/lib/ruby/1.8/numru/gphys/grads_gridded.rb:581:in `to_na': illegal operation with this type (TypeError)
なる一見不可思議なエラーが出ます。
これもおそらく上記のように1レベルしか無い変数をちゃんと考えていないのでは無いかと思われます(詳しくは見ていません)
宜しくお願いします。

--------------
Seiya Nishizawa
seiya@xxxxxxxxxxxxxxxxxx
GnuPG Fingerprint = 0696 D312 5737 929A B481 FC91 44F4 6BA0 467A 7703