Method: Flt::Num#log

Defined in:
lib/flt/num.rb

#log(b = nil, context = nil) ⇒ Object

Ruby-style logarithm of arbitrary base, e (natural base) by default



2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
# File 'lib/flt/num.rb', line 2623

def log(b=nil, context=nil)
  if b.nil?
    self.ln(context)
  elsif b==10
    self.log10(context)
  elsif b==2
    self.log2(context)
  else
    context = num_class.define_context(context)
    +num_class.context(:extra_precision=>3){self.ln(context)/num_class[b].ln(context)}
  end
end