org.apache.commons.math3.optim

## Class AbstractConvergenceChecker<PAIR>

- java.lang.Object
- - org.apache.commons.math3.optim.AbstractConvergenceChecker<PAIR>

- Type Parameters:
    `PAIR` - Type of (point, value) pair.
  All Implemented Interfaces:
    ConvergenceChecker<PAIR>
  Direct Known Subclasses:
    SimplePointChecker, SimpleUnivariateValueChecker, SimpleValueChecker, SimpleVectorValueChecker

      public abstract class AbstractConvergenceChecker<PAIR>
      extends java.lang.Object
      implements ConvergenceChecker<PAIR>

  Base class for all convergence checker implementations.
  Since:
    3.0
  Version:
    $Id: AbstractConvergenceChecker.java 1370215 2012-08-07 12:38:59Z sebb $

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `private double` | `absoluteThreshold` Absolute tolerance threshold.
    `private double` | `relativeThreshold` Relative tolerance threshold.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AbstractConvergenceChecker(double relativeThreshold, double absoluteThreshold)` Build an instance with a specified thresholds.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `abstract boolean` | `converged(int iteration, PAIR previous, PAIR current)` Check if the optimization algorithm has converged.
    `double` | `getAbsoluteThreshold()`
    `double` | `getRelativeThreshold()`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### relativeThreshold

          private final double relativeThreshold

      Relative tolerance threshold.

    - #### absoluteThreshold

          private final double absoluteThreshold

      Absolute tolerance threshold.

  - ### Constructor Detail

    - #### AbstractConvergenceChecker

          public AbstractConvergenceChecker(double relativeThreshold,
                                    double absoluteThreshold)

      Build an instance with a specified thresholds.
      Parameters:
        `relativeThreshold` - relative tolerance threshold
        `absoluteThreshold` - absolute tolerance threshold

  - ### Method Detail

    - #### getRelativeThreshold

          public double getRelativeThreshold()

      Returns:
        the relative threshold.

    - #### getAbsoluteThreshold

          public double getAbsoluteThreshold()

      Returns:
        the absolute threshold.

    - #### converged

          public abstract boolean converged(int iteration,
                          PAIR previous,
                          PAIR current)

      Check if the optimization algorithm has converged.
      Specified by:
        `converged` in interface `ConvergenceChecker<PAIR>`
      Parameters:
        `iteration` - Current iteration.
        `previous` - Best point in the previous iteration.
        `current` - Best point in the current iteration.
      Returns:
        `true` if the algorithm is considered to have converged.

Copyright (c) 2003-2013 Apache Software Foundation