B MÔN TOÁN NG D NG - ĐHBK Ứ -------------------------------------------------------------------------------------

PHƯƠNG PHÁP TÍNH – SV

CHƯƠNG 5

GI I PHẢ

ƯƠNG TRÌNH VI PHÂN THƯ NG Ờ

TS. NGUY N QU C LÂN (5/2006) Ố

N I DUNG ---------------------------------------------------------------------------------------------------------------------------

A- BÀI TOÁN CÔSI (GIÁ TR Đ U) Ị Ầ

1 – PHƯƠNG PHÁP EULER

2 – EULER C I TI N + RUNGE – KUTTA

Ả Ế

3 – H PHỆ ƯƠNG TRÌNH VI PHÂN THƯ NGỜ

4 – PHƯƠNG TRÌNH VI PHÂN C P CAO

B- BÀI TOÁN BIÊN

1- PHƯƠNG PHÁP SAI PHÂN H U H N

Ữ Ạ

BÀI TOÁN CÔSI ---------------------------------------------------------------------------------------------------------------------------

Tìm hàm y = y(t) tho phả ương trình vi phân thư ng & ờ

= £ £ đi u ki n ệ đ uầ ề (cid:236) y ' ), ta b

(cid:237) f yt ,( = a (cid:238) ay )(

Gi i x p x : Chia [a, b] thành n đ dài h ả ấ ỉ đo n b ng nhau, ằ ạ ộ

= (b – a)/n, (n + 1) đi m chia ể t0 = a < t1 = a + h < … < tn = b

y1 = ? y0 = a

h b a

a = t0 t1 t2 b = tn

n C n ầ tính g n ầ đúng giá tr ị wk » yk = y(tk), k = 1 fi

MINH HO Ý TẠ Ư NGỞ

----------------------------------------------------------------------------------------------------------------------------------------

2

(cid:236) + + -= £ t 5 t 0,2 t ' y y

(cid:237) Bài toán Côsi: V i bớ ư c chia h = ớ

(cid:238) 5 = 31)0( y

+ - ) ( xf 0 ( xf 0 » f (' & công th c x p x ứ ấ ỉ đ o hàm 2 ạ đi m:ể 0.5 ) x 0 ) h h

hãy tính x p x nghi m y t i t = 0.5, t = 1. ệ ấ ỉ ạ

T ừ đó xây d ng ự đa th c n i suy Lagrange (spline) y ứ ộ

gđ và v ẽ

2

5 te

+ t đ th so sánh v i nghi m chính xác g(t) = ồ ị ớ ệ 1 - 3

Đi m chia: ể

2

0

1

=t .1 =t 0 5.0

2

-= + + y 5.0 y = 2 at bt c tìm K t ế qu ả

( (

gñ.Lagrang e t 42.6

=t ) 5.0 ) = = + - (cid:222) 0.1 y 875.1 87.4 t 33.0 ygñ đư c:ợ

Ồ Ả Ấ Ỉ

Ư NGỜ CÁC SƠ Đ GI I X P X PTRÌNH VPHÂN TH -------------------------------------------------------------------------------------------------------------------------------

fi n – 1) Sơ đ Euler (i = 0

[

ồ a = (cid:222) . ñaõ bieát = ˛ (cid:236) ba , y '

+ 1

(cid:237) = Giaû + Btoán Côsi: Tìm y(t) ] f tyt ,( ), a = ) (cid:238) ay )( w 0 w i w söû i wthf ,( i i w i

i

n đo n ạ fi S/đ Euler c i ti n (i = 0 n – 1) ả ế - = += a ih h t , = a (cid:222) . Giaû ñaõ w 0

i

= w söû i = bieát + + thf ( , ) ), kwh i 1 n Chia [a, b] fi ab n Tính wi, i = 0 fi

2 k

+ 1

i k 1

2

kwthf ,( i = + + ( 2) k 1 w i w i

i

= + = (cid:236) h ), )2

i h

4

i

i

3

(cid:239) = kwthf + + (cid:237) k 1 k ( k ) + kw ,2 i 1 = kwthf , + 1 .

i +

2 2

3 w i

+ 1

2

3

4

(cid:239) ,( i thf ( = ),2 + thf ( 2 + kw ,2 i + + k 2 ( k k 6) (cid:238) w i k 1 Gi Sơ đ Runge – ồ Kutta: w0 = a ả ử ế i (cid:222) s bi t w

VÍ D PHỤ ƯƠNG PHÁP EULER --------------------------------------------------------------------------------------------------------------------------------

2

B ng p/pháp Euler, gi đo n chia: ằ ả ớ ạ

(cid:236) i bài toán Côsi v i n = 3 -= + £ £ 0,1 1 t y ' (cid:237)

(cid:238) y ty = 5.0)0(

1

So sánh nghi m x p x v i nghi m g(t) = (t+1) ỉ ớ ệ ệ ấ

I ty )( dt T ừ đó tính x p x tích phân b ng c/t hình thang: ấ ỉ ằ

2 – 0.5et. (cid:242)=

0

Gi i: f(t,y) = y – t

2 + 1

3, wt 3

0

0

1, wt 1

2, wt 2

ả = t = w ,0 5.0

h = (b–a)/n = 1/3

= (cid:236) 5.0 w 0

(cid:237) Sơ đ Euler: ồ

+ 1

2 i

= + = + + - ) (2.0 )1 (cid:238) w i w i wthf ,( i i w i tw i

K T QU PH Ả ƯƠNG PHÁP EULER Ế

-----------------------------------------------------------------------------------------------------------------------------

i

wi

gi = g(ti )

| gi - wi |

ti

0.5

0.5

0

0

0

1

1/3

2

2/3

3

1.

B ng k t qu : ả ế ả

1

[

]

]

[

)

Tính g n ầ đúng tích phân v i công th c hình thang ứ ớ

)

)

)

( ty

( ty

( ty

0

( ty 1

2

3

2

0

+ + + + + » » ty )( dt 2 2 2 2 (cid:242) w 0 w 1 + ww 3 h 2

h 2 .1= 3528807

Ụ Ả

2

VÍ D EULER C I TI N Ế --------------------------------------------------------------------------------------------------------------------------------

(cid:236) + -= £ £ Tính y(1.) c a bt Côsi sau b ng ủ ằ 0,1 t 1 ' y (cid:237)

2

(cid:238) ty = 5.0)0( y SĐ Euler c i ti n v i h = 0.5: ả ế ớ

-= + = f yt ,( ) ty ,1 h 5.0

0

2 , wt 2

= = = = a ,0 5.0 t ,5.0 ? t 1 w 1

2

i

2

i

+ 1

+ k k 1 = = + + = + fi kwthf ,) thf ( , ) k 1 ,( i kwh i 1 w i w i 2

i k1 k2

0 ti 0.0 wi 0.5 0.75 1.0

1 0.5 1.375 1.0625 1.21875

2 1.0 2.515625

2

(cid:236) VÍ D RUNGE – KUTTA -------------------------------------------------------------------------------------------------------------------------------- + 1 y ' t

(cid:237) Tính y(1.) b ng Runge – Kutta v i h = 0.5 ớ ằ

(cid:238) -= y = 5.0)0( y

i

2

i

(cid:236) = = + + kwthf ,) thf ( ) , k 1 ,( i w i (cid:239) Runge –

3

i

i

4

3

2 k

2

3

4

+ 1

(cid:239) = + = + + (cid:237) k thf ( h k 1 2 thf ( , ) kwh i Kutta 4: wi (cid:239) ,2 + + kw i + h 2 k ,)2 + 2 2 k k k 1 fi (cid:239) = + wi+1 w i w i (cid:238) 6

i k2 ti wi k1 k3 k4

0 0.0 0.5 75.0 .0 90625 .0 9451325 .1 0976563

1 0.5 .1 0875651 .1 2032064 .1 2331167 .1 3286235 .1 4251302

2 1.0 .2 6396027

H PHỆ ƯƠNG TRÌNH VI PHÂN THƯ NGỜ ----------------------------------------------------------------------------------------------------------------------------------

Bài toán Côsi : Tìm hai hàm u1 = u1(t), u2 = u2(t) thoả

2

1

(cid:236) = £ £ ), ta b f 1 uut ,( , 1 (cid:239) = a (cid:236)

2

2

2

(cid:237) (cid:237) & Ñieàu kieän ñaàu = a (cid:238) au )( 1 au )( 2 (cid:239) = £ £ f ), ta b uut ,( , 1 (cid:238) du 1 dt du 2 dt

Chia [a, b] thành đo n b ng nhau: Phân ho ch & r i r c hoá ờ ạ ạ

0 w 1

2

1

1 1 1 , ww 2

= a

2

)

( ) =tu

2 1

2 2

( tu 1 1

1

2

+=

ha

+= a

2

h

t

0ta =

t 1

2

a ạ ằ = a 0 w , 2 1, a =ww , ? , ?

i wtuw ( 2 1

i 1

i

i

0 wwBieát 2

0 1

i wwtính 2

i , 1

(cid:222) ‡ » » ), ), i 0 , ? Ký hi u:ệ tu ( 2

MINH HO Ý TẠ Ư NGỞ

----------------------------------------------------------------------------------------------------------------------------------------

2

2

t

Xét bài toán Côsi v i h ph

)

(cid:236) + ớ ệ ương trình vi phân thư ng:ờ ( + - u 2

) 1

2

2

2

t

e t 2 0 u 1 (cid:237)

( (

2

2

2

, ) + = ( 1 ) + + = - (cid:238) u 1 u u 0 t t 2 4 e , u 1 = u 3' 1 = u 4' 1

i t = 0.5; 1 V i bớ ư c chia h = 0.5, tính x p x nghi m u ấ ỉ ớ ệ ạ

1, u2 t

ị ợ ớ ệ

5

t

2

5

t

t

t

t

t

)

22 et

( tu 2

- - = ị ) + + = + - e e e e e ; So sánh giá tr tính ( tu 1 1 3 đư c v i giá tr nghi m chính xác: 1 3 1 3 2 3

0

1

2

=t 0 =t 5.0 =t .1 t Đi m chia: ể

u1 1 u2 1 0

( (

( (

) )

= = 0.5 0 ? 5.0 ?

) = 1 ) 1 =

) ( 1 ) ( 1

2

2

2

= = 1.0 u 1 u 0 u 1 u ? 5.0 u 1 u ?

SƠ Đ EULER ----------------------------------------------------------------------------------------------------------------------------------

Bài toán Côsi : Tìm hai hàm u1 = u1(t), u2 = u2(t) thoả

2

1

(cid:236) = £ £ ), ta b f 1 uut ,( , 1 (cid:239) = a (cid:236)

2

2

2

(cid:237) (cid:237) & Ñieàu kieän ñaàu = a (cid:238) au )( 1 au )( 2 (cid:239) = £ £ f ), ta b uut ,( , 1 (cid:238) du 1 dt du 2 dt

( iww

i 2

0 w 1

1

2

+ 1

= a = - , , n S/đ Euler: ồ

)1 )i

0 w 2 +

i bieát 1 =

i w 1

i w 1

i , wwthf 2 i

i 1

1

+ 1 i w 2

i w 2

2

i 1

a ( Giaû söû ) fi= 0 ( = + , , , , wwthf 2 i

2

t

1

(cid:236) a = = (cid:236) 1 1 (cid:236)

(

(

)

(

= - 0 1 , (cid:222) (cid:222) u 1 u 1 (cid:237) (cid:237) e  (cid:239) a = (cid:238) 1 (cid:239) (cid:238) + = 3' u 2 u   1 2 f 1

) + 2 2 t 1  ) , 2

2

2

t

(

)

2 +=

2

2

2

(cid:237) VD: = - u , u 0 1 5.01 (cid:239)

(

(cid:239) (cid:238)  , uut 1 + + = u u 4'   1 f

) + t e 4 2   ) ,

2

( t  , uut 1

2

0 w 1 = 0 1 w 2 ( ) = 1,1,0 ( ) =

2

1 w 1 1 w 2

+= 5.01 1,1,0 f 1 f

ÁP D NG : PH Ụ ƯƠNG TRÌNH VI PHÂN C P 2Ấ

----------------------------------------------------------------------------------------------------------------------------------

Bài toán Côsi c p 2 (Ph/trình vi phân c p 2 và ấ ấ đki n ệ đ u):ầ

‡ (cid:236) , a

)

) ( yytf , ,' ( = a ay '

1

2

(cid:237) = ) t = a (cid:238) y " ( ay ,

Đưa v bài toán Côsi c p 1: ề ấ

= (cid:236) ' u

) =

)

(

)

2 '

2 y ''

2

2

2

(cid:237) = = (cid:238) ổ ế 1(t)= y(t), u2(t)=y’(t) Đ i bi n u ( = f 1 ( yytf , uut , , 1 , f ' u 1 u uut , , 1

)

1

1

= a (cid:236) = a (cid:236)

) )

( au 1 ( au 2

2

0 w 1 0 w 2

2

(cid:222) (cid:237) (cid:237) Đi u ki n ệ đ u:ầ ề = = ) = a = a (cid:238) (cid:238)

0 1

1

1

2

(cid:236) = + = a + a ,

(cid:237) Sơ đ Euler: ồ

) )

( ay ( ay ' ( (

(

)

1 w 1 1 w 2

0 w 1 0 w 2

0 wwthf , 0 2 0 wwthf , 0 2

0 1

2

2

2

1

2

= + = a h + a a , a , hf , (cid:238)

VÍ DỤ ----------------------------------------------------------------------------------------------------------------------------------

V i h = 0.1, tính x p x giá tr y(0.2), y’(0.2) c a nghi m ủ ớ ệ ấ ỉ ị

2

t

bài toán sau b ng ph ằ ương pháp Euler:

(cid:236) = ‡ - y e sin , t 0

(cid:237)

+ y 2'2" y -= t -= (cid:238) )0( y ,4.0 y )0(' 6.0

(

)

(

(

)

2

Đ i bi n = = ổ ế đưa v bài toán Côsi c p 1: u ) ấ -= -= (cid:236) & ' 0 0

2

t

2

t

(cid:237)

u -= -= ,4.0 + +

1 = y(t), u2 = y’(t) (cid:222) u 6.0 (

)

2 2

2 sin

2

2

2

2

= u 1 u ' y f 1 + '2 uut , , 1 + ey sin t u 2 f t (cid:238)

)

0 1

1

(cid:236) (cid:236) = + -= uut , , 1 ( - - -= , 4.0 (cid:222) (cid:237) (cid:237)

)

0 w 1 0 w 2

1 w 1 1 w 2

0 w 1 0 w 2

0 wwthf , 0 2 0 wwthf , 0 2

0 1

2

2

u 1 u 2 1 ( ( e ) ) -= = + -= 6.0,4.0,0 ( - - (cid:238) 6.0 , + 1.04.0 + 1.06.0 f 1 f 6.0,4.0,0 (cid:238)

BÀI TOÁN BIÊN --------------------------------------------------------------------------------------------------------------------------

Bài toán biên c p 2: Tìm hàm y = y(x) tho ph ả ương trình ấ

= £ £ (cid:236) y '' , bx

(cid:237) ,( a ),' ) = a b (cid:238) )( ay yyxf ( = by ,

£ £ (cid:236) ( xr ), a bx

)

(cid:237) = ) (cid:238) Hay g p: Bài toán biên tuy n tính c p 2 + " y ( ay ấ ế + ')( )( yxqyxp ( = = a b by ,

MINH HOẠ ----------------------------------------------------------------------------------------------------------------------------------

ị ế ấ

x

- (cid:236) + £ £

) 2 ex

( -+ 1

0, 1 y y x x

(cid:237)

( -=

ệ -= ) '' ( (cid:238) Tính giá tr nghi m y c a bài toán biên tuy n tính c p 2 ủ ) + y 2'1 ) ( = 1 ,1 0 0 y y

đi m chia cách đ u c a [0, 1] v i b t i các ạ ể ề ủ ớ ư c chia h = ớ

1/3 và x p x ấ ỉ đ o hàm y’, y’’ b ng công th c h ứ ư ng tâm ớ ạ ằ

Đi m chia: ể

0

2

=x 0 =x 32 =x 13 =x 311

(

)

(

) 1

2

0

3

(cid:246) (cid:230) (cid:246) (cid:230) = = -= = =(cid:247) =(cid:247) (cid:231) (cid:231) y ? y ? y y 0 = y 1 y = y 0 y 1 ł Ł ł Ł 1 3 2 3

PHƯƠNG PHÁP SAI PHÂN H U H N Ạ ---------------------------------------------------------------------------------------------------------------------------------------

(

) *

+ £ £ (cid:236) ( axr ), bx

)

(cid:237) BT biên tuy n tính ế = ) (cid:238) " y ( ay + ')( )( yxqyxp ( = = a b by ,

Chia [a, b] thành các đo n nh b ng nhau. Thay x = x ỏ ằ ạ

k vào (*).

X p x y’(x ấ ỉ ạ ư ng tâm ớ

k) , y’’(xk): công th c ứ đ o hàm h

)

)

( xy

2

( xy 0

( xy 3

( xy 1

)

)

( ' xy

( ' xy 1

2

) 2

h

) 2

h

- - » »

h

x1

x2

x3

)

)

+

)

)

)

+

2

2

2

( xy 0

( xy 3

( xy 1

2

)

xy ("

)

xy (" 1

2

( xy 1 2 h

- - a= x0 ( xy » »

b= xn+1 ) ( xy 2 h

CÔNG TH C L P GHÉP Ứ Ắ -------------------------------------------------------------------------------------------------------------------------------------

(a, b) – ng n giá tr y Ma tr n c p n ứ ị t ế fi ậ ấ

k chưa bi

k £ n (cid:222) y= [y1, … yn]T: Ay = b

+

+

a

+

+

1



2

1

0

0

2 rh 1

p 1

2 qh 1

p 1

h 2

h 2

n m c xố k ˛ Ký hi u pệ k = p(xk) … yk = y(xk), 1 £ ø Ø (cid:246) (cid:230) ø Ø - - (cid:247) (cid:231) œ Œ œ Œ ł Ł

œ Œ œ Œ

+

+

2 rh 2



1

p

2

2 qh

p

1

2

2

2

œ Œ - œ Œ - - -

h 2

œ Œ œ Œ

2 rh 3

=

=

b

h 2 

A

0

0

- œ Œ œ Œ



œ Œ œ Œ

+



1

p

n

1

2 rh n

1

h 2

œ Œ œ Œ - œ Œ - - œ Œ - œ Œ œ Œ

+

b

+

1

p



0

0

1

p

2

2 qh

2 rh n

n

n

n

h 2

h 2

œ Œ (cid:246) (cid:230) œ Œ - - - - (cid:247) (cid:231) œ Œ œ Œ ł Ł ß º ß º

Ậ Ả Ắ

L P B NG L P GHÉP -------------------------------------------------------------------------------------------------------------------------------------

(

) *

+ £ £ (cid:236) ( axr ), bx

)

(cid:237) BT biên tuy n tính ế = ) (cid:238) " y ( ay + ')( )( yxqyxp ( = = a b by ,

 Chia [a, b] thành các đo n nh ỏ đ dài h. n ộ ạ ể

k đi m chia x

t ế fi ớ k chưa bi

ậ ả (không k 2 ể đ u) – ng v i y ầ ứ ộ k fi  L p b ng c t x akk (đ/chéo

i

yk

akk

ak,k+1

ak-1,k

xk

pk

qk

rk

bk

1

2

3

n ẩ ố k n n s y pk = p(xk), qk = q(xk), rk = r(xk) fi k fi chính), ak,k+1 (chéo trên), ak-1,k (dư i), bớ Nghi m yệ k (n – 1), ak-1,k: k = 2 fi  Đ/chéo akk: k = 1 fi n; ak,k+1: k = 1 fi

VÍ DỤ -------------------------------------------------------------------------------------------------------------------------------------

Gi ả i bài toán biên c p 2 sau b ng ph ấ ằ ương pháp sai phân

-= + + h u h n v i b ữ ạ ớ ư c chia h = 0.2 ớ (cid:236) y " x y 3

(cid:237) + y 2'3 = (cid:238) y )0( ,2 y 2 = 1)1(

(cid:222) h = 0.2 (cid:222) n = 5 (cid:222) 6 đi m chia ể H phệ ương trình 4 nẩ

Ma tr n c p 4: Chéo chính a ; Chéo trên a ậ ấ ầ ử

k, k+1: 3

i

ai,i+1

ai-1,i

xi

ri

1

2

3

3.1 3.1 3.1

kk – 4 ph n t aii 08.2- 08.2- 08.2- 08.2-

bi 264.1- 152.0 168.0 116.1-

qi 2 2 2 2

pi 3- 3- 3- 3-

4

4.3 8.3 2.4 6.4 7.0 7.0 7.0 2.0 4.0 6.0 8.0

K T QU Ế Ả

-------------------------------------------------------------------------------------------------------------------------------------

Gi i h b ng phép kh Gauss (làm tròn 3 ch s l ): ả ệ ằ ữ ố ẻ ử

- ø Ø 08.2 3.1 0 0 .1 264

œ Œ - - - 7.0 08.2 3.1 0 .0 152 œ Œ

[

]

= bA - - - œ Œ .0 168 0 08.27.0 3.1

œ Œ - ß º 0 0 7.0 08.2 .1 116

- ø Ø ø Ø 1 .0 625 0 0 .0 608 .1 006

œ Œ œ Œ - 0 .1 642 3.1 0 .0 273 .0 636 œ Œ œ Œ

[

]

= = fi (cid:222) bA y - - - œ Œ œ Œ 0 08.27.0 3.1 168.0 .0 593

œ Œ œ Œ - ß º ß º 0 0 7.0 08.2 116.1 .0 736