Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
356,5 KB
Nội dung
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) B- BÀI TOÁN BIÊN 1 – PHƯƠNG PHÁP EULER 1- PHƯƠNG PHÁP SAI PHÂN HỮU HẠN 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À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 Giải xấp xỉ: Chia [a, b] thành n đoạn bằng nhau, độ dài h = (b – a)/n, (n + 1) điểm chia t 0 = a < t 1 = a + h < … < t n = b = ≤≤= α )( ),,(' ay btaytfy a b a = t 0 b = t n t 1 t 2 h y 0 = α y 1 = ? Cần tính gần đúng giá trò w k ≈ y k = y(t k ), k = 1 → n MINH HOẠ Ý TƯỞNG Bài toán Côsi: & công thức xấp xỉ đạo hàm 2 điểm: = ≤++−= 31)0( 0,255' 2 y tttyy Từ đó xây dựng đa thức nội suy Lagrange (spline) y gđ và vẽ đồ thò so sánh với nghiệm chính xác g(t) = hãy tính xấp xỉ nghiệm y tại t = 0.5, t = 1. Với bước chia h = 0.5 h xfhxf xf )()( )(' 00 0 −+ ≈ t et 52 3 1 − + Điểm chia: 0 0 =t 5.0 1 =t .1 2 =t Kết quả tìm được: ( ) ( ) 875.10.1 5.05.0 = −= y y 33.087.442.6 2 +−=⇒ tty gđ cbtaty ++= 2 egđ.Lagrang CÁC SƠ ĐỒ GIẢI XẤP XỈ PTRÌNH VPHÂN THƯỜNG [ ] = ∈= α )( ,),,(' ay batytfy Chia [a, b] → n đoạn ihat n ab h i += − = , Tính w i , i = 0 → n Sơ đồ Euler (i = 0 → n – 1) S/đ Euler cải tiến (i = 0 → n – 1) 2)( ),(),,( . 211 121 0 kkww kwhthfkwthfk ww ii iiii i ++= ++== ⇒= + biếtđãsửGiả α ),( . 1 0 iiii i wthfww ww += ⇒= + biếtđãsửGiả α Sơ đồ Runge – Kutta: w 0 = α. Giả sử biết w i ⇒ ++++= +=++= ++== + + 6)22( ),(),2,2( )2,2(),,( 43211 31423 121 kkkkww kwthfkkwhthfk kwhthfkwthfk ii iiii iiii Btoán Côsi: Tìm y(t) VÍ DỤ PHƯƠNG PHÁP EULER Sơ đồ Euler: Bằng p/pháp Euler, giải bài toán Côsi với n = 3 đoạn chia: So sánh nghiệm xấp xỉ với nghiệm g(t) = (t+1) 2 – 0.5e t . Từ đó tính xấp xỉ tích phân bằng c/t hình thang: = ≤≤+−= 5.0)0( 10,1' 2 y ttyy ∫ = 1 0 )( dttyI Giải: f(t,y) = y – t 2 + 1 5.0,0 00 == wt 11 , wt 22 , wt 33 , wt h = (b–a)/n = 1/3 +−+=+= = + )1(2.0),( 5.0 2 1 0 iiiiiii twwwthfww w KẾT QUẢ PHƯƠNG PHÁP EULER Bảng kết quả: Tính gần đúng tích phân với công thức hình thang i t i w i g i = g(t i ) | g i - w i | 0 0 0.5 0.5 0 1 1/3 2 2/3 3 1. ( ) ( ) ( ) ( ) [ ] [ ] 32103210 1 0 22 2 22 2 )( wwww h tytytyty h dtty +++≈+++≈ ∫ 3528807.1= VÍ DỤ EULER CẢI TIẾN Tính y(1.) của bt Côsi sau bằng SĐ Euler cải tiến với h = 0.5: = ≤≤+−= 5.0)0( 10,1' 2 y ttyy i t i w i k 1 k 2 0 0.0 0.5 1 0.5 2 1.0 5.0,1),( 2 =+−= htyytf 5.0,0 0 == α t ?,5.0 11 == wt 22 , wt 2 ),(,),( 21 1121 kk wwkwhthfkwthfk iiiiii + +=→++== + 0.75 1.0 1.375 1.0625 2.515625 1.21875 VÍ DUÏ RUNGE – KUTTA Tính y(1.) baèng Runge – Kutta vôùi h = 0.5 = +−= 5.0)0( 1' 2 y tyy i t i w i k 1 k 2 k 3 k 4 0 0.0 0.5 1 0.5 2 1.0 +++ += ++=++= ++== + 6 22 ),(,)2,2( ) 2 , 2 (,),( 4321 1 3423 1 21 kkkk ww kwhthfkkwhthfk k w h thfkwthfk ii iiii iiii Runge – Kutta 4: w i → w i+1 75.0 90625.0 9451325.0 0976563.1 4251302.1 0875651.1 2032064.1 2331167.1 3286235.1 6396027.2 HỆ PHƯƠNG TRÌNH VI PHÂN THƯỜNG Bài toán Côsi : Tìm hai hàm u 1 = u 1 (t), u 2 = u 2 (t) thoả ≤≤= ≤≤= btauutf dt du btauutf dt du ),,,( ),,,( 212 2 211 1 = = 22 11 )( )( & α α au au đầukiệnĐiều Ký hiệu: ?,,0),(),( 2211 i 2 i 1 0 2 0 1 wwtínhwwBiết⇒≥≈≈ ituwtuw i i i i 0 ta = hat += 1 hat 2 2 += 21 , αα ( ) ( ) ?, 1211 =tutu ?, 2 2 2 1 =ww Chia [a, b] thành đoạn bằng nhau: Phân hoạch & rời rạc hoá 2 0 21 0 1 , αα == ww 1 2 1 1 , ww [...]... f 2 ( t ,u1 ,u 2 ) 2 2t α1 = 1 w10 = 1 ⇒ ⇒ 0 α 2 = 1 w2 = 1 1 w1 = 1 + 0.5 f1 ( 0,1,1) = w1 = 1 + 0.5 f 2 ( 0,1,1) = 2 Á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): y" = f ( t , y, y ') , t ≥ a y ( a ) = α1 , y ' ( a ) = α 2 Đưa về bài toán Côsi cấp 1: Đổi biến u1(t)= y(t),... xk pk qk rk akk ak,k+1 ak-1,k bk yk 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 y" = −3 y '+2 y + 2 x + 3 y (0) = 2, y (1) = 1 h = 0.2 ⇒ n = 5 ⇒ 6 điểm chia ⇒ Hệ phương trình 4 ẩn Ma trận cấp 4: Chéo chính akk – 4 phần tử; Chéo trên ak, k+1: 3 i 1 xi 0.2 2 0.4 3 0.6 4 0.8 pi qi ri...MINH HOẠ Ý TƯỞNG Xét bài toán Côsi với hệ phương trình vi phân thường: u1 ' = 3u1 + 2u2 − ( 2t 2 + 1) e 2t , u1 ( 0 ) = 1 u2 ' = 4u1 + u2 + ( t 2 + 2t − 4 ) e 2t , u2 ( 0 ) = 1 Với bước chia h = 0.5, tính xấp xỉ nghiệm u1, u2 tại t = 0.5; 1 So sánh... bướ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: x0 = 0 y ( 0 ) = y0 = −1 x1 = 1 3 1 = y = ? y 1 3 x2 = 2 3 x3 = 1 2 = y = ? y 2 3 y (1) = y3 = 0 PHƯƠNG PHÁP SAI PHÂN HỮU HẠN - y" = p ( x) y '+ q ( x) y + r ( x), a ≤ x ≤ b ( *) BT biên tuyến tính y( a ) = α , y( b ) = β Chia [a, b]... t0 , w10 , w2 ) = α 2 + hf 2 ( a, α1 , α 2 ) VÍ DỤ Với h = 0.1, tính xấp xỉ giá trò y(0.2), y’(0.2) của nghiệm bài toán sau bằng phương pháp Euler: y"−2 y '+2 y = e 2t sin t , t ≥ 0 y (0) = −0.4, y ' (0) = −0.6 Đổi biến đưa về bài toán Côsi cấp 1: u1 = y(t), u2 = y’(t) ⇒ u1 ' = u2 = f1 ( t , u1 , u2 ) & u1 ( 0 ) = −0.4 , u2... w2 = −0.6 w2 = w2 + hf 2 ( t0 , w10 , w2 ) = −0.6 + 0.1 f 2 ( 0,−0.4,−0.6 ) 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 y ' ' = f ( x, y, y ' ), a ≤ x ≤ b y (a ) = α , y ( b ) = β Hay gặp: Bài toán biên tuyến tính cấp 2 y" = p ( x) y '+ q ( x) y + r ( x), a ≤ x ≤ b y( a ) = α , y( b ) = β MINH HOẠ... −3 −3 −3 −3 2 2 2 2 3.4 3.8 4.2 4.6 − 2.08 − 2.08 − 2.08 − 2.08 1.3 1.3 1.3 ai-1,i bi 0.7 0.7 0.7 − 1.264 0.152 0.168 − 1.116 KẾT QUẢ - Giải hệ bằng phép khử Gauss (làm tròn 3 chữ số lẻ): 0 0 2.08 − 1.3 − 0.7 2.08 − 1.3 0 [ A b] = − 0.7 2.08 − 1.3 0 0 0 − 0.7 2.08 0 0 1 − 0.625 0 1.642 − 1.3 0 → [ A b] = − 0.7 2.08 − 1.3