Class BicubicSplineInterpolatingFunction
java.lang.Object
org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolatingFunction
- All Implemented Interfaces:
BivariateFunction
@Deprecated
public class BicubicSplineInterpolatingFunction
extends Object
implements BivariateFunction
Deprecated.
Function that implements the
bicubic spline interpolation. Due to numerical accuracy issues this should not
be used.
- Since:
- 2.1
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final double[][]
Deprecated.Matrix to compute the spline coefficients from the function values and function derivatives valuesprivate static final int
Deprecated.Number of coefficients.private final BivariateFunction[][][]
Deprecated.Partial derivatives.private final BicubicSplineFunction[][]
Deprecated.Set of cubic splines patching the whole data gridprivate final double[]
Deprecated.Samples x-coordinatesprivate final double[]
Deprecated.Samples y-coordinates -
Constructor Summary
ConstructorsConstructorDescriptionBicubicSplineInterpolatingFunction
(double[] x, double[] y, double[][] f, double[][] dFdX, double[][] dFdY, double[][] d2FdXdY) Deprecated.BicubicSplineInterpolatingFunction
(double[] x, double[] y, double[][] f, double[][] dFdX, double[][] dFdY, double[][] d2FdXdY, boolean initializeDerivatives) Deprecated. -
Method Summary
Modifier and TypeMethodDescriptionprivate double[]
computeSplineCoefficients
(double[] beta) Deprecated.Compute the spline coefficients from the list of function values and function partial derivatives values at the four corners of a grid element.boolean
isValidPoint
(double x, double y) Deprecated.Indicates whether a point is within the interpolation range.private double
partialDerivative
(int which, double x, double y) Deprecated.double
partialDerivativeX
(double x, double y) Deprecated.double
partialDerivativeXX
(double x, double y) Deprecated.double
partialDerivativeXY
(double x, double y) Deprecated.double
partialDerivativeY
(double x, double y) Deprecated.double
partialDerivativeYY
(double x, double y) Deprecated.private int
searchIndex
(double c, double[] val) Deprecated.double
value
(double x, double y) Deprecated.Compute the value for the function.
-
Field Details
-
NUM_COEFF
private static final int NUM_COEFFDeprecated.Number of coefficients.- See Also:
-
AINV
private static final double[][] AINVDeprecated.Matrix to compute the spline coefficients from the function values and function derivatives values -
xval
private final double[] xvalDeprecated.Samples x-coordinates -
yval
private final double[] yvalDeprecated.Samples y-coordinates -
splines
Deprecated.Set of cubic splines patching the whole data grid -
partialDerivatives
Deprecated.Partial derivatives. The value of the first index determines the kind of derivatives: 0 = first partial derivatives wrt x 1 = first partial derivatives wrt y 2 = second partial derivatives wrt x 3 = second partial derivatives wrt y 4 = cross partial derivatives
-
-
Constructor Details
-
BicubicSplineInterpolatingFunction
public BicubicSplineInterpolatingFunction(double[] x, double[] y, double[][] f, double[][] dFdX, double[][] dFdY, double[][] d2FdXdY) throws DimensionMismatchException, NoDataException, NonMonotonicSequenceException Deprecated.- 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.dFdX
- Values of the partial derivative of function with respect to x on every grid point.dFdY
- Values of the partial derivative of function with respect to y on every grid point.d2FdXdY
- Values of the cross partial derivative of function on every grid point.- Throws:
DimensionMismatchException
- if the various arrays do not contain the expected number of elements.NonMonotonicSequenceException
- ifx
ory
are not strictly increasing.NoDataException
- if any of the arrays has zero length.
-
BicubicSplineInterpolatingFunction
public BicubicSplineInterpolatingFunction(double[] x, double[] y, double[][] f, double[][] dFdX, double[][] dFdY, double[][] d2FdXdY, boolean initializeDerivatives) throws DimensionMismatchException, NoDataException, NonMonotonicSequenceException Deprecated.- 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.dFdX
- Values of the partial derivative of function with respect to x on every grid point.dFdY
- Values of the partial derivative of function with respect to y on every grid point.d2FdXdY
- Values of the cross partial derivative of function on every grid point.initializeDerivatives
- Whether to initialize the internal data needed for calling any of the methods that compute the partial derivatives this function.- Throws:
DimensionMismatchException
- if the various arrays do not contain the expected number of elements.NonMonotonicSequenceException
- ifx
ory
are not strictly increasing.NoDataException
- if any of the arrays has zero length.- See Also:
-
-
Method Details
-
value
Deprecated.Compute the value for the function.- Specified by:
value
in interfaceBivariateFunction
- 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:
OutOfRangeException
-
isValidPoint
public boolean isValidPoint(double x, double y) Deprecated.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.- Since:
- 3.3
-
partialDerivativeX
Deprecated.- Parameters:
x
- x-coordinate.y
- y-coordinate.- Returns:
- the value at point (x, y) of the first partial derivative with respect to x.
- Throws:
OutOfRangeException
- ifx
(resp.y
) is outside the range defined by the boundary values ofxval
(resp.yval
).NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivativeY
Deprecated.- Parameters:
x
- x-coordinate.y
- y-coordinate.- Returns:
- the value at point (x, y) of the first partial derivative with respect to y.
- Throws:
OutOfRangeException
- ifx
(resp.y
) is outside the range defined by the boundary values ofxval
(resp.yval
).NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivativeXX
Deprecated.- Parameters:
x
- x-coordinate.y
- y-coordinate.- Returns:
- the value at point (x, y) of the second partial derivative with respect to x.
- Throws:
OutOfRangeException
- ifx
(resp.y
) is outside the range defined by the boundary values ofxval
(resp.yval
).NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivativeYY
Deprecated.- Parameters:
x
- x-coordinate.y
- y-coordinate.- Returns:
- the value at point (x, y) of the second partial derivative with respect to y.
- Throws:
OutOfRangeException
- ifx
(resp.y
) is outside the range defined by the boundary values ofxval
(resp.yval
).NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivativeXY
Deprecated.- Parameters:
x
- x-coordinate.y
- y-coordinate.- Returns:
- the value at point (x, y) of the second partial cross-derivative.
- Throws:
OutOfRangeException
- ifx
(resp.y
) is outside the range defined by the boundary values ofxval
(resp.yval
).NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivative
Deprecated.- Parameters:
which
- First index inpartialDerivatives
.x
- x-coordinate.y
- y-coordinate.- Returns:
- the value at point (x, y) of the selected partial derivative.
- Throws:
OutOfRangeException
- ifx
(resp.y
) is outside the range defined by the boundary values ofxval
(resp.yval
).NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
searchIndex
private int searchIndex(double c, double[] val) Deprecated.- Parameters:
c
- Coordinate.val
- Coordinate samples.- Returns:
- the index in
val
corresponding to the interval containingc
. - Throws:
OutOfRangeException
- ifc
is out of the range defined by the boundary values ofval
.
-
computeSplineCoefficients
private double[] computeSplineCoefficients(double[] beta) Deprecated.Compute the spline coefficients from the list of function values and function partial derivatives values at the four corners of a grid element. They must be specified in the following order:- f(0,0)
- f(1,0)
- f(0,1)
- f(1,1)
- fx(0,0)
- fx(1,0)
- fx(0,1)
- fx(1,1)
- fy(0,0)
- fy(1,0)
- fy(0,1)
- fy(1,1)
- fxy(0,0)
- fxy(1,0)
- fxy(0,1)
- fxy(1,1)
- Parameters:
beta
- List of function values and function partial derivatives values.- Returns:
- the spline coefficients.
-
PiecewiseBicubicSplineInterpolatingFunction