IMSL C# Numerical Library

CsInterpolate Class

Extension of the Spline class to interpolate data points.

For a list of all members of this type, see CsInterpolate Members.

System.Object
   Imsl.Math.Spline
      Imsl.Math.CsInterpolate

public class CsInterpolate : Spline

Thread Safety

Public static (Shared in Visual Basic) members of this type are safe for multithreaded operations. Instance members are not guaranteed to be thread-safe.

Remarks

CsInterpolate computes a C^2 cubic spline interpolant to a set of data points (x_i, f_i) for i = 0, \ldots, n-1. The breakpoints of the spline are the abscissas. Endpoint conditions are automatically determined by the program. These conditions correspond to the "not-a-knot" condition (see de Boor 1978), which requires that the third derivative of the spline be continuous at the second and next-to-last breakpoint. If n is 2 or 3, then the linear or quadratic interpolating polynomial is computed, respectively.

If the data points arise from the values of a smooth, say, C^4 function f, i.e. f_i = f(x_i), then the error will behave in a predictable fashion. Let \xi be the breakpoint vector for the above spline interpolant. Then, the maximum absolute error satisfies

|f-s|_{[\xi_0,\xi_n]} \le C \left\|f^{(4)}\right\|_{[{\xi_0 ,\xi_n }]} 
            |\xi|^4
where
|\xi|\;: = \max_{i=0,\ldots,n-1} 
            \left|\xi_{i+1} - \xi_i \right|

For more details, see de Boor (1978, pages 55-56).

Requirements

Namespace: Imsl.Math

Assembly: ImslCS (in ImslCS.dll)

See Also

CsInterpolate Members | Imsl.Math Namespace | Example