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

java.lang.Object
  extended by org.apache.commons.math.analysis.interpolation.BicubicSplineFunction
All Implemented Interfaces:
BivariateRealFunction

 class BicubicSplineFunction
extends java.lang.Object
implements BivariateRealFunction

2D-spline function.

Version:
$Revision$ $Date$

Field Summary
private  double[][] a
          Coefficients
private static short N
          Number of points.
private  BivariateRealFunction partialDerivativeX
          First partial derivative along x.
private  BivariateRealFunction partialDerivativeXX
          Second partial derivative along x.
private  BivariateRealFunction partialDerivativeXY
          Second crossed partial derivative.
private  BivariateRealFunction partialDerivativeY
          First partial derivative along y.
private  BivariateRealFunction partialDerivativeYY
          Second partial derivative along y.
 
Constructor Summary
BicubicSplineFunction(double[] a)
          Simple constructor.
 
Method Summary
private  double apply(double[] pX, double[] pY, double[][] coeff)
          Compute the value of the bicubic polynomial.
private  void computePartialDerivatives()
          Compute all partial derivatives functions.
 BivariateRealFunction partialDerivativeX()
           
 BivariateRealFunction partialDerivativeXX()
           
 BivariateRealFunction partialDerivativeXY()
           
 BivariateRealFunction partialDerivativeY()
           
 BivariateRealFunction partialDerivativeYY()
           
 double value(double x, double y)
          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

N

private static final short N
Number of points.

See Also:
Constant Field Values

a

private final double[][] a
Coefficients


partialDerivativeX

private BivariateRealFunction partialDerivativeX
First partial derivative along x.


partialDerivativeY

private BivariateRealFunction partialDerivativeY
First partial derivative along y.


partialDerivativeXX

private BivariateRealFunction partialDerivativeXX
Second partial derivative along x.


partialDerivativeYY

private BivariateRealFunction partialDerivativeYY
Second partial derivative along y.


partialDerivativeXY

private BivariateRealFunction partialDerivativeXY
Second crossed partial derivative.

Constructor Detail

BicubicSplineFunction

public BicubicSplineFunction(double[] a)
Simple constructor.

Parameters:
a - Spline coefficients
Method Detail

value

public double value(double x,
                    double y)
Compute the value for the function.

Specified by:
value in interface BivariateRealFunction
Parameters:
x - Abscissa for which the function value should be computed.
y - Ordinate for which the function value should be computed.
Returns:
the value.

apply

private double apply(double[] pX,
                     double[] pY,
                     double[][] coeff)
Compute the value of the bicubic polynomial.

Parameters:
pX - Powers of the x-coordinate.
pY - Powers of the y-coordinate.
coeff - Spline coefficients.
Returns:
the interpolated value.

partialDerivativeX

public BivariateRealFunction partialDerivativeX()
Returns:
the partial derivative wrt x.

partialDerivativeY

public BivariateRealFunction partialDerivativeY()
Returns:
the partial derivative wrt y.

partialDerivativeXX

public BivariateRealFunction partialDerivativeXX()
Returns:
the second partial derivative wrt x.

partialDerivativeYY

public BivariateRealFunction partialDerivativeYY()
Returns:
the second partial derivative wrt y.

partialDerivativeXY

public BivariateRealFunction partialDerivativeXY()
Returns:
the second partial cross-derivative.

computePartialDerivatives

private void computePartialDerivatives()
Compute all partial derivatives functions.



Copyright (c) 2003-2011 Apache Software Foundation