Class BicubicSplineInterpolatingFunction
- java.lang.Object
-
- org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolatingFunction
-
- All Implemented Interfaces:
BivariateFunction
@Deprecated public class BicubicSplineInterpolatingFunction extends java.lang.Object implements BivariateFunction
Deprecated.as of 3.4 replaced byPiecewiseBicubicSplineInterpolatingFunction
Function that implements the bicubic spline interpolation. Due to numerical accuracy issues this should not be used.- Since:
- 2.1
-
-
Field Summary
Fields Modifier and Type Field Description private static double[][]
AINV
Deprecated.Matrix to compute the spline coefficients from the function values and function derivatives valuesprivate static int
NUM_COEFF
Deprecated.Number of coefficients.private BivariateFunction[][][]
partialDerivatives
Deprecated.Partial derivatives.private BicubicSplineFunction[][]
splines
Deprecated.Set of cubic splines patching the whole data gridprivate double[]
xval
Deprecated.Samples x-coordinatesprivate double[]
yval
Deprecated.Samples y-coordinates
-
Constructor Summary
Constructors Constructor Description BicubicSplineInterpolatingFunction(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
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description 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.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 Detail
-
NUM_COEFF
private static final int NUM_COEFF
Deprecated.Number of coefficients.- See Also:
- Constant Field Values
-
AINV
private static final double[][] AINV
Deprecated.Matrix to compute the spline coefficients from the function values and function derivatives values
-
xval
private final double[] xval
Deprecated.Samples x-coordinates
-
yval
private final double[] yval
Deprecated.Samples y-coordinates
-
splines
private final BicubicSplineFunction[][] splines
Deprecated.Set of cubic splines patching the whole data grid
-
partialDerivatives
private final BivariateFunction[][][] 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 Detail
-
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:
partialDerivativeX(double,double)
,partialDerivativeY(double,double)
,partialDerivativeXX(double,double)
,partialDerivativeYY(double,double)
,partialDerivativeXY(double,double)
-
-
Method Detail
-
value
public double value(double x, double y) throws OutOfRangeException
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
public double partialDerivativeX(double x, double y) throws OutOfRangeException
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
).java.lang.NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivativeY
public double partialDerivativeY(double x, double y) throws OutOfRangeException
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
).java.lang.NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivativeXX
public double partialDerivativeXX(double x, double y) throws OutOfRangeException
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
).java.lang.NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivativeYY
public double partialDerivativeYY(double x, double y) throws OutOfRangeException
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
).java.lang.NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivativeXY
public double partialDerivativeXY(double x, double y) throws OutOfRangeException
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
).java.lang.NullPointerException
- if the internal data were not initialized (cf.constructor
).
-
partialDerivative
private double partialDerivative(int which, double x, double y) throws OutOfRangeException
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
).java.lang.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.
-
-