|
D.8.2.1 laguerre_solve
Procedure from library solve.lib (see solve_lib).
- Usage:
- laguerre_solve(f [, m, l, n, s] ); f = polynomial,
m, l, n, s = integers (control parameters of the method)
m: precision of output in digits ( 4 <= m), if basering is not ring of
complex numbers;
l: precision of internal computation in decimal digits ( l >=8 )
only if the basering is not complex or complex with smaller precision;
n: control of multiplicity of roots or of splitting of f into
squarefree factors
n < 0, no split of f (good, if all roots are simple)
n >= 0, try to split
n = 0, return only different roots
n > 0, find all roots (with multiplicity)
s: s != 0, returns ERROR if | f(root) | > 0.1^m (when computing in the
current ring)
( default: m, l, n, s = 8, 30, 1, 0 )
- Assume:
- f is a univariate polynomial;
basering has characteristic 0 and is either complex or without
parameters.
- Return:
- list of (complex) roots of the polynomial f, depending on n. The
entries of the result are of type
string: if the basering is not complex,
number: otherwise.
- Note:
- If printlevel >0: displays comments ( default = 0 ).
If s != 0 and if the procedure stops with ERROR, try a higher
internal precision m.
Example:
|