Class PiecewiseBicubicSplineInterpolatingFunction

java.lang.Object
org.hipparchus.analysis.interpolation.PiecewiseBicubicSplineInterpolatingFunction
All Implemented Interfaces:
BivariateFunction, FieldBivariateFunction

public class PiecewiseBicubicSplineInterpolatingFunction extends Object implements BivariateFunction, FieldBivariateFunction
Function that implements the bicubic spline interpolation. This implementation currently uses AkimaSplineInterpolator as the underlying one-dimensional interpolator, which requires 5 sample points; insufficient data will raise an exception when the value method is called.
• Constructor Summary

Constructors
Constructor
Description
PiecewiseBicubicSplineInterpolatingFunction(double[] x, double[] y, double[][] f)
Simple constructor.
• Method Summary

Modifier and Type
Method
Description
boolean
isValidPoint(double x, double y)
Indicates whether a point is within the interpolation range.
double
value(double x, double y)
Compute the value for the function.
<T extends CalculusFieldElement<T>>T
value(T x, T y)
Compute the value for the function.

Methods inherited from class java.lang.Object

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

Methods inherited from interface org.hipparchus.analysis.FieldBivariateFunction

toCalculusFieldBivariateFunction
• Constructor Details

• PiecewiseBicubicSplineInterpolatingFunction

public PiecewiseBicubicSplineInterpolatingFunction(double[] x, double[] y, double[][] f) throws
Simple constructor.
Parameters:
x - Sample values of the x-coordinate, in increasing order.
y - Sample values of the y-coordinate, in increasing order.
f - Values of the function on every grid point. the expected number of elements.
Throws:
MathIllegalArgumentException - if x or y are not strictly increasing.
NullArgumentException - if any of the arguments are null
MathIllegalArgumentException - if any of the arrays has zero length.
MathIllegalArgumentException - if the length of x and y don't match the row, column height of f
• Method Details

• value

public double value(double x, double y) throws MathIllegalArgumentException
Compute the value for the function.
Specified by:
value in interface BivariateFunction
Parameters:
x - Abscissa for which the function value should be computed.
y - Ordinate for which the function value should be computed.
Returns:
the value.
Throws:
MathIllegalArgumentException
• value

public <T extends CalculusFieldElement<T>> T value(T x, T y) throws MathIllegalArgumentException
Compute the value for the function.
Specified by:
value in interface FieldBivariateFunction
Type Parameters:
T - type of the field elements
Parameters:
x - Abscissa for which the function value should be computed.
y - Ordinate for which the function value should be computed.
Returns:
the value.
Throws:
MathIllegalArgumentException
Since:
1.5
• isValidPoint

public boolean isValidPoint(double x, double y)
Indicates whether a point is within the interpolation range.
Parameters:
x - First coordinate.
y - Second coordinate.
Returns:
true if (x, y) is a valid point.