logo       
Google Custom Search
    AddThis Social Bookmark Button

[ruby-dev:27511] RCR 322: Use log identities to improve BigMath::log perfor: msg#00142

Subject: [ruby-dev:27511] RCR 322: Use log identities to improve BigMath::log performance
まつもと ゆきひろです

RCR322の修正を取り込みたいのですが、私にはちょっと手に余りま
す。正しいかどうかきちんと検証する自信もないし。

  http://www.rcrchive.net/rcr/show/322

良ければ作業していただけると良いのですが。

 require 'bigdecimal'
 require 'bigdecimal/math'
 require 'bigdecimal/util'
 module BigMath
   alias :_log :log
   def log(x, prec)
     raise ArgumentError, "Zero or  negative argument for log" if x <= 0 ||  
prec <= 0
     return _log(x, prec) if x <= 10
     return x if x.infinite? || x.nan?
     sign, fraction, power, exponent =  x.split
     fraction = BigDecimal(".#{fraction}")
     power = power.to_s.to_d
     _log(fraction, prec) + (_log(power,  prec) * exponent)
   end
 end





Try Searching:
servers, voip, java, networking, microsoft ...
<Prev in Thread] Current Thread [Next in Thread>