rational
From MASS v7.3-25
by Brian Ripley
Rational Approximation
Find rational approximations to the components of a real numeric object using a standard continued fraction method.
- Keywords
- math
Usage
rational(x, cycles = 10, max.denominator = 2000, ...)
Arguments
- x
- Any object of mode numeric. Missing values are now allowed.
- cycles
- The maximum number of steps to be used in the continued fraction approximation process.
- max.denominator
- An early termination criterion. If any partial denominator
exceeds
max.denominator
the continued fraction stops at that point. - ...
- arguments passed to or from other methods.
Details
Each component is first expanded in a continued fraction of the form
x = floor(x) + 1/(p1 + 1/(p2 + ...)))
where p1
, p2
, ...are positive integers, terminating either
at cycles
terms or when a pj > max.denominator
. The
continued fraction is then re-arranged to retrieve the numerator
and denominator as integers and the ratio returned as the value.
Value
- A numeric object with the same attributes as
x
but with entries rational approximations to the values. This effectively rounds relative to the size of the object and replaces very small entries by zero.
See Also
Examples
X <- matrix(runif(25), 5, 5)
zapsmall(solve(X, X/5)) # print near-zeroes as zero
rational(solve(X, X/5))
Community examples
Looks like there are no examples yet.