## gov.sandia.cognition.learning.algorithm.minimization.line.interpolator Interface LineBracketInterpolator<EvaluatorType extends Evaluator<Double,Double>>

Type Parameters:
`EvaluatorType` - Type of Evaluator to use
All Superinterfaces:
Cloneable, CloneableSerializable, Serializable
All Known Implementing Classes:
AbstractLineBracketInterpolator, AbstractLineBracketInterpolatorPolynomial, LineBracketInterpolatorBrent, LineBracketInterpolatorGoldenSection, LineBracketInterpolatorHermiteCubic, LineBracketInterpolatorHermiteParabola, LineBracketInterpolatorLinear, LineBracketInterpolatorParabola

`public interface LineBracketInterpolator<EvaluatorType extends Evaluator<Double,Double>>extends CloneableSerializable`

Definition of an interpolator/extrapolator for a LineBracket. A LineBracketInterpolator takes the points contained in a LineBracket and fits a computationally efficient function to those points (such as a parabola, straight line, etc.). The interpolating function is then used to find a hypothesized minimum on a required interval.

Since:
2.1
Author:
Kevin R. Dixon

Method Summary
` double` ```findMinimum(LineBracket bracket, double minx, double maxx, EvaluatorType function)```
Finds the minimum of the bracket using the interpolation/extrapolation routine, where the minimum must lie between the minx and maxx values on the x-axis.
` double` `getTolerance()`
Gets the tolerance of the interpolator to collinear or identical points, typically 1e-6, must be greater than 0.0.
` boolean` `hasSufficientPoints(LineBracket bracket)`
Determines if the LineBracket contains a sufficient number/quality of points to conduct the interpolation.

Methods inherited from interface gov.sandia.cognition.util.CloneableSerializable
`clone`

Method Detail

### getTolerance

`double getTolerance()`
Gets the tolerance of the interpolator to collinear or identical points, typically 1e-6, must be greater than 0.0.

Returns:
Tolerance of the interpolator

### findMinimum

```double findMinimum(LineBracket bracket,
double minx,
double maxx,
EvaluatorType function)```
Finds the minimum of the bracket using the interpolation/extrapolation routine, where the minimum must lie between the minx and maxx values on the x-axis.

Parameters:
`bracket` - Bracket of points
`minx` - Minimum x-axis value to search for the minimum
`maxx` - Maximum x-axis value to search for the minimum
`function` - Function to consider. The function, or gradient, may be evaluated to generate enough output/slope samples to interpolate.
Returns:
Minimum value of the function between minx and maxx.

### hasSufficientPoints

`boolean hasSufficientPoints(LineBracket bracket)`
Determines if the LineBracket contains a sufficient number/quality of points to conduct the interpolation.

Parameters:
`bracket` - LineBracket to consider
Returns:
true if the LineBracket has a sufficient number of points, false if the LineBracket doesn't have enough.