A First Course in Numerical Analysis, ISBN 048641454X, chapter 8.Laguerre's method is global in the sense that it can start with any initial approximation and be able to solve all roots from that point. The algorithm requires a bracketing condition.
| Modifier and Type | Class and Description |
|---|---|
| private class | LaguerreSolver.
Class for searching all (complex) roots. |
| Modifier and Type | Field and Description |
|---|---|
| private final LaguerreSolver. | complexSolver
Complex solver. |
| private static final double | DEFAULT_ABSOLUTE_ACCURACY
Default absolute accuracy. |
| Access | Constructor and Description |
|---|---|
| public | |
| public | |
| public | LaguerreSolver(double
Relative accuracy. relativeAccuracy, double Absolute accuracy. absoluteAccuracy)Construct a solver. |
| public | LaguerreSolver(double
Relative accuracy. relativeAccuracy, double Absolute accuracy. absoluteAccuracy, double Function value accuracy. functionValueAccuracy)Construct a solver. |
| Modifier and Type | Method and Description |
|---|---|
| public double | doSolve()
Implements abstract org. Method for implementing actual optimization algorithms in derived classes. |
| public double | Returns: the point at which the function value is zero.Lower bound of the search interval. lo, double Higher bound of the search interval. hi, double Function value at the lower bound of the search interval. fLo, double Function value at the higher bound of the search interval. fHi)
Deprecated
This method should not be part of the public API: It will
be made private in version 4.0.
Find a real root in the given interval. |
| public Complex[] | Returns: the full set of complex roots of the polynomialPolynomial coefficients. coefficients, double Start value. initial)Find all complex roots for the polynomial with the given coefficients, starting from the given initial value. |
| public Complex[] | Returns: the full set of complex roots of the polynomialpolynomial coefficients coefficients, double start value initial, int maximum number of evaluations maxEval)Find all complex roots for the polynomial with the given coefficients, starting from the given initial value. |
| public Complex | Returns: a complex root of the polynomialPolynomial coefficients. coefficients, double Start value. initial)Find a complex root for the polynomial with the given coefficients, starting from the given initial value. |
| public Complex | Returns: a complex root of the polynomialpolynomial coefficients coefficients, double start value initial, int maximum number of evaluations maxEval)Find a complex root for the polynomial with the given coefficients, starting from the given initial value. |
| complexSolver | back to summary |
|---|---|
| private final LaguerreSolver. Complex solver. | |
| DEFAULT_ABSOLUTE_ACCURACY | back to summary |
|---|---|
| private static final double DEFAULT_ABSOLUTE_ACCURACY Default absolute accuracy. | |
| LaguerreSolver | back to summary |
|---|---|
| public LaguerreSolver() Construct a solver with default accuracy (1e-6). | |
| LaguerreSolver | back to summary |
|---|---|
| public LaguerreSolver(double absoluteAccuracy) Construct a solver.
| |
| LaguerreSolver | back to summary |
|---|---|
| public LaguerreSolver(double relativeAccuracy, double absoluteAccuracy) Construct a solver.
| |
| LaguerreSolver | back to summary |
|---|---|
| public LaguerreSolver(double relativeAccuracy, double absoluteAccuracy, double functionValueAccuracy) Construct a solver.
| |
| doSolve | back to summary |
|---|---|
| public double doSolve() throws TooManyEvaluationsException, NumberIsTooLargeException, NoBracketingException Implements abstract org. Doc from org. Method for implementing actual optimization algorithms in derived classes.
| |
| laguerre | back to summary |
|---|---|
| public double laguerre(double lo, double hi, double fLo, double fHi)
Deprecated This method should not be part of the public API: It will be made private in version 4.0. Find a real root in the given interval.
Despite the bracketing condition, the root returned by
| |
| solveAllComplex | back to summary |
|---|---|
| public Complex[] solveAllComplex(double[] coefficients, double initial) throws NullArgumentException, NoDataException, TooManyEvaluationsException Find all complex roots for the polynomial with the given coefficients, starting from the given initial value. Note This method is not part of the API of
| |
| solveAllComplex | back to summary |
|---|---|
| public Complex[] solveAllComplex(double[] coefficients, double initial, int maxEval) throws NullArgumentException, NoDataException, TooManyEvaluationsException Find all complex roots for the polynomial with the given coefficients, starting from the given initial value. Note This method is not part of the API of
| |
| solveComplex | back to summary |
|---|---|
| public Complex solveComplex(double[] coefficients, double initial) throws NullArgumentException, NoDataException, TooManyEvaluationsException Find a complex root for the polynomial with the given coefficients, starting from the given initial value. Note This method is not part of the API of
| |
| solveComplex | back to summary |
|---|---|
| public Complex solveComplex(double[] coefficients, double initial, int maxEval) throws NullArgumentException, NoDataException, TooManyEvaluationsException Find a complex root for the polynomial with the given coefficients, starting from the given initial value. Note This method is not part of the API of
| |
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public boolean | |
| public Complex | |
| public Complex[] |
| ComplexSolver | back to summary |
|---|---|
| private ComplexSolver() | |
| isRoot | back to summary |
|---|---|
| public boolean isRoot(double min, double max, Complex z) Check whether the given complex root is actually a real zero in the given interval, within the solver tolerance level.
| |
| solve | back to summary |
|---|---|
| public Complex solve(Complex[] coefficients, Complex initial) throws NullArgumentException, NoDataException, TooManyEvaluationsException Find a complex root for the polynomial with the given coefficients, starting from the given initial value.
| |
| solveAll | back to summary |
|---|---|
| public Complex[] solveAll(Complex[] coefficients, Complex initial) throws NullArgumentException, NoDataException, TooManyEvaluationsException Find all complex roots for the polynomial with the given coefficients, starting from the given initial value.
| |