org.apache.commons.math.analysis.interpolation
Class BicubicSplineInterpolator

java.lang.Object
  extended by org.apache.commons.math.analysis.interpolation.BicubicSplineInterpolator
All Implemented Interfaces:
BivariateRealGridInterpolator
Direct Known Subclasses:
SmoothingPolynomialBicubicSplineInterpolator

public class BicubicSplineInterpolator
extends Object
implements BivariateRealGridInterpolator

Generates a bicubic interpolating function.

Since:
2.2
Version:
$Revision: 980944 $ $Date: 2010-07-30 22:31:11 +0200 (ven. 30 juil. 2010) $

Constructor Summary
BicubicSplineInterpolator()
           
 
Method Summary
 BicubicSplineInterpolatingFunction interpolate(double[] xval, double[] yval, double[][] fval)
          Computes an interpolating function for the data set.
private  int nextIndex(int i, int max)
          Compute the next index of an array, clipping if necessary.
private  int previousIndex(int i)
          Compute the previous index of an array, clipping if necessary.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BicubicSplineInterpolator

public BicubicSplineInterpolator()
Method Detail

interpolate

public BicubicSplineInterpolatingFunction interpolate(double[] xval,
                                                      double[] yval,
                                                      double[][] fval)
                                               throws MathException,
                                                      IllegalArgumentException
Computes an interpolating function for the data set.

Specified by:
interpolate in interface BivariateRealGridInterpolator
Parameters:
xval - All the x-coordinates of the interpolation points, sorted in increasing order.
yval - All the y-coordinates of the interpolation points, sorted in increasing order.
fval - The values of the interpolation points on all the grid knots: fval[i][j] = f(xval[i], yval[j]).
Returns:
a function which interpolates the data set.
Throws:
MathException - if arguments violate assumptions made by the interpolation algorithm.
IllegalArgumentException

nextIndex

private int nextIndex(int i,
                      int max)
Compute the next index of an array, clipping if necessary. It is assumed (but not checked) that i is larger than or equal to 0}.

Parameters:
i - Index
max - Upper limit of the array
Returns:
the next index

previousIndex

private int previousIndex(int i)
Compute the previous index of an array, clipping if necessary. It is assumed (but not checked) that i is smaller than the size of the array.

Parameters:
i - Index
Returns:
the previous index


Copyright (c) 2003-2011 Apache Software Foundation