INTERP Interpolation Routines

INTERP is a C++ library which takes a set of data associated with successive values of a parameter, and produces an interpolating function which can be evaluated over a continuous range of the parameter.

Languages:

INTERP is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Data and Programs:

BERNSTEIN_POLYNOMIAL, a C++ library which evaluates the Bernstein polynomials, useful for uniform approximation of functions;

DIVDIF, a C++ library which uses divided differences to interpolate data.

HERMITE, a C++ library which computes the Hermite interpolant, a polynomial that matches function values and derivatives.

LEBESGUE, a C++ library which is given a set of nodes in 1D, and plots the Lebesgue function, and estimates the Lebesgue constant, which measures the maximum magnitude of the potential error of Lagrange polynomial interpolation, and which uses gnuplot to make plots of the Lebesgue function.

RBF_INTERP, a C++ library which defines and evaluates radial basis interpolants to multidimensional data.

SPLINE, a C++ library which computes functions that approximate or interpolate data.

TEST_APPROX, a C++ library which defines a number of test problems for approximation and interpolation.

TEST_INTERP_1D, a C++ library which defines test problems for interpolation of data y(x), depending on a 1D argument.

Reference:

1. Samuel Conte, Carl deBoor,
Elementary Numerical Analysis,
Second Edition,
McGraw Hill, 1972,
ISBN: 07-012446-4,
LC: QA297.C65.

List of Routines:

• CC_ABSCISSAS computes the Clenshaw Curtis abscissas.
• CC_ABSCISSAS_AB computes the Clenshaw Curtis abscissas for the interval [A,B].
• F1_ABSCISSAS computes Fejer type 1 abscissas.
• F1_ABSCISSAS_AB computes Fejer type 1 abscissas for the interval [A,B].
• F2_ABSCISSAS computes Fejer Type 2 abscissas.
• F2_ABSCISSAS_AB computes Fejer Type 2 abscissas for the interval [A,B].
• INTERP_LAGRANGE: Lagrange polynomial interpolation to a curve in M dimensions.
• INTERP_LINEAR: piecewise linear interpolation to a curve in M dimensions.
• INTERP_NEAREST: Nearest neighbor interpolation to a curve in M dimensions.
• LAGRANGE_VALUE evaluates the Lagrange polynomials.
• NCC_ABSCISSAS computes the Newton Cotes Closed abscissas.
• NCC_ABSCISSAS_AB computes the Newton Cotes Closed abscissas for [A,B].
• NCO_ABSCISSAS computes the Newton Cotes Open abscissas.
• NCO_ABSCISSAS_AB computes the Newton Cotes Open abscissas for [A,B].
• PARAMETERIZE_ARC_LENGTH parameterizes data by pseudo-arclength.
• PARAMETERIZE_INDEX parameterizes data by its index.
• R8MAT_EXPAND_LINEAR2 expands an R8MAT by linear interpolation.
• R8VEC_ASCENDS_STRICTLY determines if an R8VEC is strictly ascending.
• R8VEC_BRACKET searches a sorted R8VEC for successive brackets of a value.
• R8VEC_EXPAND_LINEAR linearly interpolates new data into an R8VEC.
• R8VEC_EXPAND_LINEAR2 linearly interpolates new data into an R8VEC.
• R8VEC_SORTED_NEAREST returns the nearest element in a sorted R8VEC.
• TIMESTAMP prints the current YMDHMS date as a time stamp.

You can go up one level to the C++ source codes.

Last revised on 03 March 2014.