Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
266,19 KB
Nội dung
wWw.kenhdaihoc.com - Kênh thơng tin -Học tập - Giải trí Chương GIẢI GẦN ĐÚNG PHƯƠNG TRÌNH VI PHÂN THƯỜNG I PHƯƠNG PHÁP SỐ GIẢI BÀI TỐN CƠ-SI 1.1 Bài tốn Cauchy: Cho phương trình vi phân cấp 1: y’ = f(x,y) (5.1) Tìm nghiệm y=y(x) phương trình (5.1) thỏa mãn điều kiện ban đầu: y(x0) =y0 Các phương pháp số giải toán theo cách tiếp cận sau Chọn bước h đủ bé, xác định điểm xi=x0 +h (i=0,1,…) tính gần giá trị y(xi) yi 1.2 Phương pháp Ơle Ta có cơng thức số gia hữu hạn Lagrange: y(xi+1) = y(xi) + y’(ci) h (5.2) Phương pháp Ơle thay gần y’(ci) f(xi,yi) nhận cơng thức tính xấp xỉ yi sau: yi+1 = yi +hf(xi,yi) (5.3) Giả sử miền R={ |x-x0| ≤a; |y-y0| ≤b} hàm f(x,y) thỏa mãn điều kiện: | f ( x, y1 ) f ( x, y ) | N | y1 y | (y1 , y ) df f f f' M dx x y (5.4) M N số Ta có ước lượng sai số sau: | y ( xn ) y n | hM 1 hN n 2N (5.5) Trong thực hành để ước lượng sai số người ta dùng cách tính kép, t.l tính lại với bước h/2 ta có xấp xỉ y(xn)= yn* Khi ta có | y(xn) - yn*| | yn - yn*| Hay | y(xn) - yn| < | yn - yn*| +| y(xn) - yn*|=2| yn - yn*| wWw.kenhdaihoc.com - Kênh thông tin -Học tập - Giải trí Ví dụ: Giải phương trình vi phân y ' y 2x với điều kiện ban đầu y(0)=1; h=0,2 y Phương trình có nghiệm y x 1 Tính theo phương pháp Ơ le ta có: i xi yi = h f(xi,yi) yi nghiệm y(xi) 0,0 0,2000 1,0000 1,0000 0,2 0,1733 1,2000 1,1832 0,4 0,1561 1,3733 1,3416 0,6 0,1492 1,5294 1,4832 0,8 0,1451 1,6786 1,6124 1,0 1,8237 1,7320 1.3 Phương pháp Ơle cải tiến Tính thêm điểm điểm phương pháp gốc x xi h i h yi y i f ( xi , yi ) f f x 1, y i i i2 (5.6) Và công thức lặp là: y i 1 y i h f i (5.7) 1.4 Phương pháp Ơle cải tiến Ta đặt y i 1 y i h f ( xi , yi ) f i 1 f ( xi 1 , y ) i 1 Khi (5.8) wWw.kenhdaihoc.com - Kênh thơng tin -Học tập - Giải trí f f i 1 y i 1 y i h i (5.9) Các phương pháp Ơle cải tiến có độ xác O(h3) Để đánh giá sai số xn người ta dùng cách tính kép, t.l tính lại với bước h/2 ta có xấp xỉ y(xn)= yn* Khi ta có | y(xn) - yn*| | yn - yn*| Hay | y(xn) - yn| < | yn - yn*| +| y(xn) - yn*|= (4*| yn - yn*|)/3 Ví dụ Xét lại ví dụ trước y ' y 2x y y(0) =1; h=0,2 i xi yi Phương pháp thứ xi+1/2 yi+1/2 yi yi Phương pháp thứ yi y i 1 y(xi) 0 1,0000 0,1 1,1000 0,1836 1,0000 1,2000 0,1867 1,0000 0,2 1,1836 0,3 1,2682 0,1590 1,2067 1,3566 0,1617 1,1832 0,4 1,3427 0,5 1,4173 0,1424 1,3484 1,4993 0,1454 1,3416 0,6 1,4850 0,7 1,5527 0,1302 1,4938 1,6180 0,1341 1,4832 0,8 1,6152 0,9 1,6777 0,1210 1,6279 1,7569 0,1263 1,6124 1,0 1,7362 1,7543 1,7320 1.5 Phương pháp Runge-Kutta Theo Runge-Kutta giá trị gần yi+1 xác định nhờ công thức sau: yi+1 = yi + yi y i đó: (i ) ( ( k1 2k 2i ) 2k 3(i ) k 4i ) (5.11) (5.12) wWw.kenhdaihoc.com - Kênh thơng tin -Học tập - Giải trí k1(i ) hf ( xi , yi ) h k1(i ) k hf xi , yi 2 (i ) h k k3(i ) h f xi , yi 2 (i ) ( ( k 4i ) h f xi h, yi k 3i ) Độ xác h4 Để đánh giá sai số xn người ta dùng cách tính kép, t.l tính lại với bước h/2 ta có xấp xỉ y(xn)= yn* Khi ta có 15 | y(xn) - yn*| | yn - yn*| Hay | y(xn) - yn| < | yn - yn*| +| y(xn) - yn*|= (16.| yn - yn*|)/15 II PHƯƠNG PHÁP GIẢI TÍCH GIẢI BÀI TỐN CƠ-SI 2.1 Bài tốn Cauchy Bài tốn Cauchy cho phương trình vi phân cấp n Hãy tìm nghiệm y=y(x) thỏa mãn phương trình y(n)= f(x,y,y’,…,y(n-1)) (5.12) với điều kiện ban đầu: y(x0) = y0; y’(x0)=y’0; ….; y(n-1)(x0) = y0(n-1) đó: y0; y’0; ,y0(n-1) (5.13) số cho Bài toán Cauchy cho hệ n phương trình vi phân Tìm hàm y1=y1(x);…yn=yn(x) thỏa mãn hệ y1' f1 ( x, y1 , , y n ) y ' f ( x, y , , y ) n n n (5.14) thỏa mãn điều kiện ban đầu: y j ( x0 ) y j j 1, , n (5.15) Bằng cách đặt y1=y’, … ; yn-1 = y(n-1) phương trình cấp n (5.12) ln đưa hệ n phương trình vi phân: wWw.kenhdaihoc.com - Kênh thông tin -Học tập - Giải trí y ' y1 ' y1 y ' y n 2 y n1 ' y n 1 f ( x, y, y1 , , y n1 ) với điều kiện ban đầu: y(x0) = y0; yj(x0)=y0(j); ( j=1, ,n-1); Phương pháp giải tích tìm nghiệm xấp xỉ (5.12) với điều kiện ban đầu (5.13) (hoặc hệ (5.14) với điều kiện (5.15)) dạng biểu diễn giải tích mà thường dạng chuỗi lũy thừa 2.2 Phương pháp đạo hàm liên tiếp Giả sử nghiệm (5.12) khai triển thành chuỗi Taylor x0 Ta xác định n số hạng đầu khai triển nhờ (5.12) (5.13) Sau xác định số hạng nhờ đạo hàm liên tiếp (5.12) sử dụng giá trị đạo hàm cấp thấp x0 tính Ví dụ Giải phương trình y’’ + xy’ +y = (5.16) với điều kiện: y(0)=0; y’(0) = (5.17) Giải: Từ (5.16) (5.17) ta có: y’’=-xy’ – y (5.16’) y’’(0) = 0; y(3) =-y’-xy’’-y’=-xy’’-2y’ y(4)=-xy(3)-3y’’; y(n+1)= -xy(n)-ny(n-1) Ta tính y’’(0)=0 y(3)(0) =-2; y(4)(0) =0; y(5)(0) = 8; y(2n)(0) =-(2n-1)y(2n-2)=0; y(2n+1)(0) = -2n.y(2n-1)(0) = (-1)n 2n n! Ta tìm nghiệm dạng: wWw.kenhdaihoc.com - Kênh thơng tin -Học tập - Giải trí y(x)= a0 +a1x+a2x2 +… Với điều kiện ta nhận chuỗi lũy thừa: x3 x5 n n! 2n 1 n y ( x) x (1) x 15 (2n 1)! Ví dụ Tìm khai triển bậc cho nghiệm hệ y ' ( x) y cos x z sin x z ' ( x) y sin x z cos x (5.18) với điều kiện ban đầu: y(0)=1, z(0)=0 (5.19) Từ (5.18) (5.19) ta có: y’(0)= 1; z’(0)= 0; Đạo hàm hai vế (5.18) ta có: y’’(x) = -(y+z’)sin x –(z-y’)cos x z’’(x)= (y’+z) sin x +(y-z’) cos x y’’(0)= 1; z’’(0)=1; Đạo hàm lần ta được: y(3)(x) = (z-2y’-z’’) sin x –(y+2z’-y’’) cos x z(3)(x) = -(y-2z’-y’’) sin x +(z-2y’-z’’) cos x y(3)(0) =1; z(3)(0) =1; Cuối ta có nghiệm gần đúng: y ( x) x x z ( x) x x 2.3 Phương pháp hệ số bất định Phương pháp thường dùng để giải phương trình hệ phương trình vi phân tuyến tính Người ta tìm nghiệm dạng chuỗi lũy thừa; y ( x ) ci ( x x0 ) i i 0 ci hệ số cần xác định Để tìm ci ta tính đạo hàm cấp chuỗi thay vào (5.12) hệ số ci wWw.kenhdaihoc.com - Kênh thơng tin -Học tập - Giải trí tính đệ quy nhờ việc đồng hệ số chuỗi kết hợp với điều kện ban đầu Ví dụ Tìm nghiệm phương trình: y’’ +xy’+2y =12 với (5.20) y(0)=5; y’(0)=2 (5.21) Giải: Tìm nghiệm dạng: n y ( x) c0 c1 x c2 x cn x ck x k k 0 Khi đó: y ' ( x) c1 2c2 x ncn x n 1 k ck x k 1 k 1 y ' ' ( x ) 2c2 n( n 1)c n x n k (k 1).c k x k k 0 Do (5.21) nên c0 =5; c1=2 Thay vào (5.20) ta có: (k 1)(k 2)c k k 2 k 0 k x kc k x 2 c k x k 12 k 1 k 0 2c 2c0 [(k 1)( k 2) c k (k 2)ck ] x k 12 k 1 Từ đó: c2= 6-c0= 6-5 =1; ck k 1 (1) k 1 c (1) k 1 ( 2k 1)!! ( 2k 1)!! ck c2 k c k 1 (1) k c1 2.( 1) k ( 2k )!! ( 2k )!! wWw.kenhdaihoc.com - Kênh thơng tin -Học tập - Giải trí III BÀI TỐN BIÊN TUYẾN TÍNH 3.1 Bài tốn biên điểm Cho phương trình vi phân: F(x,y,y’,y’’) = (5.22) Tìm hàm y=y(x) đoạn [a,b] thỏa mãn (5.22) điều kiện biên: 1[ y ( a), y ' ( a)] [ y (b), y ' (b)] (5.23) Chúng ta xét trường hợp phương trình (5.22) điều kiện biên (5.23) tuyến tính Khi tốn biên tuyến tính phát biểu: Tìm nghiệm y’’+p(x) y’+q(x) y=f(x) (5.24) với điều kiện biên: y (a ) y ' (a ) A y (b) 1 y ' (b) B (5.25) p(x),q(x), f(x) hàm biết xác định [a,b] 0, 1, 0, 1, A, B số biết thỏa mãn: |0| + |1| 0; |0|+ | 1| Nếu A=B=0 điều kiện biên gọi 3.2 Phương pháp sai phân Chia đoạn [a,b] điểm xi+a=ih; n.h=b-a; ký hiệu pi=p(xi), qi=q(xi), fi=f(xi), y’(xi)=yi’; y’’(xi)=yi’’ (i=1,2, n); Ta thay gần đạo hàm yi’; yi’’ theo công thức (3.4), (3.6) (3.7) Chương 3: ' yi 1 yi 1 , yi 2h ' y0 y1 y0 , h yi 1 yi yi 1 h2 y yn 1 ' yn n h yi'' (i 1, , n 1) (5.26) vào (5.24) (5.25) Ta nhận hệ phương trình đại số tuyến tính để tính yi (i=0, ,n): y y i 1 y i 1 y i y i 1 pi i 1 qi y i f i ; (i 1, , n 1) 2h h y1 y A y h y n y n1 B y n h (5.27) wWw.kenhdaihoc.com - Kênh thông tin -Học tập - Giải trí Sai số đánh giá cơng thức: h2M (b a ) 96 M max | f ( 4) ( x ) | yi y ( xi ) (5.28) [ a ,b ] Ví dụ: Giải phương trình: x y ' ' xy ' y (1) 0; y (1,4) 0,0566 (5.29) Với h=0,1 dùng phép (5.26) hệ (5.27) có dạng: 2 xi2 ( yi 1 yi yi 1 ) xi ( yi 1 yi 1 )h 2h ; y4 y (1,4) 0,0566 y0 y (1) 0; i 1,2,3 hay ta có hệ: 0,02 2,31y0 4,84 y1 2,53 y2 2,76 y1 5,76 y2 3,00 y3 0,02 3, 25 y2 6,76 y3 3,51 y4 0,02 y0 0; y4 0,0566 Giải ta được: (5.30) y0=0; y1=0,0046; y2=0,0167; y3=0,0345; y4=0,0566 Nghiệm xác phương trình y ( x) ln x có giá trị: y0=0; y(x1)=0,0047; y(x2)=0,0166; y(x3)=0,0344; y(x4)=0,0566 3.3 Phương pháp vượt Trong phương pháp ta thêm điểm xn+1 thay điều kiện biên thứ hai biểu thức: yn 1 y n 1 y n 1 B 2h giải hệ sau Viết n-1 phương trình đầu (5.27) dạng: 2h f i i (i 1, n 1) yi 1 mi yi ki yi 1 hpi trong : m 2q i h ; k hp i (5.31) i i hpi hpi kết hợp với điều kiện biên: (0h-1)y0+1y1=hA ta có hệ: yi = ci (di - yi+1) với (i=1, ,n) (5.32) wWw.kenhdaihoc.com - Kênh thơng tin -Học tập - Giải trí ci tính theo cơng thức sau: với i=1 : 1 h c1 m ( h) k 1 1 Ah Ah d f1h k 1 k1 1 p1h 1 h 1 h (5.33) với i=2,3,…,n ci fi h2 ; di ki ci 1di 1 i kici 1d i 1 mi ki ci 1 hpi (5.34) Việc tính tốn chia thành hai q trình nối tiếp: Q trình thuận Tính mi, ki theo (5.31) Xác định c1 d1 theo (5.33) ci, di theo (5.34) Quá trình ngược: Kết hợp công thức (5.32) i=n i=n-1 với điều kiện biên thứ hai ta có hệ: y n c n ( d n y n 1 ) y n 1 c n 1 (d n 1 y n ) y y n 1 y n n 1 B 2h từ hệ ta tính yn : yn Bh 1 (d n c n1d n1 ) 2 h 1 (c n 1 ) cn Dùng giá trị cn, dn, cn-1, dn-1 biết để tìm yn; Các yi cịn lại (i=n-1, …,2,1) tính đệ quy (5.32) y0 tính từ điều kiện biên thứ y0 Ví dụ 2: y1 Ah 1 h Giải phương trình: y’’-2xy’-2y=-4x với y(0)-y’(0) = 0; 2y(1)- y’(1) =1 Giải: Với h=0,1 ta có hệ: wWw.kenhdaihoc.com - Kênh thơng tin -Học tập - Giải trí y y i 1 y i 1 y i y i 1 xi i 1 y i 4 x i ; (i 1, ,9) 2h h y1 y 0 y0 h y11 y 2 y10 2h ta có: mi 2h ; xi h ki c1 0,899; xi h ; xi h i 4h xi xi h d1 0,004 Kết tính sau (nghiệm y x ex ) i xi yi y(xi) 0,0 1,03 1,00 0,1 1,13 1,11 0,2 1,26 1,24 0,3 1,41 1,39 0,4 1,60 1,57 0,5 1,81 1,78 0,6 2,06 2,03 0,7 2,36 2,33 0,8 2,72 2,70 0,9 3,17 3,15 10 1,0 3,73 3,72 ... =1; Cuối ta có nghiệm gần đúng: y ( x) x x z ( x) x x 2.3 Phương pháp hệ số bất định Phương pháp thường dùng để giải phương trình hệ phương trình vi phân tuyến tính Người... (16.| yn - yn*|)/15 II PHƯƠNG PHÁP GIẢI TÍCH GIẢI BÀI TỐN CƠ-SI 2.1 Bài tốn Cauchy Bài tốn Cauchy cho phương trình vi phân cấp n Hãy tìm nghiệm y=y(x) thỏa mãn phương trình y(n)= f(x,y,y’,…,y(n-1))... - Kênh thơng tin -Học tập - Giải trí Ví dụ: Giải phương trình vi phân y '' y 2x với điều kiện ban đầu y(0)=1; h=0,2 y Phương trình có nghiệm y x 1 Tính theo phương pháp Ơ le ta có: i xi