Class RationalFunctionInterpolation

java.lang.Object
net.finmath.interpolation.RationalFunctionInterpolation
All Implemented Interfaces:
Serializable, DoubleUnaryOperator

public class RationalFunctionInterpolation extends Object implements DoubleUnaryOperator, Serializable
This class provides methodologies to interpolate given sample points by rational functions, that is, given interpolation points (xi,yi) the class provides a continuous function y = f(x) where
  • f(xi) = yi and
  • for xi < x < xi+1 the function is a fraction of two polynomes f(x) = (sum aj xj) / (sum bk xk).
This setup comprises linear interpolation (for which the function is C0) and cubic spline interpolation (for which the function is C1).
Version:
1.3
Author:
Christian Fries
See Also:
  • Constructor Details

    • RationalFunctionInterpolation

      public RationalFunctionInterpolation(double[] points, double[] values)
      Generate a rational function interpolation from a given set of points.
      Parameters:
      points - The array of the xi sample points of a function y=f(x).
      values - The corresponding array of the yi sample values to the sample points xi.
    • RationalFunctionInterpolation

      public RationalFunctionInterpolation(double[] points, double[] values, RationalFunctionInterpolation.InterpolationMethod interpolationMethod, RationalFunctionInterpolation.ExtrapolationMethod extrapolationMethod)
      Generate a rational function interpolation from a given set of points using the specified interpolation and extrapolation method.
      Parameters:
      points - The array of the xi sample points of a function y=f(x).
      values - The corresponding array of the yi sample values to the sample points xi.
      interpolationMethod - The interpolation method to be used.
      extrapolationMethod - The extrapolation method to be used.
  • Method Details

    • getInterpolationMethod

      public RationalFunctionInterpolation.InterpolationMethod getInterpolationMethod()
      Returns the interpolation method used.
      Returns:
      Returns the interpolationMethod.
    • getValue

      public double getValue(double x)
      Get an interpolated value for a given argument x.
      Parameters:
      x - The abscissa at which the interpolation should be performed.
      Returns:
      The interpolated value (ordinate).
    • main

      public static void main(String[] args)
    • applyAsDouble

      public double applyAsDouble(double operand)
      Specified by:
      applyAsDouble in interface DoubleUnaryOperator