Type:
Class

mathn

mathn is a library for changing the way Ruby does math. If you need more precise rounding with multiple division or exponentiation operations, then mathn is the right tool.

Without mathn:

3 / 2 => 1 # Integer

With mathn:

3 / 2 => 3/2 # Rational

mathn features late rounding and lacks truncation of intermediate results:

Without mathn:

20 / 9 * 3 * 14 / 7 * 3 / 2 # => 18

With mathn:

20 / 9 * 3 * 14 / 7 * 3 / 2 # => 20

When you require 'mathn', the libraries for Prime, CMath, Matrix and Vector are also loaded.

Copyright

Author: Keiju ISHITSUKA (SHL Japan Inc.)

Document-class: FloatDomainError

Raised when attempting to convert special float values (in particular infinite or NaN) to numerical classes which don't support them.

Float::INFINITY.to_r

raises the exception:

FloatDomainError: Infinity
abs

num.abs â numeric Instance Public methods Returns the absolute value

2015-04-22 23:25:16
rectangular

num.rect â array Instance Public methods Returns an array; [num, 0].

2015-04-23 01:19:50
singleton_method_added

singleton_method_added(p1) Instance Public methods Trap attempts to add methods

2015-04-23 01:40:04
to_int

num.to_int â integer Instance Public methods Invokes the child class's to_i

2015-04-23 01:54:44
ceil

num.ceil â integer Instance Public methods Returns the smallest Integer

2015-04-22 23:45:54
-@

-num â numeric Instance Public methods Unary MinusâReturns the receiver's

2015-04-22 23:16:38
round

num.round([ndigits]) â integer or float Instance Public methods Rounds num

2015-04-23 01:33:04
phase

num.phase â 0 or float Instance Public methods Returns 0 if the value is positive

2015-04-23 00:53:33
modulo

num.modulo(numeric) â real Instance Public methods x

2015-04-23 00:40:30
denominator

num.denominator â integer Instance Public methods Returns the denominator

2015-04-22 23:57:58