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.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
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:
-
Samuel Conte, Carl deBoor,
Elementary Numerical Analysis,
Second Edition,
McGraw Hill, 1972,
ISBN: 07-012446-4,
LC: QA297.C65.
Source Code:
Examples and Tests:
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.