Initial revision
[LeanCalc.git] / help / root
1 NAME
2     root - root of a number
3
4 SYNOPSIS
5     root(x, n, [, eps])
6
7 TYPES
8     x           number
9     n           positive integer
10     eps         nonzero real, defaults to epsilon()
11
12     return      real number
13
14 DESCRIPTION
15     For real x and positive integer n, n being odd if x is negative,
16     root(x,n,eps) returns a multiple of eps differing from the
17     real n-th root of x (nonnegative if x is positive) by less than
18     0.75 eps, usually by less than 0.5 eps.  If the n-th root of
19     x is a multiple of eps, it will be returned exactly.
20
21     For complex x and positive integer n, or negative x with positive even
22     n, root(x, n, eps) returns a real or complex numbers whose real
23     and imaginary parts are multiples of eps differing from the real
24     and imaginary parts of the principal n-th root of x by less than
25     0.75 eps, usually by less than 0.5 eps.
26
27     For negative x and odd n, the principal n-th root of x may be
28     obtained by using power(x, 1/n, eps).
29
30 EXAMPLE
31     > print root(7, 4, 1e-5), root(7, 4, 1e-10), root(7, 4, 1e-15)
32     1.62658 1.6265765617 1.626576561697786
33
34     > print root(1+3i, 3, 1e-5), root(1 + 3i, 3, 1e-10)
35     1.34241+.59361i 1.3424077452+.5936127825i
36
37     > print root(-8, 3, 1e-5), root(-8, 34, 1e-5)
38     -2 ~1.05853505050032399594+~.09807874962631613016i
39
40     > print root(1i, 100, 1e-20)
41     .99987663248166059864+.01570731731182067575i
42
43 LIMITS
44     n >= 0
45     eps > 0
46
47 LINK LIBRARY
48     void rootvalue(VALUE *x, VALUE *n, VALUE *eps, VALUE *result)
49     NUMBER *qroot(NUMBER *x, NUMBER *n, NUMBER *eps)
50     COMPLEX *qroot(COMPLEX *x, NUMBER *n, NUMBER *eps)
51
52 SEE ALSO
53     power
54