|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.commons.math.analysis.interpolation.TricubicSplineInterpolatingFunction
public class TricubicSplineInterpolatingFunction
Function that implements the
tricubic spline interpolation, as proposed in
Tricubic interpolation in three dimensions
F. Lekien and J. Marsden
Int. J. Numer. Meth. Engng 2005; 63:455-471
| Field Summary | |
|---|---|
private static double[][] |
AINV
Matrix to compute the spline coefficients from the function values and function derivatives values |
private TricubicSplineFunction[][][] |
splines
Set of cubic splines pacthing the whole data grid |
private double[] |
xval
Samples x-coordinates |
private double[] |
yval
Samples y-coordinates |
private double[] |
zval
Samples z-coordinates |
| Constructor Summary | |
|---|---|
TricubicSplineInterpolatingFunction(double[] x,
double[] y,
double[] z,
double[][][] f,
double[][][] dFdX,
double[][][] dFdY,
double[][][] dFdZ,
double[][][] d2FdXdY,
double[][][] d2FdXdZ,
double[][][] d2FdYdZ,
double[][][] d3FdXdYdZ)
|
|
| Method Summary | |
|---|---|
private double[] |
computeSplineCoefficients(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. |
private int |
searchIndex(double c,
double[] val)
|
double |
value(double x,
double y,
double z)
Compute the value for the function. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
private static final double[][] AINV
private final double[] xval
private final double[] yval
private final double[] zval
private final TricubicSplineFunction[][][] splines
| Constructor Detail |
|---|
public TricubicSplineInterpolatingFunction(double[] x,
double[] y,
double[] z,
double[][][] f,
double[][][] dFdX,
double[][][] dFdY,
double[][][] dFdZ,
double[][][] d2FdXdY,
double[][][] d2FdXdZ,
double[][][] d2FdYdZ,
double[][][] d3FdXdYdZ)
x - Sample values of the x-coordinate, in increasing order.y - Sample values of the y-coordinate, in increasing order.z - 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.dFdZ - Values of the partial derivative of function with respect
to z on every grid point.d2FdXdY - Values of the cross partial derivative of function on
every grid point.d2FdXdZ - Values of the cross partial derivative of function on
every grid point.d2FdYdZ - Values of the cross partial derivative of function on
every grid point.d3FdXdYdZ - Values of the cross partial derivative of function on
every grid point.
NoDataException - if any of the arrays has zero length.
DimensionMismatchException - if the various arrays do not contain
the expected number of elements.
java.lang.IllegalArgumentException - if x, y or z
are not strictly increasing.| Method Detail |
|---|
public double value(double x,
double y,
double z)
value in interface TrivariateRealFunctionx - x-coordinate for which the function value should be computed.y - y-coordinate for which the function value should be computed.z - z-coordinate for which the function value should be computed.
private int searchIndex(double c,
double[] val)
c - Coordinate.val - Coordinate samples.
val corresponding to the interval
containing c, or -1 if c is out of the
range defined by the end values of val.private double[] computeSplineCoefficients(double[] beta)
beta - List of function values and function partial derivatives
values.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||