Top Description Fields Constructors Methods
org.apache.commons.math3.analysis.solvers

public Class RiddersSolver

extends AbstractUnivariateSolver
Class Inheritance
Imports
org.apache.commons.math3.util.FastMath, org.apache.commons.math3.exception.NoBracketingException, .TooManyEvaluationsException

Implements the Ridders' Method for root finding of real univariate functions. For reference, see C. Ridders, A new algorithm for computing a single root of a real continuous function , IEEE Transactions on Circuits and Systems, 26 (1979), 979 - 980.

The function should be continuous but not necessarily smooth.

Since
1.2

Field Summary

Modifier and TypeField and Description
private static final double
DEFAULT_ABSOLUTE_ACCURACY

Default absolute accuracy.

Constructor Summary

AccessConstructor and Description
public
RiddersSolver()

Construct a solver with default accuracy (1e-6).

public
RiddersSolver(double
Absolute accuracy.
absoluteAccuracy
)

Construct a solver.

public
RiddersSolver(double
Relative accuracy.
relativeAccuracy
,
double
Absolute accuracy.
absoluteAccuracy
)

Construct a solver.

Method Summary

Modifier and TypeMethod and Description
protected double
doSolve()

Implements abstract org.apache.commons.math3.analysis.solvers.BaseAbstractUnivariateSolver.doSolve.

Method for implementing actual optimization algorithms in derived classes.

Field Detail

DEFAULT_ABSOLUTE_ACCURACYback to summary
private static final double DEFAULT_ABSOLUTE_ACCURACY

Default absolute accuracy.

Constructor Detail

RiddersSolverback to summary
public RiddersSolver()

Construct a solver with default accuracy (1e-6).

RiddersSolverback to summary
public RiddersSolver(double absoluteAccuracy)

Construct a solver.

Parameters
absoluteAccuracy:double

Absolute accuracy.

RiddersSolverback to summary
public RiddersSolver(double relativeAccuracy, double absoluteAccuracy)

Construct a solver.

Parameters
relativeAccuracy:double

Relative accuracy.

absoluteAccuracy:double

Absolute accuracy.

Method Detail

doSolveback to summary
protected double doSolve() throws TooManyEvaluationsException, NoBracketingException

Implements abstract org.apache.commons.math3.analysis.solvers.BaseAbstractUnivariateSolver.doSolve.

Doc from org.apache.commons.math3.analysis.solvers.BaseAbstractUnivariateSolver.doSolve.

Method for implementing actual optimization algorithms in derived classes.

Returns:double

the root.

Annotations
@Override
Exceptions
TooManyEvaluationsException:
if the maximal number of evaluations is exceeded.
NoBracketingException:
if the initial search interval does not bracket a root and the solver requires it.