NEWTON'S FORWARD DIFFERENCE FORMULA
Making use of forward difference operator and forward difference
table ( will be defined a little later) this scheme simplifies the calculations
involved in the polynomial approximation of fuctons which are known at
equally spaced data points.
Consider the equation of the linear interpolation optained in the earlier
section :
|
f1 - f0 |
|
f0x1 - f1x0
|
f(x) @ P1(x) = ax-1b
= |
|
x + |
|
|
x1 - x0 |
|
x1 - x0
|
= |
1
|
[(x1 - x)f0 + (x-x0)f1] |
(x1 - x0)
|
x1 - x |
|
x - x0
|
|
x - x0 |
|
|
f0 + |
|
(f1- f0) + |
|
f0 |
x1 - x0 |
|
x1 - x0
|
|
x1 - x0 |
|
|
|
x - x0
|
|
= |
f0 + |
|
(f1- f0) |
|
|
x1 - x0
|
|
= f0 + r Df0
[ r = (x - x0) / (x1 - x0) Df0
= f1 - f0 ]
since x1 - x0 is the step lenght
h,
r can be written as (x - x0)/h and will be between
(0, 1).
Error in the linear interpolation
:
If e(x) is the
error in the linear interpolation then
e(x) = P1(x)
- f(x) = f0 + r(f1 - f0)
- f(x)
By Taylor's theorem
f(x) = f(x0 +
r h) = f0 + r h f0'
+ 1/2 r2 h2 f0'' (f),
x0 < f < x1
f1 =
f(x1) =
f(x0 + h) = f0
+
h f0' + 1/2 h2 f0''(u),
x0 < u < x1
Þe(x) = f0
+ r ( f0 + h f0' + 1/2 h2 f0''
(u) - f0 ) - ( f0 + r
h f0' + 1/2 s2 h2 f0''(t) )
= 1/2 h2 ( r f0''(u)
-
r2 f0''(t) )
Let us assume that the second derivative of the function is
bounded such that | f ''(x) | < M2 and
since
r < 1 we have | e(x) |
< 1/2 h2 ( M2+M2)
= h2M2
The general formula is very convenient to find the function
value at various points if forward difference at various points are avilable.
Similarly the polynomial approximations of functions of higher degree also
can be expressed in terms of r and forward differences
of higher order. Instead of using the method of solving the system as we
did earlier it is convenient to use binomial formulae involving the difference
operators to generate the higher order interpolation formuale.
Newton's forward difference formulae
:
Let the function f is known at n+1
equally spaced data points a = x0 < x1 <
... < = xn = b in the interval [a,b]
as f0, f1, . . . fn. Then the n
the degree polynomial approximation of f(x) can be given
as
|
n |
|
|
|
|
f(x) @ Pn(x)
= |
S |
( |
r
i
|
) |
Di f0 |
|
i=0 |
|
|
|
|
where r = (x-x0 ) / n Þ
x = x0 + r h Þ
0
<r
<n
and |
( |
r |
) |
are the binomial coefficients defined as |
( |
r |
) =
1, |
( |
r |
) |
= |
r(r - 1) . . . (r - i + 1)
|
for any integer i > 0 |
i |
0 |
i |
i!
|
Proof :
To prove that the given result is the n the degree polynomial
approximation of f(x) it is sufficeint to prove that at the node
i i.e., at x = xi the polynomial
approximation
Pn(x) gives fi for any
tabulated value
xi since the curve f(x) passes
through the node points
xi, i = 0, 1, . . ., n
Take r = k
Þ
x
= x0 + r h = x0 + k h = xk
|
k |
|
|
|
|
|
|
|
|
Þ fk = |
S |
( |
k
i
|
) |
= f0 + k Df0
+ . . . + |
( |
k
k |
) |
Dk f0 |
|
i=0 |
|
|
|
|
|
|
|
|
the terms after k need not be considered since |
( |
n |
) = 0, |
for n < i |
i |
we can prove this result by mathematical induction.
consider k = 0
|
0 |
|
|
|
Þ f0 = |
S |
Di f0 |
= f0 |
hence the result is true for k = 0 and assume that the
result is also true upto k = 1, 2, . . . p |
|
i=0 |
|
|
|
fp = f0 + rDf0
+ . . . + |
( |
p |
) Dp
f0 |
p |
consider
fp+1 = fp
+ Dfp
|
+ |
|
+ . . . + |
|
+ |
|
+ . . . + |
|
+ |
|
k+1
|
|
|
|
|
S |
( |
k+1
i
|
) |
Di f0 |
i=0
|
|
|
|
|
i.e., the nth degree polynomial approximation for f(x)
can be written as
f(x) @
Pn(x) = f0 + rDf0
+ |
r(r-1)
|
D2f0 |
+ . . . + |
r(r-1) . . . (r - n +1)
|
Dnf0 |
2!
|
n!
|
The formula is called Newton's (Newton-Gregory) forward interpolation
formula.
So if we know the forward difference values of f
at x0 until order n then the above formula is
very easy to use to find the function values of f at any non-tabulated
value of x in the internal [a,b].The higher order forward
differences can be obtained by making use of forward difference table.
Forward difference table
: Consider the function value (xi, fi)
i = 0,1,2,--5 then the forward difference table is
xi
|
fi
|
Dfi
|
D2fi
|
D3fi
|
D4fi
|
D5fi
|
|
|
|
|
|
|
|
x0
|
f0
|
|
|
|
|
|
|
|
Df0 = f1-
f0
|
|
|
|
|
x1
|
f1
|
|
D2f0 =
Df1-
Df0
|
|
|
|
|
|
Df1 = f2
- f1
|
|
D3f0 =
D2f1-
D2f0
|
|
|
x2
|
f2
|
|
D2f1 =
Df2
- Df1
|
|
D4f0 =
D3f1-
D3f0
|
|
|
|
Df2 = f3
- f2
|
|
D3f1 =
D2f2
- D2f1
|
|
D5f0 =
D4f1-
D4f0
|
x3
|
f3
|
|
D2f2 =
Df3
- Df2
|
|
D4f1 =
D3f2
- D3f1
|
|
|
|
Df3 = f4
- f3
|
|
D3f2 =
D2f3
- D2f2
|
|
|
x4
|
f4
|
|
D2f3 =
Df4
- Df3
|
|
|
|
|
|
Df4 = f5
- f4
|
|
|
|
|
x5
|
f5
|
|
|
|
|
|
Example
: If f(x) is known
at the following data points
xi
|
0
|
1
|
2
|
3
|
4
|
fi
|
1
|
7
|
23
|
55
|
109
|
then find f(0.5) and f(1.5) using Newton's forward
difference formula.
Solution :
Forward difference table
xi
|
fi
|
Dfi
|
D2fi
|
D3fi
|
D4fi
|
|
|
|
|
|
|
0
|
1
|
|
|
|
|
|
|
6
|
|
|
|
1
|
7
|
|
10
|
|
|
|
|
16
|
|
6
|
|
2
|
23
|
|
16
|
|
0
|
|
|
32
|
|
6
|
|
3
|
55
|
|
22
|
|
|
|
|
54
|
|
|
|
4
|
109
|
|
|
|
|
(Note : The given data satifies f(x) = x3 +
2x2 + 3x +1, i.e the function is a third degree polynomial
and hence third forward differences are constant by the result).
By Newton's forward difference formula
f(x) = f0 + rDf0
+ |
r(r-1)
|
D2f0 |
+ |
r(r-1)(r-2)
|
D3f0 |
2!
|
3!
|
at x = 0.5, r = (x - x0) / h = (0.5 - 0)
/ 1 = 0.5
f(0.5) = 1 + 0.5 x 6
+ |
0.5(0.5 - 1) x 10
5
|
+ |
0.5(0.5 - 1)(0.5 - 2) x 6 |
2
|
6
|
= 1 + 3 + 2.5 x
(-0.5) + (-0.25)(-1.5)
= 3.125
Exact value is
f(0.5) = (0.5)3 + 2(0.5)2 + 3(0.5) + 1
= 0.125 +
0.5 + 1.5 + 1
= 3.125
Error in the Interpolation
:
ÞEn(x) = (x - x0)(x
- x1) . . .(x - xn) f(n+1)(x)
/ (n+1)!
x0 < x < xn
So for the Newton's method where the nodel points xi,
i = 0, 1, . . . n are equally spaced, the error is
En(x) = (x - x0)(x - x0 - h) . . .(x
- x0 - nh) f(n+1)(x)
/ (n+1)!
= |
r(r-1). . .(r-n)
|
h(n+1)f(n+1)(x) |
(n+1)!
|
= ( |
r
|
) h(n+1)f(n+1)(x) |
n+1
|
|