IMSL C# Numerical Library

CsPeriodic Class

Extension of the Spline class to interpolate data points with periodic boundary conditions.

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

System.Object
   Imsl.Math.Spline
      Imsl.Math.CsPeriodic

public class CsPeriodic : 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

Class CsPeriodic 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. The program enforces periodic endpoint conditions. This means that the spline s satisfies s(a) = s(b), {\it{s'}}\left( {\it{a}} \right) = {\it{s'}}\left( {\it{b}} 
            \right), and s''\left( a \right) = s''\left( b 
            \right), where a is the leftmost abscissa and b is the rightmost abscissa. If the ordinate values corresponding to a and b are not equal, then a warning message is issued. The ordinate value at b is set equal to the ordinate value at a and the interpolant is computed.

If the data points arise from the values of a smooth (say C^4) periodic 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-1}]} \le C |f^{(4)}|_{[{\xi_0 ,\xi_{n-1} }]} 
            |\xi|^4
where
|\xi|\;: = \max_{i=1,\ldots,n-1} |\xi_i - 
            \xi_{i - 1} |

For more details, see de Boor (1978, pages 320-322).

Requirements

Namespace: Imsl.Math

Assembly: ImslCS (in ImslCS.dll)

See Also

CsPeriodic Members | Imsl.Math Namespace | Example