Discrete spline interpolation

From HandWiki

In the mathematical field of numerical analysis, discrete spline interpolation is a form of interpolation where the interpolant is a special type of piecewise polynomial called a discrete spline. A discrete spline is a piecewise polynomial such that its central differences are continuous at the knots whereas a spline is a piecewise polynomial such that its derivatives are continuous at the knots. Discrete cubic splines are discrete splines where the central differences of orders 0, 1, and 2 are required to be continuous.[1] Discrete splines were introduced by Mangasarin and Schumaker in 1971 as solutions of certain minimization problems involving differences.[2]

Discrete cubic splines

Let x1, x2, . . ., xn-1 be an increasing sequence of real numbers. Let g(x) be a piecewise polynomial defined by

[math]\displaystyle{ g(x)= \begin{cases} g_1(x) & x\lt x_1 \\ g_i(x) & x_{i-1}\le x \lt x_i \text{ for } i = 2,3, \ldots, n-1\\ g_n(x) & x\ge x_{n-1} \end{cases} }[/math]

where g1(x), . . ., gn(x) are polynomials of degree 3. Let h > 0. If

[math]\displaystyle{ (g_{i+1}-g_i)(x_i +jh)=0 \text{ for } j=-1,0,1 \text{ and } i=1,2,\ldots, n-1 }[/math]

then g(x) is called a discrete cubic spline.[1]

Alternative formulation 1

The conditions defining a discrete cubic spline are equivalent to the following:

[math]\displaystyle{ g_{i+1}(x_i-h) = g_i(x_i-h) }[/math]
[math]\displaystyle{ g_{i+1}(x_i) = g_i(x_i) }[/math]
[math]\displaystyle{ g_{i+1}(x_i+h) = g_i(x_i+h) }[/math]

Alternative formulation 2

The central differences of orders 0, 1, and 2 of a function f(x) are defined as follows:

[math]\displaystyle{ D^{(0)}f(x) = f(x) }[/math]
[math]\displaystyle{ D^{(1)}f(x)=\frac{f(x+h)-f(x-h)}{2h} }[/math]
[math]\displaystyle{ D^{(2)}f(x)=\frac{f(x+h)-2f(x)+f(x-h)}{h^2} }[/math]

The conditions defining a discrete cubic spline are also equivalent to[1]

[math]\displaystyle{ D^{(j)}g_{i+1}(x_i)=D^{(j)}g_i(x_i) \text{ for } j=0,1,2 \text{ and } i=1,2, \ldots, n-1. }[/math]

This states that the central differences [math]\displaystyle{ D^{(j)}g(x) }[/math] are continuous at xi.

Example

Let x1 = 1 and x2 = 2 so that n = 3. The following function defines a discrete cubic spline:[1]

[math]\displaystyle{ g(x) = \begin{cases} x^3 & x\lt 1 \\ x^3 - 2(x-1)((x-1)^2-h^2) & 1\le x \lt 2\\ x^3 - 2(x-1)((x-1)^2-h^2)+(x-2)((x-2)^2-h^2) & x \ge 2 \end{cases} }[/math]

Discrete cubic spline interpolant

Let x0 < x1 and xn > xn-1 and f(x) be a function defined in the closed interval [x0 - h, xn + h]. Then there is a unique cubic discrete spline g(x) satisfying the following conditions:

[math]\displaystyle{ g(x_i) = f(x_i) \text{ for } i=0,1,\ldots, n. }[/math]
[math]\displaystyle{ D^{(1)}g_1(x_0) = D^{(1)}f(x_0). }[/math]
[math]\displaystyle{ D^{(1)}g_n(x_n) = D^{(1)}f(x_n). }[/math]

This unique discrete cubic spline is the discrete spline interpolant to f(x) in the interval [x0 - h, xn + h]. This interpolant agrees with the values of f(x) at x0, x1, . . ., xn.

Applications

  • Discrete cubic splines were originally introduced as solutions of certain minimization problems.[1][2]
  • They have applications in computing nonlinear splines.[1][3]
  • They are used to obtain approximate solution of a second order boundary value problem.[4]
  • Discrete interpolatory splines have been used to construct biorthogonal wavelets.[5]

References

  1. 1.0 1.1 1.2 1.3 1.4 1.5 Tom Lyche (1979). "Discrete Cubic Spline Interpolation". BIT 16 (3): 281–290. doi:10.1007/bf01932270. 
  2. 2.0 2.1 Mangasarian, O. L.; Schumaker, L. L. (1971). "Discrete splines via mathematical programming". SIAM J. Control 9 (2): 174–183. doi:10.1137/0309015. 
  3. Michael A. Malcolm (April 1977). "On the computation of nonlinear spline functions". SIAM Journal on Numerical Analysis 14 (2): 254–282. doi:10.1137/0714017. 
  4. Fengmin Chen, Wong, P.J.Y. (Dec 2012). "Solving second order boundary value problems by discrete cubic splines". Control Automation Robotics & Vision (ICARCV), 2012 12th International Conference: 1800–1805. 
  5. Averbuch, A.Z., Pevnyi, A.B., Zheludev, V.A. (Nov 2001). "Biorthogonal Butterworth wavelets derived from discrete interpolatory splines". IEEE Transactions on Signal Processing 49 (11): 2682–2692. doi:10.1109/78.960415.