Professional Documents
Culture Documents
03
Newton’s Divided Difference Interpolation
What is interpolation?
Many times, data is given only at discrete points such as x0 , y0 , x1, y1 , ......, xn 1, yn 1 ,
xn , yn . So, how then does one find the value of y at any other value of x ? Well, a
continuous function f x may be used to represent the n 1 data values with f x passing
through the n 1 points (Figure 1). Then one can find the value of y at any other value of
x . This is called interpolation.
Of course, if x falls outside the range of x for which the data is given, it is no longer
interpolation but instead is called extrapolation.
So what kind of function f x should one choose? A polynomial is a common choice
for an interpolating function because polynomials are easy to
(A) evaluate,
(B) differentiate, and
(C) integrate,
relative to other choices such as a trigonometric and exponential series.
Polynomial interpolation involves finding a polynomial of order n that passes through
the n 1 points. One of the methods of interpolation is called Newton’s divided difference
polynomial method. Other methods include the direct method and the Lagrangian
interpolation method. We will discuss Newton’s divided difference polynomial method in this
chapter.
05.02.1
05.03.2 Chapter 05.03
x3 , y3
x1 , y1
fx
x2 , y2
x0 , y0
x
Figure 1 Interpolation of discrete data.
Linear Interpolation
Given (x0 , y0 ) and (x1 , y1 ), fit a linear interpolant through the data. Noting y f (x) and y1 f (x1
) , assume the linear interpolant f1 (x) is given by (Figure 2)
f1 (x) b0 b1 (x x0 )
Since at x x0 ,
f1 (x0 ) f (x0 ) b0 b1 (x0 x0 ) b0
and at x x1 ,
1 x1 x0
So
b0 f (x0 )
f (x ) f (x )
b 1 0
1 x 1 x0
giving the linear interpolant as
f1 (x)
b0
b1 (x
x0 )
f (x ) f (x )
f (x) f (x ) 1 0 (x x )
1 0 x1 x0 0
Newton’s Divided Difference Interpolation 05.03.3
x1 , y1
f1 x
x0 , y0
x
Example 1
The upward velocity of a rocket is given as a function of time in Table 1 (Figure 3).
Determine the value of the velocity at t 16 seconds using first order polynomial interpolation
by Newton’s divided difference polynomial method.
Solution
For linear interpolation, the velocity is given by
v(t) b0 b1(t t0 )
Since we want to find the velocity at t 16 , and we are using a first order polynomial, we need
to choose the two data points that are closest to t 16 that also bracket t 16 to evaluate it. The
two points are t 15 and t 20 . Then
362.78
v(t1 ) v(t0 )
b1
t1 t0
517.35 362.78
20 15
30.914
Figure 3 Graph of velocity vs. time data for the rocket example.
Hence
v(t) b0 b1 (t t0 )
362.78 30.914(t 15), 15 t 20
At t 16,
v(16) 362.78 30.914(16 15)
393.69 m/s
If we expand
v(t) 362.78 30.914(t 15), 15 t 20
we get
v(t) 100.93 30.914t, 15 t 20
and this is the same expression as obtained in the direct method.
Quadratic Interpolation
Given (x0 , y0 ), (x1 , y1 ), and (x2 , y2 ), fit a quadratic interpolant through the data. Noting
y f (x), y0 f (x0 ), y1 f (x1 ), and y2 f (x2 ), assume the quadratic interpolant f2 (x)
is given by
f2 (x) b0 b1 (x x0 ) b2 (x x0 )(x x1 )
Newton’s Divided Difference Interpolation 05.03.5
At x x0 ,
1 x1 x0
At x x2
f2 (x2 ) f (x2 ) b0 b1(x2 x0 ) b2 (x2 x0 )(x2 x1)
f (x1 ) f (x0 )
f (x 2 ) f (x 0 ) (x2 x0 ) b2 (x2 x0 )(x2 x1 ) x1 x0
Giving
f (x2 ) f (x1 ) f (x1 ) f (x0 )
x2 x1 x1 x0
b2
x2 x0
Hence the quadratic interpolant is given by
f2 (x) b0 b1 (x x0 ) b2 (x x0 )(x x1 )
x1 x0 x2 x0
x1, y1
x2 , y2
f2 x
x0 , y 0
x
Example 2
The upward velocity of a rocket is given as a function of time in Table 2.
Determine the value of the velocity at t 16 seconds using second order polynomial
interpolation using Newton’s divided difference polynomial method.
Solution
For quadratic interpolation, the velocity is given
by v(t) b0 b1 (t t0 ) b2 (t t0 )(t t1 )
Since we want to find the velocity at t 16, and we are using a second order polynomial, we
need to choose the three data points that are closest to t 16 that also bracket t 16 to evaluate it.
The three points are t0 10, t1 15, and t2 20 .
Then
t0 10, v(t0 ) 227.04
t1 15, v(t1 ) 362.78
t2 20, v(t2 ) 517.35
gives
b0 v(t0 )
227.04
v(t1 ) v(t0 )
b1
t1 t0
362.78 227.04
15 10
27.148
v(t2 ) v(t1 ) v(t1 ) v(t0 )
t2 t1 t1 t0
b2
t2 t0
517.35 362.78 362.78 227.04
20 15 15 10
20 10
30.914 27.148
10
Newton’s Divided Difference Interpolation 05.03.7
0.37660
Hence
v(t) b0 b1 (t t0 ) b2 (t t0 )(t t1 )
227.04 27.148(t 10) 0.37660(t 10)(t 15), 10 t 20
At t 16,
v(16) 227.04 27.148(16 10) 0.37660(16 10)(16 15)
392.19 m/s
If we expand
v(t) 227.04 27.148(t 10) 0.37660(t 10)(t 15), 10 t 20
we get
v(t) 12.05 17.733t 0.37660t 2 , 10 t 20 This is the
same expression obtained by the direct method.
This leads us to writing the general form of the Newton’s divided difference polynomial for
n 1 data points, x0 , y0 , x1 , y1 ,......, xn 1 , yn 1 , xn , yn , as
fn (x) b0 b1 (x x0 ) .... bn (x x0 )(x x1 )...(x xn 1 )
where
b0 f [x0 ]
b1 f [x1 , x0 ]
b2 f [x2 , x1 , x0 ]
bn 1 f [xn 1 , x n 2 ,...., x0 ]
bn f [xn , xn 1 ,...., x0 ]
where the definition of the mth divided difference is
bm f [xm ,........, x0 ]
f [xm ,........, x1] f [xm 1,........, x0 ]
xm x0
From the above definition, it can be seen that the divided differences are calculated
recursively.
For an example of a third order polynomial, given (x0 , y0 ), (x1 , y1 ), (x2 , y2 ), and (x3 , y3 ),
f3 (x) f [x0 ] f [x1 , x0 ](x x0 ) f [x2 , x1 , x0 ](x x0 )(x x1 )
f [x3 , x2 , x1 , x0 ](x x0 )(x x1 )(x x2 )
b
0 b1
b2
x0 f x0
b
f x1, x0 3
x1 f x1 f x2 , x1, x0
f x2 , x1 f x3, x2 , x1, x0
x2 f x2 f x3 , x2 , x1
f x3 , x2
x3 f x3
Example 3
The upward velocity of a rocket is given as a function of time in Table 3.
Newton’s Divided Difference Interpolation 05.03.9
a) Determine the value of the velocity at t 16 seconds with third order polynomial interpolation
using Newton’s divided difference polynomial method.
b) Using the third order polynomial interpolant for velocity, find the distance covered by the
rocket from t 11s to t 16 s .
c) Using the third order polynomial interpolant for velocity, find the acceleration of the rocket
at t 16 s .
Solution
a) For a third order polynomial, the velocity is given by
v(t) b0 b1 (t t0 ) b2 (t t0 )(t t1 ) b3 (t t0 )(t t1 )(t t2 )
Since we want to find the velocity at t 16, and we are using a third order polynomial, we need
to choose the four data points that are closest to t 16 that also bracket t 16 to evaluate it. The
four data points are t0 10, t1 15, t2 20, and t3 22.5 .
Then
t0 10, v(t0 ) 227.04
t1 15, v(t1 ) 362.78
t2 20, v(t2 ) 517.35
t3 22.5, v(t3 ) 602.97
gives
b0 v[t0 ]
v(t0 )
227.04
b1 v[t1,t0 ]
v(t1 ) v(t0 )
t1 t0
362.78 227.04
15 10
27.148
b2 v[t2 ,t1 ,t0 ]
v[t2 ,t1 ] v[t1 ,t0 ]
t2 t 0
05.03.10 Chapter 05.03
v(t ) v(t )
v[t ,t ] 2 1
2 t2 t1
1
517.35 362.78
20 15
30.914
v[t1 ,t0 ] 27.148
v[t2 ,t1 ] v[t1 ,t0 ]
b2
t2 t0
30.914 27.148
20 10
0.37660
b3 v[t3 ,t2 ,t1 ,t0 ]
v[t3 ,t2 ,t1] v[t2 ,t1,t0 ]
t3 t 0
v[t ,t ] v[t ,t ]
v[t ,t ,t ] 3 2 2 1
3 2 1 t3 t1
v (t ) v (t )
v[t ,t ] 3 2
3 2 t 3 t2
602.97 517.35
22.5 20
34.248
v(t ) v(t )
v[t ,t ] 2 1
2 1 t2 t1
517.35 362.78
20 15
30.914
v[t ,t ] v[t ,t ]
v[t ,t ,t ] 3 2 2 1
3 2 1 t3 t1
34.248 30.914
22.5 15
0.44453
v[t2 ,t1 ,t0 ] 0.37660
v[t ,t ,t ] v[t ,t ,t ]
b 3 2 1 2 1 0
3 t3 t0
0.44453 0.37660
22.5 10
5.4347 10 3
Hence
v(t) b0 b1 (t t0 ) b2 (t t0 )(t t1 ) b3 (t t0 )(tt1 )(tt2 )
Newton’s Divided Difference Interpolation 05.03.11
11
1605 m
c) The acceleration at t 16 is given by
d
a(16) (t)v
dt t 16
d 2 3
dt 4.2541 21.265t 0.13204t 0.0054347t
21.265 0.26408t 0.016304t 2
a(16) 21.265 0.26408(16) 0.016304(16)2
29.664 m/s2
INTERPOLATION
Topic Newton’s Divided Difference Interpolation
Summary Textbook notes on Newton’s divided difference interpolation.
Major General Engineering
Authors Autar Kaw, Michael Keteltas
Last Revised December 23, 2009
Web Site http://numericalmethods.eng.usf.edu