IMSL C# Numerical Library

Spline2D Class

Represents and evaluates tensor-product splines.

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

System.Object
   Imsl.Math.Spline2D
      Imsl.Math.Spline2DInterpolate

public abstract class Spline2D

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

The simplest method of obtaining multivariate interpolation and approximation functions is to take univariate methods and form a multivariate method via tensor products. In the case of two-dimensional spline interpolation, the derivation proceeds as follows. Let t_x be a knot sequence for splines of order k_x, and t_y be a knot sequence for splines of order k_y. Let N_x + k_x be the length of t_x, and N_y + k_x be the length of t_y. Then, the tensor-product spline has the following form.

\sum\limits_{m = 0}^{N_y  - 1} {\sum\limits_{n = 0}^{N_x  - 1} {c_{nm} B_{n,k_x ,t_x } \left( x \right)B_{m,k_y ,t_y } \left( y \right)} }
Given two sets of points
\left\{ {x_i } \right\}_{i = 1}^{N_x }
and
\left\{ {y_j } \right\}_{j = 1}^{N_y }
for which the corresponding univariate interpolation problem can be solved, the tensor-product interpolation problem finds the coefficients c_{nm} so that
\sum\limits_{m = 0}^{N_y  - 1} {\sum\limits_{n = 0}^{N_x  - 1} {c_{nm} B_{n,k_x ,t_x } \left( {x_i } \right)B_{m,k_y ,t_y } \left( {y_j } \right)} }  = f_{ij}
This problem can be solved efficiently by repeatedly solving univariate interpolation problems as described in de Boor (1978, p. 347).

Requirements

Namespace: Imsl.Math

Assembly: ImslCS (in ImslCS.dll)

See Also

Spline2D Members | Imsl.Math Namespace | Example