public class BrentOptimizer extends BaseAbstractUnivariateOptimizer
(lo, hi)
, then
this method finds an approximation x
to the point at which
the function attains its minimum.Constructor and Description |
---|
BrentOptimizer(double rel,
double abs)
The arguments are used implement the original stopping criterion
of Brent's algorithm.
|
BrentOptimizer(double rel,
double abs,
ConvergenceChecker<UnivariatePointValuePair> checker)
The arguments are used implement the original stopping criterion
of Brent's algorithm.
|
Modifier and Type | Method and Description |
---|---|
protected UnivariatePointValuePair |
doOptimize()
Method for implementing actual optimization algorithms in derived
classes.
|
computeObjectiveValue, getConvergenceChecker, getEvaluations, getGoalType, getMax, getMaxEvaluations, getMin, getStartValue, optimize, optimize
public BrentOptimizer(double rel, double abs, ConvergenceChecker<UnivariatePointValuePair> checker)
abs
and rel
define a tolerance
tol = rel |x| + abs
. rel
should be no smaller than
2 macheps and preferably not much less than sqrt(macheps),
where macheps is the relative machine precision. abs
must
be positive.rel
- Relative threshold.abs
- Absolute threshold.checker
- Additional, user-defined, convergence checking
procedure.NotStrictlyPositiveException
- if abs <= 0
.NumberIsTooSmallException
- if rel < 2 * Math.ulp(1d)
.public BrentOptimizer(double rel, double abs)
abs
and rel
define a tolerance
tol = rel |x| + abs
. rel
should be no smaller than
2 macheps and preferably not much less than sqrt(macheps),
where macheps is the relative machine precision. abs
must
be positive.rel
- Relative threshold.abs
- Absolute threshold.NotStrictlyPositiveException
- if abs <= 0
.NumberIsTooSmallException
- if rel < 2 * Math.ulp(1d)
.protected UnivariatePointValuePair doOptimize()
doOptimize
in class BaseAbstractUnivariateOptimizer
Copyright © 2003-2012 Apache Software Foundation. All Rights Reserved.