User:MathMartin/Newton polynomial

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In the mathematical subfield of numerical analysis, a Newton polynomial, named after its inventor Isaac Newton, is the interpolation polynomial for a given set of data points.

The Newton polynomial is sometimes called Newton interpolation polynomial. This is a bit misleading as there is only one interpolation polynomial for a given set of knots. The more precise name is interpolation polynomial in the Newton form.

Main idea

Solving an interpolation problems leads to a problem in linear algebra where we have to solve a matrix. Using a standard monomial basis for our interpolation polynomial we get the very complicated Vandermonde matrix. By choosing another basis, the Newton basis, we get a much simpler lower triangular matrix which can solved faster.

We construct the Newton basis as

nn(x):=ν=0n(xxν1)n=0,,N

Using this basis we we to solve

𝐀𝐚=(101x1x01x2x11xNx0n=0N1(xNxn))(a0aN)=(y0yN)

to solve the polynomial interpolation problem.

This matrix can be solved recursively by solving the following equations

ν=0naνnν(xn)=ynn=0,...,N

Interpolation polynomial in Newton form

Given a set of N+1 data points

(x0,y0),,(xN,yN)

where no two xn are the same, the interpolation polynomial is a polynomial function N(x) of degree N with

N(xn)=ynn=0,,N

According to the Stone-Weierstrass theorem such a function exists and is unique.

The Newton polynomial is the solution to the interpolation problem. It is given by the a linear combination of Newton basis polynomials:

N(x):=n=0Nannn(x)

with the Newton basis polynomials defined as

nn(x):=ν=0n(xxν1)

and the coefficients defined as

an:=[y0,,yn]

where

[y0,,yn]

is the notation for divided differences.

Thus the Newton polynomial can be written as

N(x):=[y0]+[y0,y1](xx0)++[y0,,yN](xx0)(xxN1)

Divided differences

The notion of divided differences is a recursive division process.

We define

[yν]:=yν , ν=0,,n
[yν,,yν+j]:=[yν+1,yν+j][yν,yν+j1]xν+jxν , ν=0,,nj,j=1,,n

For the first few [yn] this yields

[y0]=y0
[y0,y1]=y2y1x2x1
[y0,y1,y2]=y3y1x3x1x2x1(y2y1)(x3x1)(x3x2)

To make the recurive process more clear the divided differences can be put in a tabular form

x0y0=[y0][y0,y1]x1y1=[y1][y0,y1,y2][y1,y2][y0,y1,y2,y3]x2y2=[y2][y1,y2,y3][y2,y3]x3y3=[y3]

On the diagonal of this table you will find the coefficients, as

a0=y0
a1=[y0,y1]
a2=[y0,y1,y2]
a3=[y0,y1,y2,y3]

See also