1. Trang chủ
  2. » Giáo án - Bài giảng

Phương pháp tính p5

17 1 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 5,7 MB

Nội dung

Trang 1

PHUONG TRINH VI

7 PHÂN

Phương trình vi phân là một nhánh quan trọng của Toán học, có nhiều ứng

dụng trong khoa học, công nghệ và kinh tế Phương trình vi phân được coi là cầu nối giữa lý thuyết và ứng dụng Tuy nhiên, hầu hết các phương trình vi phân, đặc biệt là các phương trình vi phân phi tuyến, rất khó xác định là có nghiệm hay không Nếu có nghiệm thì nghiệm đó có biểu diễn tường minh như thế nào Trong hoàn cảnh đó, các phương pháp số ra đời để tìm nghiệm gần đúng là điều tất yếu

Trọng tài liệu này ta chỉ khảo sát một vài phương pháp số tìm nghiệm gần

đúng của phương trình vi phân Cauchy:

Ựˆ = ƒ(%,0),x € |a;b]

{ y() <i, (7-1)

Dé tìm nghiệm gần đúng của phương trình vi phân (7.1) thì yêu cầu đầu

tiên là phương trình (7.1) phải có nghiệm duy nhất Kết quả sau đây của

Picard cho ta một diều kiện để phương trình vi phân (7.1) có nghiệm duy nhất Định lý 7.1 (Định lú Picard) Giả sử hàm ƒ(x,ụ) thỏa mãn các điều kiện sau day: e Liên tục trén mién D = {(x,y):a <x <b, yo —C <y < yo $C} e |f (x, yo)| < K,Vx € [a;b]

e Ton tai L > 0 sao cho |f (x,y) — f (x-y2)| < Ll ~ wa| tới mọi

Trang 2

200 Phuong trinh vi phan

thì phương trình oi phân (7.1) cé duy nhat nghiém € Coal Hon nua, ly(x) — yo| < C ới mọi x € [a; b] Clutng minh Xét day ham {y,} dugc xac dinh boi: © yo (Xx) = Yo, e yn (x) = yot [fm (s)) đs với n > 1

Ta sẽ chứng tỏ hai kết quả sau bằng phương pháp qui nạp:

© Yn (x) € [Yo — Cryo + C],Vx € [a;b],Vn > 1, K [L(x —a)]" L n! [re S, yo) ,Vx € [a;b],Vn > 1 lif © Yn (xX) — Yn- 1(x)| < VỚI — 1 ta có L(x —a)) \yi (x) — Yo (x)| = T Mà eee < FL(b ~0) < EP EO Ol _ E feso-n a] <C

Trang 3

201 Hơn nữa, k+1 Kk th (x — ay} ve Œ) —weG)| <3 lp (4) =ia 6) sky Eom Ti 7=: 1 K © [L (x —a)]! — KT r(x-a) = Loe ñ TT Ỉ ~ 1] K F 1(b~a) < T le — 1| < Cc Vậy hai kết quả của ta cũng đúng khi ¡ = k + 1 Do đó, theo nguyên lý qui nạp, chúng đúng với mọi # > 1 Tiếp theo, ta chứng tỏ phương trình (7.1) tồn tại nghiệm 1 € Chân: -E©o Ta thấy chuỗi hàm ` [ự„ (x) — w„-+ (x)] có dis] K [L(x —a)]" - K [L (b — a)}" — E [Yor (x) —Yn-1 (x)| < T nl ai = My Mà chuối đương 3) Ay CÓ hi 1-00 gu = Ky {00 [E(b—a))" K [zre=» _ 1 < +00, — „\ỊH ot LS ml L } HW + Co tasuy ra )" a, hdi tu Do do, theo tiéu chudn Weierstrass ([1]) day tổng „1 riêng i Yn (x) = DO [yi (x) — yi-a (x)] + yo i=]

Trang 5

7.1 Phuong phap Euler 203 Định lý Picard cũng giúp ta biết được cách tìm nghiệm đúng (x) của phương trình vi phân (7.1) thông qua cách xác định đãy hàm {Yn} Tuy nhiên, trong hầu hết trường hợp, việc biểu diễn tường minh các hàm 1„(x)

là không thể Từ đó dẫn đến việc không thể xác định chính xác (+) Trong

phân còn lại của chương, chúng ta sẽ tìm hiểu các phương pháp số để tìm nghiệm gần đúng của phương trình (7.1) Để tiện trình bày, nếu không có chú thích gì thêm, thì hàm ƒ(x, 1) sẽ thỏa các điều kiện trong Định lý

Picard; doan [a;b] duoc chia thanh n doan bang nhau bởi các mốc chia

X¿ = #xụ +ih,ỉ = 0,n voi xy = ah = Pia Công việc của ta là với mỗi

i = 0,n, ta sé xap xi (x¡) bởi giá trị yi (uu y là y(xo) = yo) va danh gia sai so |y(xi) — | 7.1 Phương pháp Euler (2) |a;b]” Giả sử € C theo công thức khai triển Taylor ta được h2 V(Xi:1) = ¥ (24) + hư (xì) + Sy" (Gi) VỚI ? = Ú,m — 1 Vì (x) là nghiệm đúng của phương trình vi phân (7.1) nên ¥! (xi) = f (xiy (x) Ta suy ra ` h2 —_

V{*¡.1) = W(%¡) + hƒ (xi (x¡)) + sy" (ỗi),í =0,n — 1 (7.5) Trong đẳng thức (7.5), nếu bỏ đi phần dư ey! (¢i) và thay y(x;) bang y;

thì ta được

Wi+i = ị T HỆ (Xi, Wị),Í = Ơn — T1 (7.6)

Công thức (7.6) được gọi là công thức Euler Ví dụ 7.1 Giải phương trình vi phân Cauchy

{your Mts [0; 0, 5]

y(0)=1

Trang 6

204 Phuong trinh vi phan Giải Từ giả thiết đề bài ta có h = 0,1 và ƒ(x,U) =U—x+ 1 Khi đó, các

mốc chia được xác định bởi xo = 0;x¡ = xọ + = 0,101 = 1,5 Sử dụng

công thức Euler ta được

{ Yo " dy

yin = Yi thf (xi yi) = vit h (yj — x¡ị + 1),1 = 0,4

Phương trình vi phân ban đầu có nghiệm đúng là hàm y(x) = e* +x Bang giá trị sau đây so sánh giữa các giá trị chính xác và giá trị gần dúng được tính bằng công thức Euler [ xi | Yi | y(xi) [ 1yŒi) — vil_| 0 1 1 0 0,1 11, 200000000 | 1, 205170918 | 0,0051 70918 0,2 |1, 410000000 | 1,421402758 0,011402758 0,3 |1, 631000000 | 1,649858808 0,018858808 0,4 |1, 864100000 | 1,891824698 0,027724698 0,512, 110510000 | 2,148721271 0,038211271 © Hinh 7.1

Hinh 7.1 thể hiện đồ thị của nghiệm đúng (đường liền) và nghiệm xấp xỉ

bằng phương pháp Euler (hình thoi)

Phương pháp Euler tuy đơn giản nhưng vì sai số lớn nên ít được sử

dụng trong thực tê Sau đây, ta sẽ trình bày một phương án cải tiến cho

Trang 7

7.2 Phuong phap Euler cai tién 205

7.2 Phuong phap Euler cai tién

Sử dụng công thức hình thang ta được h Jy (x+s)ds = 5 |/'(x)+'(x+h)] +O (0) 0 Ta suy ra h y(x+h) = y(x)+ | y/ (x +s) ds =y(x)+3 [y' (x) +y! (x +h)] +0 (i) 0

Thay x = x;,i = 0,n — 1 vao dang thức trên ta được

vi) =5) +5 Ứ uy) + ƒ Ore Gia) +O (09) Ø2)

Trong (7.7), nều ta lược bỏ Ó (ñŠ) va thay y(x;) bang y; thì đẳng thức (7.7)

trở thành 1

fl

Yinr = Mir 5 Ƒ (Xui) + ƒ (Xi Yar) (7.8)

Công thức (7.8) cho ta nghiệm xấp xỉ chính xác hơn công thức (7.6) Tuy nhiên, vì về phải của (7.8) có chứa ¡¡; nên để tính được Yii1, ta phai giải phương trình (7.8) Việc này rất khó khăn nếu ham f(x,y) phic tạp Để

giải quyết vấn đề này, ta thay 1;, ở về phải của (7.8) bằng biểu thức i+i = 0í + hf (x, yi) Do đó, công thức (7.8) có thể viết lại như sau: h ee Yin = Vit 5 Uf (xii) + f (41,5 + Af (xi,yi))],i=0,n—T (7.9)

Trang 8

206 Phuong trinh vi phan

Ví dụ 7.2 Giải phương trinh vi phan Cauchy

ự' = x(x?+cV+2),V+x € |0,5;0,7] (0,5) =1

bằng phương pháp Euler cải tiến với h = 0,1, mỗi giá trị cải tiền ba lần Giải Dựa vào giả thiết đề bài ta được

h = 0,1; f (x,y) = x (x? + ef +2); x0 = 0,5,%1 = 0,6,%2 = 0,7; Yo = 1

+ Tính 1, ta có

vì” = yo + hf (xo, Yo) = yo + hxo (x6 + eo + 2) = 1,248414 Sử dụng công thức (7.10) cho ¡ = 0 và cải tiến lần k + 1 ta được y* My yo + Ễ If (xo, Yo) + f (xv) | = — 21 Yo 22 aye? ; =Yyot 5 xọ (xã + e9 +2) +xi (xi te +2)| Ta tinh duoc ựỆ = 1,299551 ự‡!? = 1,305037 yO) = 1,305642 Vay yi = (`) = 1,305642 + Tinh y2, ta cd

yo? = yn HAF (x1, y1) = yi + hex, (x7 +e” +2) = 1, 668645

Trang 9

7.2 Phương pháp Euler cải tiễn 207

Ví dụ 7.3 Giải phương trình vi phân Cauchy { yi =y-~—x+1,x € |0;0,5]

(0) = 1

bằng phương pháp Euler cải tiến với h = 0,1, mỗi giá trị cải tiến ba lần Giải Từ giả thiết để bài ta có

h =0,1;ƒ(3,) =0 —x + 1;x¡ = 0,1 = 0,5;o = 1

+ Tinh yj, ta cd

ys ) = yo thf (x0, yo) = o + h (0o — xo + 1) = 1,2

Sử dụng công thức (7.10) cho ï = 0 va cai tién lan k + 1 ta được

yi" eh Yo + h lf (Xo, Yo) + f (74?) |

= Yor = 5 [(yo — Xp +1) + (ui ) — #1 + 1)] Ta tinh duge {` = 1,205000000 y = 1, 205250000 y\?) = 1,205262500 Vậy ¡ = | `` = 1,205262500 + Tương tự, ta cũng tính được a = uŸ) = 1,421605194 y3 = y® = 1,650194411 4 = VỆ) = 1,892319250 ys = yS) = 2,149404504

Nhu đã biết, phương trình vi phân ban đầu có nghiệm đúng là hàm /(x) =

* +x Bảng giá trị sau đây so sánh giữa các giá trị chính xác và giá trị gần đúng được tính bằng công thức Euler cải tiến

Trang 10

208 Phuong trinh vi phan

Từ bảng giá trị trên ta thấy các giá trị gần đúng được tính bằng công thức Euler cai tiền có sai số tốt hơn so với công thức Euler m

7.3 Phuong phap Runge-Kutta

Nội dung cơ bản của phương pháp Runge-Kutta là để tăng độ chính xác của 1⁄¡¡ ¡ thì ta cần thêm các điểm trung gian giữa x¡ và x;¡, ¡ Phần lý thuyết của phương pháp này rất phức tạp, bạn đọc có thể xem trong [4] hoặc [5] Ở đây, chúng ta chỉ đi vào cách sử dụng công thức Runge-Kutta để giải các phương trình vi phân Cauchy Có nhiều công thức Runge-Kutta được khám phá Tuy nhiên, ta chỉ tìm hiểu công thre Runge-Kutta bac bon

$ Cong thie Runge-Kutta bac bốn kị) = hƒ (Xi,Wi), Ki) =hf (x; 4+ 5h, yi t+ 1, , NT = hƒ (x¡ + 4h, yj + 4ks? = Hƒ |Xr+h; "mì yar = í + š (KẾ) + 2P? + 2k) + kỳ”), i=0,n—1 Vi du 7.4 Giai phuong trinh vi phan Cauchy yl = y (x +1) + 2x7, x € |0,5;0,7) (0,5) =1

bằng phương pháp Runge-Kutta bậc bốn với = 0, 1

Giải Dựa vào giả thiết đề bài ta được

Trang 11

7.3 Phuong phap Runge-Kutta 209 Khi đó, ị = yo + § (ky) + 2K) + 2) + kỹ”) = 1,233025 + Tinh y2, ta cd Ki?) = hf (x1,y1) = 0, 269284 (2) _ Ke _ Saf | Se-+ 5,1 +- + = 0,310165 Ki?) 7) — hf (x4 + by = 0,313538 ky = hƒ (xi + huyi + Qo ’) = 0,360916

Khi d6, yo = yr + 8 (ky? + 2K?) + 2K?) + ky’) = 1,545959 m

Ví dụ 7.5 Cho hàm số 1 = 1/ (x) là nghiệm của phương trình vi phân

ụ = xự (x2 + 1),Vx € |0,5; 1] y (0,5) =1

Dùng phương pháp Runge-Kutta bac bốn tính ự (0,7) với h = 0,1

Trang 12

210 Phuong trinh vi phan

Vi du 7.6 Giai phuong trinh vi phan Cauchy y’ =y—x+1,x € [0;0,5]

y(0)=1

bang phuong phap Runge-Kutta bac bin véi h = 0,1 Giải Từ giả thiết đề bài ta có Wt = Ö,1) Ƒ(X,f} = 1ý = &£ r1) #y = 0, Ll = 0,576 = 1 + Tính 1, ta có KY = hf (xo, yo) = 0, 200000000 (1) kK) = hf (xo +4, yo + 4- ) = 0,205000000 pO) SY) = nf (xo + 4, yo +) h DA — = 0,205250000 KỊP = hf (x0 + hyo + KS?) = 0,210525000 Khi d6, v1 = yo + ¿ (Ki) + 2k{” + 2449 + Kf”) = 1, 205170833 + Bằng cách tương tự ta tính được yo = 1,421402571 y3 = 1,649858497 ya = 1,891824240 ys = 2, 148720639 i

Nhu da biét, phương trình vi phân ban đầu có nghiệm đúng là hàm 1(x) =

c* -+- x Bảng giá trị sau dây so sánh giữa các giá trị chính xác và giá trị gần

Trang 13

7.3 Phuong phap Runge-Kutta 211

c

Pot € ' c

Hinh 7.2

Hinh 7.2 cho ta thay giá trị của log(y(x x;) — yi|) trong phương pháp Euler (hinh thoi), phương pháp Euler cải tiền (dấu sao) và phương pháp Runge-Kutta bậc bốn (hình tròn) Rõ ràng phương pháp Runge-Kutta bậc

bồn cho nghiệm gần đúng với sai số tốt nhất Kĩ

Bài tập chương 7

Bài tập 7.1 Dùng phương pháp Euler giải gần đúng và so sánh với nghiệm

chính xác của các phương trình vi phân Cauchy sau đây:

1

Go

yf = ye — 20;0 < x < 0,05;(0) = 0 với = 0,01 Nghiệm chính

xác của "¬ trình vi phân là /(x) = šxe}*Y — se + de T2, / =1+(x—)?2< x < 2,04;U/(2) = 1 với = 0,01 Nghiệm

chính xác của phương trình vi phân là (x) =x— vi

= 1+ yl<x < 1,03;y(1) = 2 voi h = 0,01 Nghiệm chính xác cua nhượng trinh vi phan la y(x) = x In x + 2x

y’ = cos2x + sin3x;0 < x < 0,1;y(0) = 1 véih = 0,025 ee

Trang 14

212 Phuong trinh vi phan

5 y =e ¥;0< x < 0,1; y(0) = 1 với h = 0,05 Nghiệm chính xác của

phương trình vi phân là /(x) = ln(e* + e — 1)

6 = ‘ied <x <1,2;y(1) = 2 voi h = 0,05 Nghiém chinh xac ctia

phương trình vi phân là y(x) = Vx? +2x+6—1

7 yf = -y + xy?;2 <x < 2,2;y(2) = 2 voi h = 0,05 Nghiệm chính

vA2

xác của phương trình vi phan 1a y(x) = (x 24 V⁄2e1 )

Bài tập 7.2 Dùng phương pháp Euler cải tiễn (cải tiến ba bước) giải gần đúng và so sánh với nghiệm chính xác của các phương trình vi phân

Cauchy trong Bài tập 7.1

Bài tập 7.3 Dùng phương pháp Runge - Kutta bậc bốn giải gần đúng và

So sánh với nghiệm chính xác của các phương trình vi phân Cauchy sau

đây:

ly XƑ” = u ¬ V 5 1 < x< 1,2;/(1) = 1 với h = 0,05 Nghiệm chính xác -

của phương trình vi phan la y(x) = —+— 14 Inx

2 y = 1444431 < x< 1,2;y(1) = 0 với h = 0,05 Nghiệm chính

xác của phương trình vi phân là /(x) = x tan(In x)

3 ˆ = —-5ự + 5x2+2x;0 < x < 0,04;y(0) = 3 với h = 0,02 Nghiệm chính xác của phương trình vi phân là y(x) = x? + še ”*,

Bài tập 7.4 Dùng phương pháp Runge - Kutta bậc bốn giải gần đúng và

so sánh với nghiệm chính xác của các phương trình vi phân Cauchy trong

Bài tập 7.1

Bài tập 7.5 Cho phương trình vi phân

1ˆ = 2x + cos „x € [0,02;0,04]

(0,02) =1

Tính (0,03) bằng công thức Euler cải tiến (cải tiến 3 bước) với h = 0,01

Bài tập 7.6 Cho phương trình vi phân

{ ự = xự+x+?,x € |0;0,08]

y(0)=1

Trang 15

[1] [2] [4] [5] [7] [8] [9] [10] [11] [12] Tỏi liệu tham khỏo Lê Văn Lai, Giáo trình Toán cao cấp A1,NXB Đại học Công Nghiệp TP HCM, 2017 Nguyễn Minh Chương, Giải tích só, Nhà xuất bản Giáo dục Việt Nam, 2009

Lê Thái Thanh, Lê Ngọc Lăng, Nguyễn Quốc Lân; 2003, Giáo trình

Phương Pháp Tính, NXB Đại học Quốc Gia TP HCM, 2007

Trần Văn Trản, Phương pháp sô thực hành, Tap 1, NXB Đại học Quốc Gia Hà Nội, 2007 Endre Suli, David Mayers, An Introduction Numerical Analysis, Cam- bridge University, 2003 Hildebrand, Introduction To Numterical Analysis (2nd Edition), Dover Publication, 1987

Doron Levy, Numerical Analysis, Lecture, 2005

Trang 16

214 TAI LIEU THAM KHAO [13] James Stewart, Calculus Early Transcendentals, 6e, Thomson Brooks/ Cole, 2008 [14] Dương Minh Đức, Giải Tích Hàm, NXB Đại học Quốc Gia TP HCM, 2005

[15] Phan Quốc Khánh, Phép tinh vi tich phan, Tap 1, NXB Giao Duc, 1998

Ngày đăng: 30/06/2022, 10:59