## org.apache.commons.math.analysis.solvers
Class UnivariateRealSolverFactory

    java.lang.Object
      org.apache.commons.math.analysis.solvers.UnivariateRealSolverFactory

Direct Known Subclasses:
  UnivariateRealSolverFactoryImpl

    public abstract class UnivariateRealSolverFactory

extends java.lang.Object

Abstract factory class used to create `UnivariateRealSolver` instances.

Solvers implementing the following algorithms are supported:

- Bisection
- Brent's method
- Secant method

Concrete factories extending this class also specify a default solver, instances of which are returned by `newDefaultSolver()`.

Common usage:

     SolverFactory factory = UnivariateRealSolverFactory.newInstance();

     // create a Brent solver to use
     BrentSolver solver = factory.newBrentSolver();

Version:
  $Revision: 811685 $ $Date: 2009-09-05 13:36:48 -0400 (Sat, 05 Sep 2009) $

Constructor Summary
`protected` `UnivariateRealSolverFactory()` Default constructor.

Method Summary
`abstract UnivariateRealSolver` `newBisectionSolver()` Create a new `UnivariateRealSolver`.
`abstract UnivariateRealSolver` `newBrentSolver()` Create a new `UnivariateRealSolver`.
`abstract UnivariateRealSolver` `newDefaultSolver()` Create a new `UnivariateRealSolver`.
`static UnivariateRealSolverFactory` `newInstance()` Create a new factory.
`abstract UnivariateRealSolver` `newNewtonSolver()` Create a new `UnivariateRealSolver`.
`abstract UnivariateRealSolver` `newSecantSolver()` Create a new `UnivariateRealSolver`.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### UnivariateRealSolverFactory

    protected UnivariateRealSolverFactory()

  Default constructor.

Method Detail

### newInstance

    public static UnivariateRealSolverFactory newInstance()

  Create a new factory.

  Returns:
    a new factory.

### newDefaultSolver

    public abstract UnivariateRealSolver newDefaultSolver()

  Create a new `UnivariateRealSolver`. The actual solver returned is determined by the underlying factory.

  Returns:
    the new solver.

### newBisectionSolver

    public abstract UnivariateRealSolver newBisectionSolver()

  Create a new `UnivariateRealSolver`. The solver is an implementation of the bisection method.

  Returns:
    the new solver.

### newBrentSolver

    public abstract UnivariateRealSolver newBrentSolver()

  Create a new `UnivariateRealSolver`. The solver is an implementation of the Brent method.

  Returns:
    the new solver.

### newNewtonSolver

    public abstract UnivariateRealSolver newNewtonSolver()

  Create a new `UnivariateRealSolver`. The solver is an implementation of Newton's Method.

  Returns:
    the new solver.

### newSecantSolver

    public abstract UnivariateRealSolver newSecantSolver()

  Create a new `UnivariateRealSolver`. The solver is an implementation of the secant method.

  Returns:
    the new solver.

Copyright (c) 2003-2011 Apache Software Foundation