# Interpolation and Approximation

## CURVE AND SURFACE FITTING WITH SPLINES

ROUTINE | DESCRIPTION |
---|---|

SPLINE_CONSTRAINTS | Returns the derived type array result. |

SPLINE_VALUES | Returns an array result, given an array of input. |

SPLINE_FITTING | Weighted least-squares fitting by B-splines to discrete One-Dimensional data is performed. |

SURFACE_CONSTRAINTS | Returns the derived type array result given optional input. |

SURFACE_VALUES | Returns a tensor product array result, given two arrays of independent variable values. |

SURFACE_FITTING | Weighted least-squares fitting by tensor product B-splines to discrete Two-dimensional data is performed. |

## CUBIC SPLINE INTERPOLATION

ROUTINE | DESCRIPTION |
---|---|

CSIEZ | Computes the cubic spline interpolant with the 'not-a-knot' condition and returns values of the interpolant at specified points. |

CSINT | Computes the cubic spline interpolant with the 'not-a-knot' condition. |

CSDEC | Computes the cubic spline interpolant with specified derivative endpoint conditions. |

CSHER | Computes the Hermite cubic spline interpolant. |

CSAKM | Computes the Akima cubic spline interpolant. |

CSCON | Computes a cubic spline interpolant that is consistent with the concavity of the data. |

CSPER | Computes the cubic spline interpolant with periodic boundary conditions. |

## CUBIC SPLINE EVALUATION AND INTEGRATION

ROUTINE | DESCRIPTION |
---|---|

CSVAL | Evaluates a cubic spline. |

CSDER | Evaluates the derivative of a cubic spline. |

CS1GD | Evaluates the derivative of a cubic spline on a grid. |

CSITG | Evaluates the integral of a cubic spline. |

## B-SPLINE INTERPOLATION

ROUTINE | DESCRIPTION |
---|---|

SPLEZ | Computes the values of a spline that either interpolates or fits user-supplied data. |

BSINT | Computes the spline interpolant, returning the B-spline coefficients. |

BSNAK | Computes the “not-a-knot” spline knot sequence. |

BSOPK | Computes the “optimal” spline knot sequence. |

BS2IN | Computes a two-dimensional tensor-product spline interpolant, returning the tensor-product B-spline coefficients. |

BS3IN | Computes a three-dimensional tensor-product spline interpolant, returning the tensor-product B-spline coefficients. |

## SPLINE EVALUATION, INTEGRATION, AND CONVERSION TO PIECEWISE POLYNOMIAL GIVEN THE B-SPLINE REPRESENTATION

ROUTINE | DESCRIPTION |
---|---|

BSVAL | Evaluates a spline, given its B-spline representation. |

BSDER | Evaluates the derivative of a spline, given its B-spline representation. |

BS1GD | Evaluates the derivative of a spline on a grid, given its B-spline representation. |

BSITG | Evaluates the integral of a spline, given its B-spline representation. |

BS2VL | Evaluates a two-dimensional tensor-product spline, given its tensor-product B-spline representation. |

BS2DR | Evaluates the derivative of a two-dimensional tensor-product spline, given its tensor-product B-spline representation. |

BS2GD | Evaluates the derivative of a two-dimensional tensor-product spline, given its tensor-product B-spline representation on a grid. |

BS2IG | Evaluates the integral of a tensor-product spline on a rectangular domain,given its tensor-product B-spline representation. |

BS3VL | Evaluates a three-dimensional tensor-product spline, given its tensor-product B-spline representation. |

BS3DR | Evaluates the derivative of a three-dimensional tensor-product spline, given its tensor-product B-spline representation. |

BS3GD | Evaluates the derivative of a three-dimensional tensor-product spline, given its tensor-product B-spline representation on a grid. |

BS3IG | Evaluates the integral of a tensor-product spline in three dimensions over a three-dimensional rectangle, given its tensor-product B-spline representation. |

BSCPP | Converts a spline in B-spline representation to piecewise polynomial representation. |

## PIECEWISE POLYNOMIAL

ROUTINE | DESCRIPTION |
---|---|

PPVAL | Evaluates a piecewise polynomial. |

PPDER | Evaluates the derivative of a piecewise polynominal. |

PP1GD | Evaluates the derivative of a piecewise polynomial on a grid. |

PPITG | Evaluates the integral of a piecewise polynomial. |

## QUADRATIC POLYNOMIAL INTERPOLATION ROUTINES FOR GRIDDED DATA

ROUTINE | DESCRIPTION |
---|---|

QDVAL | Evaluates a function defined on a set of points using quadratic interpolation. |

QDDER | Evaluates the derivative of a function defined on a set of points using quadratic interpolation. |

QD2VL | Evaluates a function defined on a rectangular grid using quadratic interpolation. |

QD2DR | Evaluates the derivative of a function defined on a rectangular grid using quadratic interpolation. |

QD3VL | Evaluates a function defined on a rectangular three-dimensional grid using quadratic interpolation. |

DQ3DR | Evaluates the derivative of a function defined on a rectangular three-dimensional grid using quadratic interpolation. |

## MULTI-DIMENSIONAL INTERPOLATION

ROUTINE | DESCRIPTION |
---|---|

SURF | Computes a smooth bivariate interpolant to scattered data that is locally a quintic polynomial in two variables. |

SURFND | Performs multidimensional interpolation and differentiation for up to 7 dimensions. |

## LEAST-SQUARES APPROXIMATION

ROUTINE | DESCRIPTION |
---|---|

RLINE | Fits a line to a set of data points using least squares. |

RCURV | Fits a polynomial curve using least squares. |

FNLSQ | Computes a least-squares approximation with user-supplied basis functions. |

BSLSQ | Computes the least-squares spline approximation, and returns the B-spline coefficients. |

BSVLS | Computes the variable knot B-spline least squares approximation to given data. |

CONFIT | Computes the least-squares constrained spline approximation, returning the Bspline coefficients. |

BSLS2 | Computes a two-dimensional tensor-product spline approximant using least squares, returning the tensor-product B-spline coefficients. |

BSLS3 | Computes a three-dimensional tensor-product spline approximant using least squares, returning the tensor-product B-spline coefficients. |

## CUBIC SPLINE SMOOTHING

ROUTINE | DESCRIPTION |
---|---|

CSSED | Smooths one-dimensional data by error detection. |

CSSMH | Computes a smooth cubic spline approximation to noisy data. |

CSSCV | Computes a smooth cubic spline approximation to noisy data using cross-validation to estimate the smoothing parameter. |

## RATIONAL L_{∞} APPROXIMATION

ROUTINE | DESCRIPTION |
---|---|

RATCH | Computes a rational weighted Chebyshev approximation to a continuous function on an interval. |