Additional top-level class in compilation unit: TricubicFunction.
Tricubic interpolation in three dimensions, F. Lekien and J. Marsden, Int. J. Numer. Meth. Eng 2005; 63:455-471
| Modifier and Type | Field and Description |
|---|---|
| private static final double[][] | AINV
Matrix to compute the spline coefficients from the function values and function derivatives values |
| private final TricubicFunction[][][] | splines
Set of cubic splines patching the whole data grid |
| private final double[] | xval
Samples x-coordinates |
| private final double[] | yval
Samples y-coordinates |
| private final double[] | zval
Samples z-coordinates |
| Access | Constructor and Description |
|---|---|
| public | TricubicInterpolatingFunction(double[]
Sample values of the x-coordinate, in increasing order. x, double[] Sample values of the y-coordinate, in increasing order. y, double[] Sample values of the y-coordinate, in increasing order. z, double[][][] Values of the function on every grid point. f, double[][][] Values of the partial derivative of function with respect to x on every grid point. dFdX, double[][][] Values of the partial derivative of function with respect to y on every grid point. dFdY, double[][][] Values of the partial derivative of function with respect to z on every grid point. dFdZ, double[][][] Values of the cross partial derivative of function on every grid point. d2FdXdY, double[][][] Values of the cross partial derivative of function on every grid point. d2FdXdZ, double[][][] Values of the cross partial derivative of function on every grid point. d2FdYdZ, double[][][] Values of the cross partial derivative of function on every grid point. d3FdXdYdZ)
|
| Modifier and Type | Method and Description |
|---|---|
| private double[] | Returns: the spline coefficients.List of function values and function partial derivatives values. beta)Compute the spline coefficients from the list of function values and function partial derivatives values at the four corners of a grid element. |
| public boolean | Returns: true if (x, y, z) is a valid point.First coordinate. x, double Second coordinate. y, double Third coordinate. z)Indicates whether a point is within the interpolation range. |
| private int | Returns: the index inval corresponding to the interval containing c, or -1
if c is out of the range defined by the end values of val.Coordinate. c, double[] Coordinate samples. val)
|
| public double | value(double
x-coordinate for which the function value should be computed. x, double y-coordinate for which the function value should be computed. y, double z-coordinate for which the function value should be computed. z)Implements org. Compute the value for the function. |
| AINV | back to summary |
|---|---|
| private static final double[][] AINV Matrix to compute the spline coefficients from the function values and function derivatives values | |
| splines | back to summary |
|---|---|
| private final TricubicFunction[][][] splines Set of cubic splines patching the whole data grid | |
| xval | back to summary |
|---|---|
| private final double[] xval Samples x-coordinates | |
| yval | back to summary |
|---|---|
| private final double[] yval Samples y-coordinates | |
| zval | back to summary |
|---|---|
| private final double[] zval Samples z-coordinates | |
| TricubicInterpolatingFunction | back to summary |
|---|---|
public TricubicInterpolatingFunction(double[] x, double[] y, double[] z, double[][][] f, double[][][] dFdX, double[][][] dFdY, double[][][] dFdZ, double[][][] d2FdXdY, double[][][] d2FdXdZ, double[][][] d2FdYdZ, double[][][] d3FdXdYdZ) throws NoDataException, DimensionMismatchException, NonMonotonicSequenceException
| |
| computeCoefficients | back to summary |
|---|---|
| private double[] computeCoefficients(double[] beta) 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:
| |
| isValidPoint | back to summary |
|---|---|
| public boolean isValidPoint(double x, double y, double z) Indicates whether a point is within the interpolation range.
| |
| searchIndex | back to summary |
|---|---|
private int searchIndex(double c, double[] val)
| |
| value | back to summary |
|---|---|
| public double value(double x, double y, double z) throws OutOfRangeException Implements org. Doc from org. Compute the value for the function.
| |