Download as pdf or txt
Download as pdf or txt
You are on page 1of 30

1

Faculty of Transportation Mechanical Engineering


TS. Lê Minh Đức

Bài giảng môn học:


PHƯƠNG PHÁP TÍNH
(Numerical Analysis)
(3TC)

TS. LÊ MINH ĐỨC


minhducle@dut.udn.vn
Bộ môn Cơ khí Động lực
Khoa Cơ khí Giao thông
Đại học Bách Khoa-ĐHĐN 1
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Chöông 4
NOÄI SUY VAØ XAÁP XÆ HAØM

2
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Nội dung chính:


1. Đa thức nội suy Lagarane
2. Đa thức nội suy Newton
3. Spline baäc 3
4. Các baøi toaùn xaáp xæ thöïc nghieäm

3
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

I. YÊU CẦU BAØI TOAÙN :


Ñeå tính giaù trò cuûa moät haøm lieân tuïc baát kyø,
ta coù theå xaáp xæ haøm baèng moät ña thöùc, tính
giaù trò cuûa ña thöùc töø ñoù tính ñöôïc giaù trò gaàn
ñuùng cuûa haøm.

Tính giá trị của Xấp xỉ hàm số Tìm giá trị


hàm số f(x) ??? f(x) bằng một gần đúng
đa thức g(x) của g(x)

4
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Xeùt haøm y = f(x) cho döôùi daïng baûng soá


x xo x1 x2 ... xn
y yo y1 y2 ... yn
▪ Caùc giaù trò xk, k = 0, 1, .., n ñöôïc saép theo
thöù töï taêng daàn goïi laø caùc ñieåm nuùt noäi suy
▪ Caùc giaù trò yk = f(xk) laø caùc giaù trò cho tröôùc
cuûa haøm taïi xk
Baøi toaùn : xaây döïng 1 ña thöùc pn(x) baäc ≤n
thoaû ñieàu kieän pn(xk) = yk, k=0,1,.. n. Ña thöùc
naøy goïi laø ña thöùc noäi suy cuûa haøm f(x).
5
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

II. ÑA THÖÙC NOÄY SUY LAGRANGE:

Cho haøm y = f(x) vaø baûng soá


x xo x1 x2 ... xn
y yo y1 y2 ... yn

Ta xaây döïng ña thöùc noäi suy haøm f(x)


treân [a,b]=[x0, xn].

6
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ñaët n

 ( x − xi )
pn( k ) ( x ) = i = 0,i  k
n


i = 0,i  k
( x k − xi )

( x − x0 )( x − x1 )...( x − xk −1 )( x − xk +1 )...( x − xn )
=
( xk − x0 )( xk − x1 )...( xk − xk −1 )( xk − xk +1 )...( xk − xn )

Ta coù
1 i=k
p ( xi ) = 
(k )
n
0 ik 7
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ña thöùc
n
Ln ( x ) =  pn( k ) ( x ) yk
k =0

coù baäc ≤ n vaø thoûa ñieàu kieän Ln(xk) = yk


goïi laø ña thöùc noäi suy Lagrange cuûa haøm f(x)
Ví duï : Cho haøm f(x) vaø baûng soá
x 0 1 3
y 1 -1 2

Xaây döïng ña thöùc noäi suy Lagrange vaø tính


gaàn ñuùng f(2). 8
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Giaûi
( x − 1)( x − 3) 1 2
n=2 p (x) = = ( x − 4 x + 3)
(0)
n
(0 − 1)(0 − 3) 3
( x − 0)( x − 3) 1 2
p ( x) =
(1)
= − ( x − 3x )
n
(1 − 0)(1 − 3) 2
( x − 0)( x − 1) 1 2
p (x) =
(2)
= ( x − x)
n
(3 − 0)(3 − 1) 6
Ña thöùc noäi suy Lagrange
1 2 1 2 1 2 7 2 19
𝐿𝑛 (𝑥) = (𝑥 − 4𝑥 + 3) + (𝑥 − 3𝑥) + (𝑥 − 𝑥) = 𝑥 − 𝑥+1
3 2 3 6 6

f(2)  Ln(2) = -2/3 9


Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

❖ Caùch bieåu dieãn khaùc :


Ñaët (x) = (x- x0)(x- x1) .... (x- xn)
n n
 '( x ) =  ( x − xi )
k =0 i=0
ik
’(xk) = (xk-x0)(xk-x1)...(xk-xk-1)(xk-xk+1)...(xk- xn)
( x)
 pn ( x ) =
(k )

 '( xk )( x − xk )
n
yk
 Ln ( x ) =  ( x )
k = 0  '( x k )( x − x k )
n
yk
 Ln ( x ) =  ( x ) vôùi Dk = ’(xk) (x-xk)
k = 0 Dk 10
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ñeå tính giaù trò cuûa Ln(x), ta laäp baûng

x x0 x1 .... xn
x0 x- x0 x0- x1 .... x0- xn D0
x1 x1- x0 x- x1 .... x1- xn D1 tích
… .... .... .... .... … doøng

xn xn- x0 xn- x1 .... x- xn Dn


(x) tích ñöôøng cheùo

11
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ví duï : Cho haøm f vaø baûng soá


x -9 -7 -4
y -1 -4 -9
Tính gaàn ñuùng f(-6)
Ta laäp baûng taïi x = -6
x = -6 -9 -7 -4
-9 3 -2 -5 30
-7 2 1 -3 -6
-4 5 3 -2 -30
-6

Vaäy f(-6)  L2(-6) = -6(-1/30+4/6+9/30) = -5.6


12
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ví duï : Cho haøm f vaø baûng soá


x 0 1 3 4
y 1 1 2 -1
Tính gaàn ñuùng f(2)
Ta laäp baûng taïi x = 2
x=2 0 1 3 4
0 2 -1 -3 -4 -24
1 1 1 -2 -3 6
3 3 2 -1 -1 6
4 4 3 1 -2 -24
4

Vaäy f(2)  L3(2) = 4(-1/24 + 1/6 + 1/3 +1/24) = 2


13
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

• TH ñaëc bieät : caùc ñieåm nuùt caùch ñeàu vôùi


böôùc h = xk+1 – xk
( x − x0 )
Ñaët q=
h
Ta coù xk = xo + kh
 x-xk = x- xo-kh = (q-k)h
xi-xj = (xo+ih)-(xo+jh) = (i-j)h
 (x)=(x-x0)(x-x1) .... (x-xn)=q(q-1)…(q-n)hn+1
’(xk) = (xk-x0) ... (xk-xk-1)(xk-xk+1) … (xk-xn)
= k.(k-1) … 1.(-1)(-2) … (k-n)hn
= (-1)n-k k! (n-k)! hn 14
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

n
yk
Ln ( x ) =  ( x )
k = 0  '( x k )( x − x k )

n
(−1)n − k yk
 Ln ( x ) = q(q − 1)...(q − n)
k = 0 k !(n − k )!(q − k )

Ví duï : Cho haøm f(x) vaø baûng soá


x 1.1 1.2 1.3 1.4
y 15 18 19 24

Tính gaàn ñuùng f(1.25)


15
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Giaûi
Ta coù n=3 x = 1.25
h = 0.1 q = (1.25-1.1)/0.1 = 1.5
15 18 19 24
Ln (1.25) = (1.5)(0.5)(−0.5)(−1.5)[− + − + ]
3!(1.5) 2!(0.5) 2!(−0.5) 3!(−1.5)
= 18.375

Vaäy f(1.25)  18.375

16
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

❖ Coâng thöùc ñaùnh giaù sai soá :


Giaû söû haøm f(x) coù ñaïo haøm ñeán
caáp n+1 lieân tuïc treân [a,b].
Ñaët Mn +1 = max | f ( n+1) ( x ) |
x[ a , b ]

Ta coù coâng thöùc sai soá


Mn +1
| f ( x ) − Ln ( x ) | | ( x) |
(n + 1)!
17
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ví duï: Cho haøm f(x)=2x treân ñoaïn [0,1]. Ñaùnh giaù


sai soá khi tính gaàn ñuùng giaù trò haøm taïi ñieåm
x=0.45 söû duïng ña thöùc noäi suy Lagrange khi choïn
caùc ñieåm nuùt xo=0, x1=0.25, x2=0.5, x3=0.75, x4=1
Giaûi
Ta coù n = 4, f(5)(x) = (ln2)52x
 M5 = max |f(5)(x)| = 2(ln2)5
coâng thöùc sai soá
Mn +1
| f ( x ) − Ln ( x ) | | ( x ) |
(n + 1)!
2(ln 2)5
= | (0.45)(0.20)(−0.05)(−0.30)(−0.55) |= 0.198x10−185
5!
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

III. ÑA THÖÙC NOÄY SUY NEWTON:


1. Tæ sai phaân :
Cho haøm y = f(x) xaùc ñònh treân [a,b]=[xo, xn]
vaø baûng soá
x xo x1 x2 ... xn
y yo y1 y2 ... yn
f ( xk +1 ) − f ( xk )
Ñaïi löôïng f [ xk , xk +1 ] =
xk +1 − xk

goïi laø tæ sai phaân caáp 1 cuûa haøm f treân [xk,xk+1]


19
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Tæ sai phaân caáp 2


f [ xk +1 , xk + 2 ] − f [ xk , xk +1 ]
f [ xk , xk +1 , xk + 2 ] =
xk + 2 − xk

Baèng qui naïp ta ñònh nghóa tæ sai phaân caáp p


f [ xk +1 , xk +2 , ... , xk + p ] − f [ xk , xk +1 , ... , xk + p−1 ]
f [ xk , xk +1 , ... , xk + p ] =
xk + p − xk

20
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ví duï : Cho haøm f(x) vaø baûng soá


x 1.0 1.3 1.6 2.0
y 0.76 0.62 0.46 0.28
Tính caùc tæ sai phaân
Giaûi : ta laäp baûng caùc tæ sai phaân
k xk f(xk) f[xk,xk+1] f[xk,xk+1,xk+2] f[xk,xk+1,xk+2,xk+3]
0 1.0 0.76 -0.4667 -0.111 0.23
1 1.3 0.62 -0.5333 0.119
2 1.6 0.46 -0.45
3 2.0 0.28

21
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

2. Ña thöùc noäi suy Newton :


Tæ sai phaân caáp 1
f ( x0 ) − f ( x )
f [ x , x0 ] =
x0 − x
 f ( x ) = y0 + f [ x , x0 ]( x − x0 )

Tæ sai phaân caáp 2


f [ x0 , x1 ] − f [ x , x0 ]
f [ x , x0 , x1 ] =
x1 − x
 f [ x , x0 ] = f [ x0 , x1 ] + f [ x , x0 , x1 ]( x − x1 )
neân f ( x ) = y0 + f [x0 , x1 ]( x − x0 ) + f [x, x0 , x1 ]( x − x0 )( x − x1 )
22
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Tieáp tuïc baèng qui naïp ta ñöôïc


f ( x ) = y0 + f [ x0 , x1 ]( x − x0 ) + f [ x0 , x1 , x2 ]( x − x0 )( x − x1 ) + ...
+ f [ x0 , x1 ,..., xn ]( x − x0 )( x − x1 ) ... ( x − xn−1 )
+ f [ x, x0 ,..., xn ]( x − x0 )( x − x1 ) ... ( x − xn )
Ñaët
(1)
n
( x ) = y0 + f [ x0 , x1 ]( x − x0 ) + f [ x0 , x1 , x2 ]( x − x0 )( x − x1 ) + ...
+ f [ x0 , x1 ,..., xn ]( x − x0 )( x − x1 ) ... ( x − xn −1 )
n ( x ) = f [ x, x0 ,..., xn ]( x − x0 )( x − x1 ) ... ( x − xn )

Ta ñöôïc f ( x ) = (1)
n
( x ) + n ( x )

Coâng thöùc naøy goïi laø coâng thöùc Newton tieán


xuaát phaùt töø ñieåm nuùt xo 23
Faculty of Transportation Mechanical Engineering

Töông töï ta coù coâng thöùc Newton luøi


TS. Lê Minh Đức

f ( x ) = (2)
n
( x ) + n ( x )
(2)
n
( x ) = yn + f [ xn −1 , xn ]( x − xn ) + f [ xn −2 , xn −1 , xn ]( x − xn )( x − xn −1 ) + ...
+ f [ x0 , x1 ,..., xn ]( x − xn )( x − xn −1 ) ... ( x − x1 )
(1)
n
( x ) : ña thöùc noäi suy Newton tieán
(2)
n
( x ) : ña thöùc noäi suy Newton luøi
n ( x ) : xaùc ñònh sai soá
Neáu haøm f coù ñaïo haøm lieân tuïc ñeán caáp n+1,
ta coù coâng thöùc ñaùnh giaù sai soá :
Mn +1
| n ( x ) | |  ( x ) | vôùi Mn +1 = max | f ( n +1) ( x ) |
(n + 1)! 24
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ví duï : Cho haøm f xaùc ñònh treân [0,1] vaø baûng soá
x 0 0.3 0.7 1
y 2 2.2599 2.5238 2.7183
Tính gaàn ñuùng f(0.12) baèng Newton tieán vaø
f(0.9) baèng Newton luøi
Giaûi : ta laäp baûng caùc tæ sai phaân
xk f(xk) f[xk,xk+1] f[xk,xk+1,xk+2] f[xk,xk+1,xk+2,xk+3]
0 2
0.8663 Newton tieán
0.3 2.2599 -0.2950
0.6598 0.2786
0.7 2.5238 -0.0164
0.6483 Newton luøi
25
1 2.7183
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ta coù:
f (0.12)  (1)
n
(0.12)
= 2 + 0.8663(0.12) − 0.2950(0.12)(−0.18) + 0.2786(0.12)(−0.18)(−0.58)
= 2.1138

f (0.9)  (2)
n
(0.9)
= 2.7183 + 0.6483(−0.1) − 0.0164(−0.1)(0.2) + 0.2786(−0.1)(0.2)(0.6)
= 2.6505

26
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

3. TH caùc ñieåm nuùt caùch ñeàu :


Sai phaân höõu haïn caáp 1 cuûa haøm taïi ñieåm xk
yk = yk+1 - yk
Baèng qui naïp, Sai phaân höõu haïn caáp p cuûa haøm
taïi ñieåm xk
pyk = (p-1yk) = p-1yk+1 - p-1yk
Ta coù coâng thöùc
p
 yk
f [ xk , xk +1 ,..., xk + p ] =
p! h p
27
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Coâng thöùc Newton tieán


( x − x0 )
Ñaët q =
h
(1)
n
( x ) = y0 + f [ x0 , x1 ]( x − x0 ) + f [ x0 , x1 , x2 ]( x − x0 )( x − x1 ) + ...
+ f [ x0 , x1 ,..., xn ]( x − x0 )( x − x1 ) ... ( x − xn −1 )
y0  2 y0  n y0
= y0 + q+ q(q − 1) + ... + q(q − 1)...(q − n + 1)
1! 2! n!

Coâng thöùc Newton luøi


( x − xn )
Ñaët p =
h
2
 y  y  n
y0
n ( x ) = yn +
(2) n −1
p+ n −2
p( p + 1) + ... + p( p + 1)...( p + n − 1)
1! 2! n! 28
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

Ví duï : Cho haøm f xaùc ñònh vaø baûng soá


x 30 35 40 45
y 0.5 0.5736 0.6428 0.7071
Tính gaàn ñuùng f(32) vaø f(44)
Giaûi : ta laäp baûng caùc sai phaân höõu haïn
xk f(xk) yk 2yk 3yk
30 0.5
0.0736 Newton tieán
35 0.5736 -0.0044
0.0692 -0.0005
40 0.6428 -0.0049
0.0643 Newton luøi

45 0.7071
29
Faculty of Transportation Mechanical Engineering
TS. Lê Minh Đức

▪ Tính gaàn ñuùng f(32) : duøng coâng thöùc Newton tieán


n = 3, xo = 30, q=(32-30)/5 = 0.4
f (32)  (1)
n
(32)
0.0736 0.0044 0.0005
= 0.5 + (0.4) − (0.4)(−0.6) − (0.4)(−0.6)(−1.6)
1! 2! 3!
= 0.529936

▪ Tính gaàn ñuùng f(44) : duøng coâng thöùc Newton luøi


n = 3, xn = 45, p=(44-45)/5 = -0.2
f (44)  (2)
n
(44)
0.0643 0.0049 0.0005
= 0.7071 + (−0.2) − (−0.2)(0.8) − (−0.2)(0.8)(1.8)
1! 2! 3!
= 0.694656
30

You might also like