## Interface BoundCurveInterpolator

• All Known Implementing Classes:
AbstractBoundCurveInterpolator

public interface BoundCurveInterpolator
A curve interpolator that has been bound to a specific curve.

A bound interpolator is created from a CurveInterpolator. The bind process takes the definition of the interpolator and combines it with the x-y values. This allows implementations to optimize interpolation calculations.

A bound interpolator is typically linked to two extrapolators. If an attempt is made to interpolate an x-value outside the range defined by the first and last nodes, the appropriate extrapolator will be used.

• ### Method Summary

All Methods
Modifier and Type Method Description
BoundCurveInterpolator bind​(BoundCurveExtrapolator extrapolatorLeft, BoundCurveExtrapolator extrapolatorRight)
Binds this interpolator to the specified extrapolators.
double firstDerivative​(double x)
Computes the first derivative of the y-value for the specified x-value.
double interpolate​(double x)
Computes the y-value for the specified x-value by interpolation.
DoubleArray parameterSensitivity​(double x)
Computes the sensitivity of the y-value with respect to the curve parameters.
• ### Method Detail

• #### interpolate

double interpolate​(double x)
Computes the y-value for the specified x-value by interpolation.
Parameters:
x - the x-value to find the y-value for
Returns:
the value at the x-value
Throws:
java.lang.RuntimeException - if the y-value cannot be calculated
• #### firstDerivative

double firstDerivative​(double x)
Computes the first derivative of the y-value for the specified x-value.

The first derivative is dy/dx.

Parameters:
x - the x-value at which the derivative is taken
Returns:
the first derivative
Throws:
java.lang.RuntimeException - if the derivative cannot be calculated
• #### parameterSensitivity

DoubleArray parameterSensitivity​(double x)
Computes the sensitivity of the y-value with respect to the curve parameters.

This returns an array with one element for each parameter of the curve. The array contains the sensitivity of the y-value at the specified x-value to each parameter.

Parameters:
x - the x-value at which the parameter sensitivity is computed
Returns:
the sensitivity
Throws:
java.lang.RuntimeException - if the sensitivity cannot be calculated
• #### bind

BoundCurveInterpolator bind​(BoundCurveExtrapolator extrapolatorLeft,
BoundCurveExtrapolator extrapolatorRight)
Binds this interpolator to the specified extrapolators.

The bound interpolator provides methods to interpolate the y-value for a x-value. If an attempt is made to interpolate an x-value outside the range defined by the first and last nodes, the appropriate extrapolator will be used.

This method is intended to be called from within CurveInterpolator.bind(DoubleArray, DoubleArray, CurveExtrapolator, CurveExtrapolator).

Parameters:
extrapolatorLeft - the extrapolator for x-values on the left
extrapolatorRight - the extrapolator for x-values on the right
Returns:
the bound interpolator