Expand description
The functions described here manipulate polynomials stored in Newton’s divided-difference representation. The use of divided-differences is described in Abramowitz & Stegun sections 25.1.4 and 25.2.26, and Burden and Faires, chapter 3, and discussed briefly below.
Given a function f(x), an nth degree interpolating polynomial P_{n}(x) can be constructed which agrees with f at n+1 distinct points x_0, x_1,…,x_{n}. This polynomial can be written in a form known as Newton’s divided-difference representation:
P_n(x) = f(x_0) + \sum_(k=1)^n [x_0,x_1,…,x_k] (x-x_0)(x-x_1)…(x-x_(k-1))
where the divided differences [x_0,x_1,…,x_k] are defined in section 25.1.4 of Abramowitz and Stegun. Additionally, it is possible to construct an interpolating polynomial of degree 2n+1 which also matches the first derivatives of f at the points x_0,x_1,…,x_n. This is called the Hermite interpolating polynomial and is defined as
H_(2n+1)(x) = f(z_0) + \sum_(k=1)^(2n+1) [z_0,z_1,…,z_k] (x-z_0)(x-z_1)…(x-z_(k-1))
where the elements of z = {x_0,x_0,x_1,x_1,…,x_n,x_n} are defined by z_{2k} = z_{2k+1} = x_k. The divided-differences [z_0,z_1,…,z_k] are discussed in Burden and Faires, section 3.4.