public class LaguerreSolver extends AbstractPolynomialSolver
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.
Constructor and Description |
---|
LaguerreSolver()
Construct a solver with default accuracy (1e-6).
|
LaguerreSolver(double absoluteAccuracy)
Construct a solver.
|
LaguerreSolver(double relativeAccuracy,
double absoluteAccuracy)
Construct a solver.
|
LaguerreSolver(double relativeAccuracy,
double absoluteAccuracy,
double functionValueAccuracy)
Construct a solver.
|
Modifier and Type | Method and Description |
---|---|
double |
doSolve()
Method for implementing actual optimization algorithms in derived
classes.
|
Complex[] |
solveAllComplex(double[] coefficients,
double initial)
Find all complex roots for the polynomial with the given
coefficients, starting from the given initial value.
|
Complex |
solveComplex(double[] coefficients,
double initial)
Find a complex root for the polynomial with the given coefficients,
starting from the given initial value.
|
getCoefficients, setup
computeObjectiveValue, getAbsoluteAccuracy, getEvaluations, getFunctionValueAccuracy, getMax, getMaxEvaluations, getMin, getRelativeAccuracy, getStartValue, incrementEvaluationCount, isBracketing, isSequence, solve, solve, solve, verifyBracketing, verifyInterval, verifySequence, verifySequenceStrict
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getAbsoluteAccuracy, getEvaluations, getFunctionValueAccuracy, getMaxEvaluations, getRelativeAccuracy, solve, solve, solve
public LaguerreSolver()
public LaguerreSolver(double absoluteAccuracy)
absoluteAccuracy
- Absolute accuracy.public LaguerreSolver(double relativeAccuracy, double absoluteAccuracy)
relativeAccuracy
- Relative accuracy.absoluteAccuracy
- Absolute accuracy.public LaguerreSolver(double relativeAccuracy, double absoluteAccuracy, double functionValueAccuracy)
relativeAccuracy
- Relative accuracy.absoluteAccuracy
- Absolute accuracy.functionValueAccuracy
- Function value accuracy.public double doSolve()
doSolve
in class BaseAbstractUnivariateSolver<PolynomialFunction>
public Complex[] solveAllComplex(double[] coefficients, double initial)
BaseUnivariateSolver
.coefficients
- Polynomial coefficients.initial
- Start value.TooManyEvaluationsException
- if the maximum number of evaluations is exceeded.NullArgumentException
- if the coefficients
is null
.NoDataException
- if the coefficients
array is empty.TooManyEvaluationsException
- if too many evaluations are required.public Complex solveComplex(double[] coefficients, double initial)
BaseUnivariateSolver
.coefficients
- Polynomial coefficients.initial
- Start value.TooManyEvaluationsException
- if the maximum number of evaluations is exceeded.NullArgumentException
- if the coefficients
is null
.NoDataException
- if the coefficients
array is empty.TooManyEvaluationsException
- if too many evaluations are required.Copyright © 2023 CNES. All rights reserved.