FUNC - Type of function to solve.public abstract class BaseAbstractUnivariateSolver<FUNC extends UnivariateFunction> extends Object implements BaseUnivariateSolver<FUNC>
| Modifier and Type | Method and Description |
|---|---|
double |
getAbsoluteAccuracy()
Get the absolute accuracy of the solver.
|
int |
getEvaluations()
Get the number of evaluations of the objective function.
|
double |
getFunctionValueAccuracy()
Get the function value accuracy of the solver.
|
double |
getMax() |
int |
getMaxEvaluations()
Get the maximum number of function evaluations.
|
double |
getMin() |
double |
getRelativeAccuracy()
Get the relative accuracy of the solver.
|
double |
getStartValue() |
double |
solve(int maxEval,
FUNC f,
double startValue)
Solve for a zero in the vicinity of
startValue. |
double |
solve(int maxEval,
FUNC f,
double min,
double max)
Solve for a zero root in the given interval.
|
double |
solve(int maxEval,
FUNC f,
double min,
double max,
double startValue)
Solve for a zero in the given interval, start at
startValue. |
public int getMaxEvaluations()
getMaxEvaluations in interface BaseUnivariateSolver<FUNC extends UnivariateFunction>public int getEvaluations()
optimize method. It is 0 if the method has not been
called yet.getEvaluations in interface BaseUnivariateSolver<FUNC extends UnivariateFunction>public double getMin()
public double getMax()
public double getStartValue()
public double getAbsoluteAccuracy()
v is a value returned by
one of the solve methods, then a root of the function should
exist somewhere in the interval (v - ε, v + ε).getAbsoluteAccuracy in interface BaseUnivariateSolver<FUNC extends UnivariateFunction>public double getRelativeAccuracy()
BaseUnivariateSolver.getAbsoluteAccuracy(), but using
relative, rather than absolute error. If ρ is the relative accuracy
configured for a solver and v is a value returned, then a root
of the function should exist somewhere in the interval
(v - ρ v, v + ρ v).getRelativeAccuracy in interface BaseUnivariateSolver<FUNC extends UnivariateFunction>public double getFunctionValueAccuracy()
v is
a value returned by the solver for a function f,
then by contract, |f(v)| should be less than or equal to
the function value accuracy configured for the solver.getFunctionValueAccuracy in interface BaseUnivariateSolver<FUNC extends UnivariateFunction>public double solve(int maxEval,
FUNC f,
double min,
double max,
double startValue)
throws TooManyEvaluationsException,
NoBracketingException
startValue.
A solver may require that the interval brackets a single zero root.
Solvers that do require bracketing should be able to handle the case
where one of the endpoints is itself a root.solve in interface BaseUnivariateSolver<FUNC extends UnivariateFunction>maxEval - Maximum number of evaluations.f - Function to solve.min - Lower bound for the interval.max - Upper bound for the interval.startValue - Start value to use.TooManyEvaluationsException - if
the allowed number of evaluations is exceeded.NoBracketingExceptionpublic double solve(int maxEval,
FUNC f,
double min,
double max)
solve in interface BaseUnivariateSolver<FUNC extends UnivariateFunction>maxEval - Maximum number of evaluations.f - Function to solve.min - Lower bound for the interval.max - Upper bound for the interval.public double solve(int maxEval,
FUNC f,
double startValue)
throws TooManyEvaluationsException,
NoBracketingException
startValue.solve in interface BaseUnivariateSolver<FUNC extends UnivariateFunction>maxEval - Maximum number of evaluations.f - Function to solve.startValue - Start value to use.TooManyEvaluationsException - if
the allowed number of evaluations is exceeded.NoBracketingExceptionJas4pp 1.5 © Java Analysis Studio for Particle Physics