| 藤川さま   units.rb は UDUNITS の文法に従う単位を演算するものです。その文法では "/s" 
という単位は許されません。 その単位がどのように設定されて、後でどう使われるか存じませんが、"1/s" よりは "s-1" 
のほうが筋がよいです。 
  ----- Original Message -----  Sent: Friday, July 29, 2011 3:11 
  PM Subject: [dennou-ruby:003391] 
  GPhysのGRIB 堀之内さま、西澤さま、
 気象庁 藤川です。
 
 大変お世話になっております。
 
 GPhysにて、単位が「/s」であるGRIBデータについて、
 2つの値を操作しようとしたところ、
 
 usr/local/lib/ruby/site_ruby/1.9.1/numru/units.rb:391:in 
  `on_error':  (Racc::ParseError)
 parse error on value "/" (DIVIDE)
 from 
  /usr/local/lib/ruby/site_ruby/1.9.1/numru/units.rb:118:in 
  `_racc_do_parse_c'
 from /usr/local/lib/ruby/site_ruby/1.9.1/numru/units.rb:118:in 
  `do_parse'
 from /usr/local/lib/ruby/site_ruby/1.9.1/numru/units.rb:2888:in 
  `do_parse2'
 from /usr/local/lib/ruby/site_ruby/1.9.1/numru/units.rb:2893:in 
  `ptree'
 from /usr/local/lib/ruby/site_ruby/1.9.1/numru/units.rb:2972:in 
  `reduce5'
 from /usr/local/lib/ruby/site_ruby/1.9.1/numru/units.rb:3106:in `=='
 from 
  /usr/local/lib/ruby/site_ruby/1.9.1/numru/units.rb:3041:in `convert2'
 from 
  /usr/local/lib/ruby/site_ruby/1.9.1/numru/gphys/varray.rb:806:in `-'
 from 
  /usr/local/lib/ruby/site_ruby/1.9.1/numru/gphys/gphys.rb:786:in `-'
 
 となりました。とりあえず、grib_params.rbで定義されている
 unitsを「/s」から[1/s」に書き換えたところ、正常に動作して
 います。
 
 この対応でよろしいでしょうか?
 (units.rbを修正すべきのような気がしますが、ソースを理解しきれなくて
 すみません。)
 
 P.S. 秋に神戸でワークショップが開催されると、室井さんから
 伺っております。3月はご協力できませんでしたので、なん
 とか参加したいと考えています。詳細な情報が決まりまし
 たら、お知らせいただければ幸いです。
 |