You are on page 1of 101

INTERPOLATION

Hoang Hai Ha

Email: hoanghaiha@hcmut.edu.vn

February 22, 2024

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 1 / 51


O UTLINE

1 I NTRODUCTION

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 2 / 51


O UTLINE

1 I NTRODUCTION

2 P OLYNOMIAL INTERPOLATIONS

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 2 / 51


O UTLINE

1 I NTRODUCTION

2 P OLYNOMIAL INTERPOLATIONS

3 L EAST SQUARE METHOD

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 2 / 51


O UTLINE

1 I NTRODUCTION

2 P OLYNOMIAL INTERPOLATIONS

3 L EAST SQUARE METHOD

4 C UBIC SPLINES

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 2 / 51


I NTRODUCTION

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 3 / 51


A PROBLEM

A census of the population of the US is taken every 10 years. The


following table lists the population, in thousands of people, from
1960 to 2010 and the data are also represented in the figure

Year 1960 1970 1980 1990 2000 2010


Population 179.2 203.3 226.5 249.6 281.4 308.7

The question is: Find the population of the US in 1975.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 4 / 51


A PROBLEM

A census of the population of the US is taken every 10 years. The


following table lists the population, in thousands of people, from
1960 to 2010 and the data are also represented in the figure

Year 1960 1970 1980 1990 2000 2010


Population 179.2 203.3 226.5 249.6 281.4 308.7

The question is: Find the population of the US in 1975.


D EFINITION 1.1
The process constructing a function that fit known data points is
called interpolation and is the subject of this chapter.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 4 / 51


P OLYNOMIAL INTERPOLATIONS

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 5 / 51


P OLYNOMIAL INTERPOLATIONS

Some values of a function y = f (x) are given by the table of data:

xi x0 x1 x2 ... xn
y i = f (x i ) y0 y1 y2 ... yn

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 6 / 51


P OLYNOMIAL INTERPOLATIONS

Some values of a function y = f (x) are given by the table of data:

xi x0 x1 x2 ... xn
y i = f (x i ) y0 y1 y2 ... yn

We will find a polynomial of degree n or smaller

P n (x) = a n x n + a n−1 x n−1 + . . . + a 1 x + a 0

that passes through all points (x i , y i ), i = 0..n, that is, satisfies

P n (x i ) = y i , i = 0, 1, 2, . . . , n

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 6 / 51


P OLYNOMIAL INTERPOLATIONS

Some values of a function y = f (x) are given by the table of data:

xi x0 x1 x2 ... xn
y i = f (x i ) y0 y1 y2 ... yn

We will find a polynomial of degree n or smaller

P n (x) = a n x n + a n−1 x n−1 + . . . + a 1 x + a 0

that passes through all points (x i , y i ), i = 0..n, that is, satisfies

P n (x i ) = y i , i = 0, 1, 2, . . . , n

P n (x) is called the polynomial interpolation for f (x), x i is called


node.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 6 / 51


Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 7 / 51
E XAMPLE 2.1
Determine the polynomial interpolation that fits the table
x 0 1 3
.
y 1 -1 2

Solution.
Polynomial has the form P (x) = a 0 x 2 + a 1 x + a 2

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 8 / 51


E XAMPLE 2.1
Determine the polynomial interpolation that fits the table
x 0 1 3
.
y 1 -1 2

Solution.
Polynomial has the form P (x) = a 0 x 2 + a 1 x + a 2

 a2 = 1
P (x i ) = y i , then a 0 + a 1 + a 2 = −1
9a 0 + 3a 1 + a 2 = 2

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 8 / 51


E XAMPLE 2.1
Determine the polynomial interpolation that fits the table
x 0 1 3
.
y 1 -1 2

Solution.
Polynomial has the form P (x) = a 0 x 2 + a 1 x + a 2

 a2 = 1
P (x i ) = y i , then a 0 + a 1 + a 2 = −1
9a 0 + 3a 1 + a 2 = 2

T HEOREM 2.1
A function y = f (x) is presented by the table of data
x x0 x1 x2 . . . xn
y y0 y1 y2 . . . yn
Then there is a unique polynomial of maximum degree n P n (x) that
satisfies P n (x i ) = y i .
Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 8 / 51
L AGRANGE POLYNOMIALS

Given a function y = f (x) by the table


x x0 x1 x2 . . . xn
y y0 y1 y2 . . . yn
We compute the polynomial interpolation [x 0 , x n ], n Ê 1.
The Lagrange polynomial interpolation is given as follows
n
L n (x) =
X
p k (x).y k ,
k=0

where
(x − x 0 )(x − x 1 ) . . . (x − x k−1 )(x − x k+1 ) . . . (x − x n )
p k (x) = ,
(x k − x 0 )(x k − x 1 ) . . . (x k − x k−1 )(x k − x k+1 ) . . . (x k − x n )

where k = 0 . . . n − 1.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 9 / 51


E XAMPLE 2.2
x 0 1 3
Given a function y = f (x) by the table: . Evaluate the
y 1 -1 2
approximate value f (2) by using Lagrange polynomial interpolation.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 10 / 51


E XAMPLE 2.2
x 0 1 3
Given a function y = f (x) by the table: . Evaluate the
y 1 -1 2
approximate value f (2) by using Lagrange polynomial interpolation.

Solution
(x − 1)(x − 3) (x − 0)(x − 3) (x − 0)(x − 1)
L 2 (x) = 1× +(−1)× +2× .
(0 − 1)(0 − 3) (1 − 0)(1 − 3) (3 − 0)(3 − 1)
f (2) ≈ −2/3.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 10 / 51


Let

ω(x) = (x − x 0 ) . . . (x − x k−1 )(x − x k )(x − x k+1 ) . . . (x − x n ).

Then
ω(x)
p nk (x) =
ω′ (x k )(x − x k )
The Lagrange interpolation becomes
n yk n y
k
L n (x) = ω(x). ω(x).
X X
= ,
k=0 ω (x k )(x − x k )

k=0 D k

with D k = ω′ (x k )(x − x k ).

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 11 / 51


x x0 x1 ... xn
x0 x − x0 x0 − x1 ... x0 − xn D0
x1 x1 − x0 x − x1 ... x1 − xn D1
... ... ... ... ... ...
xn xn − x0 xn − x1 ... x − xn Dn

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 12 / 51


x x0 x1 ... xn
x0 x − x0 x0 − x1 ... x0 − xn D0
x1 x1 − x0 x − x1 ... x1 − xn D1
... ... ... ... ... ...
xn xn − x0 xn − x1 ... x − xn Dn

n
ω(x) =
Q
(x − x i ) .
i =1

D k : product of all entries on the kth row.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 12 / 51


E XAMPLE 2.3
Given a function y = f (x) that is defined by the table below
x 0 1 3 4
. Using Lagrange polynomial interpolation,
y 1 1 2 -1
approximate the value of f at x = 2.

Solution.
2 0 1 3 4
0 2 − 0 0 − 1 0 − 3 0 − 4 D 0 = −24
1 1−0 2−1 1−3 1−4 D1 = 6
3 3−0 3−1 2−3 3−4 D2 = 6
4 4 − 0 4 − 1 4 − 3 2 − 4 D 3 = −24.
w(x) = 4.
µ ¶
1 1 1 1
f (2) ≈ 4 − × 1 + × 1 + × 2 − × (−1) .
24 6 6 24

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 13 / 51


D IVIDED DIFFERENCES

D EFINITION 2.1
The first divided difference of f respect to x k , x k+1 (denoted
y k+1 − y k
f [x k , x k+1 ]) is defined by: f [x k , x k+1 ] = .
x k+1 − x k

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 14 / 51


D IVIDED DIFFERENCES

D EFINITION 2.1
The first divided difference of f respect to x k , x k+1 (denoted
y k+1 − y k
f [x k , x k+1 ]) is defined by: f [x k , x k+1 ] = .
x k+1 − x k
The second divided difference, f [x k , x k+1 , x k+2 ] is defined :
f [x k+1 , x k+2 ] − f [x k , x k+1 ]
f [x k , x k+1 , x k+2 ] = .
x k+2 − x k

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 14 / 51


D IVIDED DIFFERENCES

D EFINITION 2.1
The first divided difference of f respect to x k , x k+1 (denoted
y k+1 − y k
f [x k , x k+1 ]) is defined by: f [x k , x k+1 ] = .
x k+1 − x k
The second divided difference, f [x k , x k+1 , x k+2 ] is defined :
f [x k+1 , x k+2 ] − f [x k , x k+1 ]
f [x k , x k+1 , x k+2 ] = .
x k+2 − x k
The p t h divided difference, f [x k , x k+1 ..., x k+p ] is defined
f [x k , x k+1 , . . . , x k+p ] =
f [x k+1 , x k+2 , . . . , x k+p ] − f [x k , x k+1 , . . . , x k+p−1 ]
.
x k+p − x k

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 14 / 51


D IVIDED DIFFERENCES

D EFINITION 2.1
The first divided difference of f respect to x k , x k+1 (denoted
y k+1 − y k
f [x k , x k+1 ]) is defined by: f [x k , x k+1 ] = .
x k+1 − x k
The second divided difference, f [x k , x k+1 , x k+2 ] is defined :
f [x k+1 , x k+2 ] − f [x k , x k+1 ]
f [x k , x k+1 , x k+2 ] = .
x k+2 − x k
The p t h divided difference, f [x k , x k+1 ..., x k+p ] is defined
f [x k , x k+1 , . . . , x k+p ] =
f [x k+1 , x k+2 , . . . , x k+p ] − f [x k , x k+1 , . . . , x k+p−1 ]
.
x k+p − x k

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 14 / 51


E XAMPLE 2.4
Find all divided differences of y = f (x) given by the table
x 1.0 1.3 1.6 1.9
y 0.76 0.62 0.45 0.28

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 15 / 51


xk yk 1st DD
1 0.76

1.3 0.62

1.6 0.45

1.9 0.28

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 16 / 51


xk yk 1st DD
1 0.76

-7/15

1.3 0.62

−17/30

1.6 0.45

-17/30

1.9 0.28

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 17 / 51


xk yk 1st DD 2nd DD 3rd DD
1 0.76

-7/15

1.3 0.62 -1/6

−17/30 5/27

1.6 0.45 0

-17/30

1.9 0.28

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 18 / 51


N EWTON POLYNOMIAL INTERPOLATIONS

We find a polynomial degree at most n that fits the data points in the
form:

N (x) = y 0 + a 0 (x − x 0 ) + a 1 (x − x 0 )(x − x 1 ) + a 2 (x − x 0 )(x − x 1 )(x − x 2 ) + ...


... + a n−1 (x − x 0 )(x − x 1 )...(x − x n−1 )

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 19 / 51


N EWTON POLYNOMIAL INTERPOLATIONS

We find a polynomial degree at most n that fits the data points in the
form:

N (x) = y 0 + a 0 (x − x 0 ) + a 1 (x − x 0 )(x − x 1 ) + a 2 (x − x 0 )(x − x 1 )(x − x 2 ) + ...


... + a n−1 (x − x 0 )(x − x 1 )...(x − x n−1 )

N (x 0 ) = y 0

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 19 / 51


N EWTON POLYNOMIAL INTERPOLATIONS

We find a polynomial degree at most n that fits the data points in the
form:

N (x) = y 0 + a 0 (x − x 0 ) + a 1 (x − x 0 )(x − x 1 ) + a 2 (x − x 0 )(x − x 1 )(x − x 2 ) + ...


... + a n−1 (x − x 0 )(x − x 1 )...(x − x n−1 )

N (x 0 ) = y 0
y1 − y0
N (x 1 ) = y 1 = y 0 + a 0 (x 1 − x 0 ), ⇒ a 0 = = f [x 0 , x 1 ].
x1 − x0

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 19 / 51


N EWTON POLYNOMIAL INTERPOLATIONS

We find a polynomial degree at most n that fits the data points in the
form:

N (x) = y 0 + a 0 (x − x 0 ) + a 1 (x − x 0 )(x − x 1 ) + a 2 (x − x 0 )(x − x 1 )(x − x 2 ) + ...


... + a n−1 (x − x 0 )(x − x 1 )...(x − x n−1 )

N (x 0 ) = y 0
y1 − y0
N (x 1 ) = y 1 = y 0 + a 0 (x 1 − x 0 ), ⇒ a 0 = = f [x 0 , x 1 ].
x1 − x0
N (x 2 ) = y 2 = y 0 + f [x 0 , x 1 ](x 2 − x 0 ) + a 1 (x 2 − x 0 )(x 2 − x 1 )

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 19 / 51


y 2 − y 1 + y 1 − y 0 − f [x 0 , x 1 ](x 2 − x 0 )
⇒ a1 =
(x 2 − x 0 )(x 2 − x 1 )
f [x 2 , x 1 ] f [x 0 , x 1 ](x 1 − x 0 ) − f [x 0 , x 1 ](x 2 − x 0 )
= +
x2 − x0 (x 2 − x 0 )(x 2 − x 1 )
f [x 2 , x 1 ] − f [x 0 , x 1 ]
=
x2 − x0
= f [x 0 , x 1 , x 2 ].

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 20 / 51


y 2 − y 1 + y 1 − y 0 − f [x 0 , x 1 ](x 2 − x 0 )
⇒ a1 =
(x 2 − x 0 )(x 2 − x 1 )
f [x 2 , x 1 ] f [x 0 , x 1 ](x 1 − x 0 ) − f [x 0 , x 1 ](x 2 − x 0 )
= +
x2 − x0 (x 2 − x 0 )(x 2 − x 1 )
f [x 2 , x 1 ] − f [x 0 , x 1 ]
=
x2 − x0
= f [x 0 , x 1 , x 2 ].

Similarly, we get a n−1 = f [x 0 , x 1 , ..., x n ].

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 20 / 51


F ORWARD N EWTON POLYNOMIAL INTERPOLATIONS

N (x)= y 0 + f [x 0 , x 1 ](x − x 0 ) + f [x 0 , x 1 , x 2 ](x − x 0 )(x − x 1 )+


+... + f [x 0 , x 1 , ...x n ](x − x 0 )(x − x 1 )...(x − x n−1 ).

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 21 / 51


F ORWARD N EWTON POLYNOMIAL INTERPOLATIONS

N (x)= y 0 + f [x 0 , x 1 ](x − x 0 ) + f [x 0 , x 1 , x 2 ](x − x 0 )(x − x 1 )+


+... + f [x 0 , x 1 , ...x n ](x − x 0 )(x − x 1 )...(x − x n−1 ).

B ACKWARD N EWTON POLYNOMIAL INTERPOLATIONS

N (x) =y n + f [x n , x n−1 ](x − x n )+


+ f [x n , x n−1 , x n−2 ](x − x n )(x − x n−1 )
+... + f [x n , x n−1 , x n−2 , ..., x 0 ](x − x n )(x − x n−1 )...(x − x 1 ).

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 21 / 51


E XAMPLE 2.5
Interpolate the following table of data points by using the Forward
Newton interpolation:

x 1.0 1.3 1.6 1.9


y 0.76 0.62 0.45 0.28

Solution.
7 1 5
N (x) = 0.76 − (x−1)− (x−1)(x−1.3)+ (x−1)(x−1.3)(x−1.6).
15 6 17

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 22 / 51


E XAMPLE 2.6
The following data are given for an interpolating polynomial
unknown degree.

x 0 1 2
.
P (x) 2 −1 4

Determine the coefficient before x 2 if all 3r d DD are 1.

Solution.
The polynomial has form:
P (x) = 2 + f [0, 1]x + f [0, 1, 2]x(x − 1) + f [0, 1, 2, x 3 ] x(x − 1)(x − 2) .
| {z }
=1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 23 / 51


E XAMPLE 2.6
The following data are given for an interpolating polynomial
unknown degree.

x 0 1 2
.
P (x) 2 −1 4

Determine the coefficient before x 2 if all 3r d DD are 1.

Solution.
The polynomial has form:
P (x) = 2 + f [0, 1]x + f [0, 1, 2]x(x − 1) + f [0, 1, 2, x 3 ] x(x − 1)(x − 2) .
| {z }
=1
2
The coefficient before x is : f [0, 1, 2] − 3 f [0, 1, 2, x 3 ] .

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 23 / 51


E RROR

T HEOREM 2.2
Suppose that x 0 , x 1 , . . . x n are distinct points and P (x) is the
interpolating polynomial of a differentiable function of order n + 2
f (x), then we have the estimate
¯ ¯
¯ (n+1) (x − x 0 )(x − x 1 ) . . . (x − x n ) ¯
| f (x) − P (x)| ≤ max ¯ f ¯ (x) ¯.
[a,b] (n + 1)! ¯

E XAMPLE 2.7
Use 3 nodes x = 2, x = 2.75, x = 4 on [2, 4], estimate the maximum
1
error of the interpolating polynomial P (x) of f (x) = .
x

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 24 / 51


Solution of example 2.7
¯ ¯
¯ (3) (x − 2)(x − 2.75)(x − 4) ¯
The maximum error is max ¯ f (x)
¯ ¯.
[2,4] 3! ¯

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 25 / 51


Solution of example 2.7
¯ ¯
¯ (3) (x − 2)(x − 2.75)(x − 4) ¯
The maximum error is max ¯ f (x)
¯ ¯.
[2,4] 3! ¯
3
max | f (3) (x)| = max |6x −4 | = .
[2,4] [2,4] 8
g (x) = (x − 2)(x − 2.75)(x − 4) = x 3 − (35x 2 )/4 + (49)/2 − 22, we
have max |g (x)| = |g (7/2)|.
[2,4]
1
Thus, the maximum error is · |g (7/2)|
16

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 25 / 51


L EAST SQUARE METHOD

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 26 / 51


L EAST SQUARE METHOD

On the plane Ox y, we have a large number of points M k (x k , y k ),


k = 1, 2, ..., n, (at least two points are different x i ̸= x j , i ̸= j . In that
case, the construction a curve going through all these point is not
efficient.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 27 / 51


L EAST SQUARE METHOD

On the plane Ox y, we have a large number of points M k (x k , y k ),


k = 1, 2, ..., n, (at least two points are different x i ̸= x j , i ̸= j . In that
case, the construction a curve going through all these point is not
efficient.
We will find an approximate function y = f (x) that describes data in
the table, but it’s not necessary for it to go exactly through given
points.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 27 / 51


L EAST SQUARE METHOD

Find minimum of the functional


n
( f (x k ) − y k )2 → mi n
X
g(f ) =
k=1

The forms of functions that we usually use are


f (x) = A + B x, f (x) = A + B x +C x 2 , f (x) = Ap(x) + B q(x)
E RROR
We use the next formula to estimate the error of the least square
method
n
( f (x k ) − y k )2 .
P
E=
i =1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 28 / 51


F ORM f (x) = A + B x

Then
n
(A + B x k − y k )2
X
g (A, B ) =
k=1

It leads to finding extreme values of two variables function, so we


need to find critical point (solve the system of partial derivative)

∂ P n n

(A + B x k − y k )2 = 2
P

 (A + B x k − y k ) = 0
∂A k=1

k=1
∂ Pn n
(A + B x k − y k )2 = 2
P
(A + B x k − y k )x k = 0


∂B k=1

k=1

n n
 µ ¶
P P


 nA + xk B = yk
k=1 ¶ k=1
⇔ µ
n
¶ µ
n n
x k2 B =
P P P
xk A + xk y k



k=1 k=1 k=1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 29 / 51


E XAMPLE 3.1
Find the approximate function f (x) = A + B x for the given table by the
least square method and estimate the error E

x 1 1 2 2 2
y 1 2 2 3 4

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 30 / 51


E XAMPLE 3.1
Find the approximate function f (x) = A + B x for the given table by the
least square method and estimate the error E

x 1 1 2 2 2
y 1 2 2 3 4

Solution
y = 1.5x.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 30 / 51


E XAMPLE 3.1
Find the approximate function f (x) = A + B x for the given table by the
least square method and estimate the error E

x 1 1 2 2 2
y 1 2 2 3 4

Solution
y = 1.5x.
5
E = (y i − 1.5x i )2 .
P
i =1

E XAMPLE 3.2
Find the approximate function f (x) = A ln x + B for the given table by
the least square method and linear model.
x 1 1.3 2 2 2.3
.
y 1.3 2 2 3.3 4.3

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 30 / 51


F ORM f (x) = A + B x +C x 2

n
(A + B x k +C x k2 − y k )2
X
g (A, B,C ) =
k=1

We find extreme value of 3 variable function


∂ n

(A + B x k +C x k2 − y k ) = 0
P
 g (A, B,C ) = 2
∂A


k=1


 ∂

n
(A + B x k +C x k2 − y k )x k = 0
P
g (A, B,C ) = 2
 ∂B k=1



 n
(A + B x k +C x k2 − y k )x k2 = 0
P
g (A, B,C ) = 2


∂C

k=1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 31 / 51


This leads to solve the system
n n n
 µ ¶ µ ¶
P P 2 P


 n A + x k B + x k
C = yk
µ k=1 ¶ µ k=1 ¶ k=1


 µP n n n n
 ¶
x k2 B + x k3 C =
P P P
⇔ xk A + xk y k

 k=1 k=1 k=1 k=1
n n n n
 µ ¶ µ ¶ µ ¶
 P
x k2 A + x k3 B + x k4 C = x k2 y k

 P P P

k=1 k=1 k=1 k=1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 32 / 51


E XAMPLE 3.3
Find approximate function f (x) = A + B x +C x 2 for the below table by
using least square method
x 1 1 2 3 3
.
y 4.12 4.18 6.23 8.34 8.38

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 33 / 51


E XAMPLE 3.3
Find approximate function f (x) = A + B x +C x 2 for the below table by
using least square method
x 1 1 2 3 3
.
y 4.12 4.18 6.23 8.34 8.38

E XAMPLE 3.4
Find the approximate function f (x) = A sin x + B cos 2x +C for the
below table by using least square method
x 1 1.2 2.4 3.5 3.7
.
y 4.2 4.8 6.3 8.4 8.8

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 33 / 51


F ORM f (x) = Ap(x) + B q(x)

n
(Ap(x k ) + B q(x k ) − y k )2
X
g (A, B ) =
k=1

We need to define the extreme value of 2 variable function g (A, B )


n

∂ P
 ∂A g (A, B ) = 2 (Ap(x k ) + B q(x k ) − y k )p(x k ) = 0


k=1
n
∂ P
∂B g (A, B ) = 2 (Ap(x k ) + B q(x k ) − y k )q(x k ) = 0



k=1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 34 / 51


F ORM f (x) = Ap(x) + B q(x)

n
(Ap(x k ) + B q(x k ) − y k )2
X
g (A, B ) =
k=1

We need to define the extreme value of 2 variable function g (A, B )


n

∂ P
 ∂A g (A, B ) = 2 (Ap(x k ) + B q(x k ) − y k )p(x k ) = 0


k=1
n
∂ P
∂B g (A, B ) = 2 (Ap(x k ) + B q(x k ) − y k )q(x k ) = 0



k=1
 µ n ¶ µ
n

n
P 2 P P


 p (x k ) A + p(x k )q(x k ) B = p(x k )y k
k=1 k=1 µ k=1
⇔ µ
n

n

n
q 2 (x k ) B =
P P P
p(x k )q(x k ) A + q(x k )y k



k=1 k=1 k=1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 34 / 51


E XAMPLE 3.5
p
Find an approximate function f (x) = A x + B cos(x) for given table
by least square method
x 1.0 1.2 1.4 1.6 1.8
y 2.27 2.37 2.45 2.52 2.60

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 35 / 51


C UBIC SPLINES

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 36 / 51


W HY DO WE USE CUBIC SPLINES ?
Disadvantage of Lagrange and Newton polynomial is that
high-degree polynomials can oscillate erratically( a minor
fluctuation over a small portion of the interval can induce large
fluctuations over the entire range).

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 37 / 51


C UBIC SPLINE INTERPOLATIONS

An alternative approach is to divide the approximation interval into


a collection of subintervals and construct a (generally) different
approximating polynomial on each subinterval. This is called
piecewise-polynomial approximation.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 38 / 51


C UBIC SPLINE INTERPOLATIONS

An alternative approach is to divide the approximation interval into


a collection of subintervals and construct a (generally) different
approximating polynomial on each subinterval. This is called
piecewise-polynomial approximation.
D EFINITION 4.1
A piecewise-polynomial approximation uses polynomials degree 3
between each successive pair of nodes is called the cubic spline
interpolation.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 38 / 51


T HE CASE OF 3 NODES
x x0 x1 x2
Given a function y = f (x) defined by table
f (x) y0 y1 y2
We construct the piecewise polynomial as:
(
S 0 (x) = a 0 + b 0 (x − x 0 ) + c 0 (x − x 0 )2 + d 0 (x − x 0 )3 , x ∈ [x 0 , x 1 ]
S(x) = ,
S 1 (x) = a 1 + b 1 (x − x 1 ) + c 1 (x − x 1 )2 + d 1 (x − x 1 )3 , x ∈ [x 1 , x 2 ]

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 39 / 51


T HE CASE OF 3 NODES
x x0 x1 x2
Given a function y = f (x) defined by table
f (x) y0 y1 y2
We construct the piecewise polynomial as:
(
S 0 (x) = a 0 + b 0 (x − x 0 ) + c 0 (x − x 0 )2 + d 0 (x − x 0 )3 , x ∈ [x 0 , x 1 ]
S(x) = ,
S 1 (x) = a 1 + b 1 (x − x 1 ) + c 1 (x − x 1 )2 + d 1 (x − x 1 )3 , x ∈ [x 1 , x 2 ]

and satisfying the following conditions:


S(x i ) = y i .

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 39 / 51


T HE CASE OF 3 NODES
x x0 x1 x2
Given a function y = f (x) defined by table
f (x) y0 y1 y2
We construct the piecewise polynomial as:
(
S 0 (x) = a 0 + b 0 (x − x 0 ) + c 0 (x − x 0 )2 + d 0 (x − x 0 )3 , x ∈ [x 0 , x 1 ]
S(x) = ,
S 1 (x) = a 1 + b 1 (x − x 1 ) + c 1 (x − x 1 )2 + d 1 (x − x 1 )3 , x ∈ [x 1 , x 2 ]

and satisfying the following conditions:


S(x i ) = y i .
S(x) has continuous second derivative on [x 0 , x 2 ].
S 0 (x 0 ) = y 0 , S 0 (x 1 ) = y 1 , S 1 (x 1 ) = y 1 , S 2 (x 2 ) = y 2 .
The first derivative is continuous : S 0′ (x 1 ) = S 1′ (x 1 )
The second derivative is continuous: S 0′′ (x 1 ) = S 1′′ (x 1 )
⇒ 6 equations with 8 variables ⇒ we need to implement 2 equations.
The piecewise function found as above is called cubic spline
interpolation.
Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 39 / 51
Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 40 / 51
G ENERAL CASE

Given function y = f (x) by data points in the table:


x x 0 x 1 ... x n
f (x) y 0 y 1 ... y n

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 41 / 51


G ENERAL CASE

Given function y = f (x) by data points in the table:


x x 0 x 1 ... x n
f (x) y 0 y 1 ... y n
Constructing cubic spline of the data set above is to find:

S 0 (x),


x ∈ [x 0 , x 1 ]
S 1 (x),

x ∈ [x 1 , x 2 ]
S(x) = .

..


S n−1 (x), x ∈ [x n−1 , x n ]

where S i (x) = a i + b i (x − x i ) + c i (x − x i )2 + d i (x − x i )3 , i = 0...n − 1, ⇒


4n unknowns, 4n − 2 equations.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 41 / 51


Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 42 / 51
N ATURAL CUBIC SPLINE

N ATURAL CUBIC SPLINE : S ′′ (x 0 ) = 0, S ′′ (x n ) = 0


Let h i = x i +1 − x i , i = 0..n − 1.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 43 / 51


N ATURAL CUBIC SPLINE

N ATURAL CUBIC SPLINE : S ′′ (x 0 ) = 0, S ′′ (x n ) = 0


Let h i = x i +1 − x i , i = 0..n − 1.
S ′′ (x 0 ) = 0, ⇒ c 0 = 0

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 43 / 51


N ATURAL CUBIC SPLINE

N ATURAL CUBIC SPLINE : S ′′ (x 0 ) = 0, S ′′ (x n ) = 0


Let h i = x i +1 − x i , i = 0..n − 1.
S ′′ (x 0 ) = 0, ⇒ c 0 = 0
Define c n = S ′′ (x n )/2, ⇒ c n = 0

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 43 / 51


Find vector C = (c 0 , c 1 , c 2 , . . . , c n−1 , c n )T = (0, c 1 , c 2 , . . . , 0)T from the
system AC = B , where

1 0 0 ... 0 0
 

 h 0 2(h 0 + h 1 ) h 1 . . . 0 0 

A=
 ... ... ... ... ... ... 

 0 0 0 . . . 2(h n−2 + h n−1 ) h n−1 
0 0 0 ... 0 1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 44 / 51


Find vector C = (c 0 , c 1 , c 2 , . . . , c n−1 , c n )T = (0, c 1 , c 2 , . . . , 0)T from the
system AC = B , where

1 0 0 ... 0 0
 

 h 0 2(h 0 + h 1 ) h 1 . . . 0 0 

A=
 ... ... ... ... ... ... 

 0 0 0 . . . 2(h n−2 + h n−1 ) h n−1 
0 0 0 ... 0 1
 
0
y2 − y1 y1 − y0
3 −3
 
h1 h0
 
 
B = ...
 

 y n − y n−1 y n−1 − y n−2 
 3 −3 
 h n−1 h n−2

0

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 44 / 51


After finding vector C , remaining coefficients a k , b k , d k are defined
by

ak = yk


y k+1 − y k h k



bk = − (c k+1 + 2c k )
hk 3

 c k+1 − c k
 dk
 = , ∀k = 0..n − 1
3h k

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 45 / 51


E XAMPLE 4.1
x 0 2 5
Construct natural cubic spline from the table
y 1 1 4

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 46 / 51


E XAMPLE 4.1
x 0 2 5
Construct natural cubic spline from the table
y 1 1 4
     
1 0 0 0 0
Solution: A = 2 10 3 , B = 3 , ⇒ c = 0.3
    
0 0 1 0 0
a 0 = 1, a 1 = 1

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 46 / 51


E XAMPLE 4.1
x 0 2 5
Construct natural cubic spline from the table
y 1 1 4
     
1 0 0 0 0
Solution: A = 2 10 3 , B = 3 , ⇒ c = 0.3
    
0 0 1 0 0
a 0 = 1, a 1 = 1
b 0 = −0.2, b 1 = 0.4

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 46 / 51


E XAMPLE 4.1
x 0 2 5
Construct natural cubic spline from the table
y 1 1 4
     
1 0 0 0 0
Solution: A = 2 10 3 , B = 3 , ⇒ c = 0.3
    
0 0 1 0 0
a 0 = 1, a 1 = 1
b 0 = −0.2, b 1 = 0.4
d 0 = 0.05, d 1 = −1/30

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 46 / 51


E XAMPLE 4.2
x 0 1 3 4
Given function y = f (x) by the table below . Using
y 1 2 4 8
natural cubic spline, find approximately f (1.5) and f ′ (3.5).

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 47 / 51


E XAMPLE 4.2
x 0 1 3 4
Given function y = f (x) by the table below . Using
y 1 2 4 8
natural cubic spline, find approximately f (1.5) and f ′ (3.5).
0
     
1 0 0 0 0
1 6 2 0  9
, B = 0, ⇒ c = − 16 
 
Solution A = 
0 2 6 1 9  27 
16
0 0 0 1 0 0

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 47 / 51


E XAMPLE 4.2
x 0 1 3 4
Given function y = f (x) by the table below . Using
y 1 2 4 8
natural cubic spline, find approximately f (1.5) and f ′ (3.5).
0
     
1 0 0 0 0
1 6 2 0  9
, B = 0, ⇒ c = − 16 
 
Solution A = 
0 2 6 1 9  27 
16
0 0 0 1 0 0
a 0 = 1, a 1 = 2, a 3 = 4

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 47 / 51


E XAMPLE 4.2
x 0 1 3 4
Given function y = f (x) by the table below . Using
y 1 2 4 8
natural cubic spline, find approximately f (1.5) and f ′ (3.5).
0
     
1 0 0 0 0
1 6 2 0  9
, B = 0, ⇒ c = − 16 
 
Solution A = 
0 2 6 1 9  27 
16
0 0 0 1 0 0
a 0 = 1, a 1 = 2, a 3 = 4
b 0 = 19/16, b 1 = 5/8, b 2 = 23/8

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 47 / 51


E XAMPLE 4.2
x 0 1 3 4
Given function y = f (x) by the table below . Using
y 1 2 4 8
natural cubic spline, find approximately f (1.5) and f ′ (3.5).
0
     
1 0 0 0 0
1 6 2 0  9
, B = 0, ⇒ c = − 16 
 
Solution A = 
0 2 6 1 9  27 
16
0 0 0 1 0 0
a 0 = 1, a 1 = 2, a 3 = 4
b 0 = 19/16, b 1 = 5/8, b 2 = 23/8
d 0 = −3/16, d 1 = 3/8, d 2 = −9/16

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 47 / 51


E XAMPLE 4.2
x 0 1 3 4
Given function y = f (x) by the table below . Using
y 1 2 4 8
natural cubic spline, find approximately f (1.5) and f ′ (3.5).
0
     
1 0 0 0 0
1 6 2 0  9
, B = 0, ⇒ c = − 16 
 
Solution A = 
0 2 6 1 9  27 
16
0 0 0 1 0 0
a 0 = 1, a 1 = 2, a 3 = 4
b 0 = 19/16, b 1 = 5/8, b 2 = 23/8
d 0 = −3/16, d 1 = 3/8, d 2 = −9/16
f (1.5) = 71/32, f ′ (3.5) = 265/64

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 47 / 51


C LAMPED CUBIC SPLINE
f ′ (a) = S ′ (x 0 ) = α, f ′ (b) = S ′ (x n ) = β

We define
 vector C = (c 1 , c 2 , ..., c n )T from AC = B , where 
2h 0 h0 0 0 ... 0 0

 h0 2(h 0 + h 1 ) h1 0 ... 0 0 

 0 h1 2(h 1 + h 2 ) h2 ... 0 
A=
 
... ... ... ... ... ... ...

 
 
 0 0 0 ... . . . 2(h n−2 + h n−1 ) h n−1 
0 0 0 0 ... h n−1 2h n−1 n×n
 y1 − y0 
3 − 3α
h
y 2 − y 10 y1 − y0
 
 
 3 −3 

 h1 h0 

B = ... 
y n − y n−1 y n−1 − y n−2 
 

 3 −3 
 h n−1 h n−2 
 y n − y n−1 
3β − 3
h n−1
Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 48 / 51
E XAMPLE 4.3
x 0 1 2
Construct clamped cubic spline interpolated by table
y 1 2 1
satisfying conditions f ′ (0) = 0, f ′ (2) = 0.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 49 / 51


E XAMPLE 4.3
x 0 1 2
Construct clamped cubic spline interpolated by table
y 1 2 1
satisfying conditions f ′ (0) = 0, f ′ (2) = 0.

Solution
 
2 1 0
Find c = (c 0 , c 1 , c 2 )T from Ac = B , where A = 1 4 1,
0 1 2
 
3
B = −6

3

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 49 / 51


E XAMPLE 4.3
x 0 1 2
Construct clamped cubic spline interpolated by table
y 1 2 1
satisfying conditions f ′ (0) = 0, f ′ (2) = 0.

Solution
 
2 1 0
Find c = (c 0 , c 1 , c 2 )T from Ac = B , where A = 1 4 1,
0 1 2
   
3 3
B = −6 ⇒ c = −3
  
3 3

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 49 / 51


E XAMPLE 4.3
x 0 1 2
Construct clamped cubic spline interpolated by table
y 1 2 1
satisfying conditions f ′ (0) = 0, f ′ (2) = 0.

Solution
 
2 1 0
Find c = (c 0 , c 1 , c 2 )T from Ac = B , where A = 1 4 1,
0 1 2
   
3 3
B = −6 ⇒ c = −3
  
3 3
b 0 = 0, b 1 = 0

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 49 / 51


E XAMPLE 4.3
x 0 1 2
Construct clamped cubic spline interpolated by table
y 1 2 1
satisfying conditions f ′ (0) = 0, f ′ (2) = 0.

Solution
 
2 1 0
Find c = (c 0 , c 1 , c 2 )T from Ac = B , where A = 1 4 1,
0 1 2
   
3 3
B = −6 ⇒ c = −3
  
3 3
b 0 = 0, b 1 = 0
d 0 = −2, d 0 = 2

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 49 / 51


E XAMPLE 4.4
A car traveling along a straight road is clocked at a number of points.
The data from the observations are given in the following table, where
the time is in hours, the distance is in km, and the speed is in km/h.
time 0 3 5
distance 0 100 180 . Use a clamped cubic spline to predict the
speed 75 77 80
position of the car when t = 4(h).

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 50 / 51


E XAMPLE 4.4
A car traveling along a straight road is clocked at a number of points.
The data from the observations are given in the following table, where
the time is in hours, the distance is in km, and the speed is in km/h.
time 0 3 5
distance 0 100 180 . Use a clamped cubic spline to predict the
speed 75 77 80
position of the car when t = 4(h).

SOLUTION
We construct the clamped cubic spline S(t ) to describe the
position of car at t time. From the table we have
S ′ (0) = 75, S ′ (5) = 80.

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 50 / 51


S OLUTION

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 51 / 51


S OLUTION

   
6 3 0 −125
A = 3 10 2, B =  20 ,
0 2 4 120

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 51 / 51


S OLUTION

     
6 3 0 −125 −67/3
A = 3 10 2, B =  20 ,⇒ c =  3 
0 2 4 120 57/2

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 51 / 51


S OLUTION

     
6 3 0 −125 −67/3
A = 3 10 2, B =  20 ,⇒ c =  3 
0 2 4 120 57/2
b 0 = 75, b 1 = 17

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 51 / 51


S OLUTION

     
6 3 0 −125 −67/3
A = 3 10 2, B =  20 ,⇒ c =  3 
0 2 4 120 57/2
b 0 = 75, b 1 = 17
d 0 = 76/27, d 1 = 17/4

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 51 / 51


S OLUTION

     
6 3 0 −125 −67/3
A = 3 10 2, B =  20 ,⇒ c =  3 
0 2 4 120 57/2
b 0 = 75, b 1 = 17
d 0 = 76/27, d 1 = 17/4
Position when t = 4(h) is 124.25

Hoang Hai Ha (HCMUT) INTERPOLATION February 22, 2024 51 / 51

You might also like