org.apache.commons.math3.analysis.interpolation
Class SmoothingPolynomialBicubicSplineInterpolator

java.lang.Object
  extended by org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator
      extended by org.apache.commons.math3.analysis.interpolation.SmoothingPolynomialBicubicSplineInterpolator
All Implemented Interfaces:
BivariateGridInterpolator

public class SmoothingPolynomialBicubicSplineInterpolator
extends BicubicSplineInterpolator

Generates a bicubic interpolation function. Prior to generating the interpolating function, the input is smoothed using polynomial fitting.

Since:
2.2
Version:
$Id: SmoothingPolynomialBicubicSplineInterpolator.java 1423558 2012-12-18 18:07:45Z erans $

Field Summary
private  int xDegree
          Degree of the fitting polynomial.
private  PolynomialFitter xFitter
          Fitter for x.
private  int yDegree
          Degree of the fitting polynomial.
private  PolynomialFitter yFitter
          Fitter for y.
 
Constructor Summary
SmoothingPolynomialBicubicSplineInterpolator()
          Default constructor.
SmoothingPolynomialBicubicSplineInterpolator(int degree)
           
SmoothingPolynomialBicubicSplineInterpolator(int xDegree, int yDegree)
           
 
Method Summary
 BicubicSplineInterpolatingFunction interpolate(double[] xval, double[] yval, double[][] fval)
          Compute an interpolating function for the dataset.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

xFitter

private final PolynomialFitter xFitter
Fitter for x.


xDegree

private final int xDegree
Degree of the fitting polynomial.


yFitter

private final PolynomialFitter yFitter
Fitter for y.


yDegree

private final int yDegree
Degree of the fitting polynomial.

Constructor Detail

SmoothingPolynomialBicubicSplineInterpolator

public SmoothingPolynomialBicubicSplineInterpolator()
Default constructor. The degree of the fitting polynomials is set to 3.


SmoothingPolynomialBicubicSplineInterpolator

public SmoothingPolynomialBicubicSplineInterpolator(int degree)
Parameters:
degree - Degree of the polynomial fitting functions.

SmoothingPolynomialBicubicSplineInterpolator

public SmoothingPolynomialBicubicSplineInterpolator(int xDegree,
                                                    int yDegree)
Parameters:
xDegree - Degree of the polynomial fitting functions along the x-dimension.
yDegree - Degree of the polynomial fitting functions along the y-dimension.
Method Detail

interpolate

public BicubicSplineInterpolatingFunction interpolate(double[] xval,
                                                      double[] yval,
                                                      double[][] fval)
                                               throws NoDataException,
                                                      DimensionMismatchException
Compute an interpolating function for the dataset.

Specified by:
interpolate in interface BivariateGridInterpolator
Overrides:
interpolate in class BicubicSplineInterpolator
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 dataset.
Throws:
NoDataException - if any of the arrays has zero length.
DimensionMismatchException - if the array lengths are inconsistent.


Copyright (c) 2003-2013 Apache Software Foundation