Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
1,25 MB
Nội dung
Trường Đại học Bách khoa – ĐHQG-HCM CHƯƠNG GIẢI GẦN ĐÚNG PHƯƠNG TRÌNH VI PHÂN TS Lê Thanh Long ltlong@hcmut.edu.vn Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM Nội dung 4.1 Đại cương 4.2 Phương pháp Euler 4.3 Phương pháp Euler cải tiến 4.4 Phương pháp Runge - Kutta Bộ mơn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.1 Đại cương Hình 4.1: Dao động lắc đơn Xét toán dao động lắc đơn xác định phương trình vi phân bậc d 2 g sin dt l : Góc tạo lắc trục thẳng đứng g: Hằng số hấp dẫn l: Chiều dài lắc Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.1 Đại cương ≈ , tốn trở thành tuyến tính: Với giá trị , ta xấp xỉ d g 0 dt l Với tốn ta giải phương pháp quen thuộc Tuy nhiên giá trị lớn, ta xem ≈ Để tìm nghiệm cho tốn này, ta cần sử dụng phương pháp xấp xỉ nghiệm Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.1 Đại cương Bài toán Cauchy y '(t ) f (t , y (t )) y (a) a t b (1) Với y = y(t) hàm cần tìm, khả vi đoạn [a,b], y0 giá trị ban đầu cho trước y(t) t = a Với tốn Cauchy (1) ta tìm nghiệm số phương trình đơn giản Đối với trường hợp f(x,y) có dạng khơng có phương pháp giải Trường hợp tìm nghiệm toán Cauchy (1) phức tạp nên dùng Việc tìm phương pháp giải tốn Cauchy có vai trị quan trọng thực tế Bộ mơn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.2 Phương pháp Euler Để tìm nghiệm gần tốn (1), ta chia đoạn [a,b] thành n đoạn ba h n Khi điểm nút = , = + ℎ, = 0,1,2, … , , = Giả sử y(t) nghiệm toán (1) có đạo hàm đến cấp liên tục đoạn [a,b] Khi với k = 1,2,…,n-1 theo cơng thức khai triển Taylor đoạn [ , ]: (tk 1 tk ) y (tk 1 ) y (tk ) y '(tk )(tk 1 tk ) y "( k ) Với: k (tk , tk 1 ) Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.2 Phương pháp Euler Vì y = y(t) nghiệm phương trình (1) ℎ = nên ta có: y (tk 1 ) y (tk ) h f (tk , yk ) Bằng cách bỏ phần dư, ta xấp xỉ ta có cơng thức Euler − h y "( k ) ≈ ( ) với k = 1,2,…n, y0 yk 1 yk hf (tk , yk ), Với k = 0,1,2,…,n-1 Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.2 Phương pháp Euler Hình 4.2: Ý nghĩa hình học phương pháp Euler Từ ( , ) = ( , ) thuộc đường cong y = y(t), kẻ tiếp tuyến với đường thẳng cong (có hệ số góc y’(a) = f(a, )) Đường tiếp tuyến cắt t = giá trị gần y( ) Tại ( , ), ta kẻ đường thẳng với hệ số góc f( , ) cắt t = giá trị gần y( ) Bộ mơn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.2 Phương pháp Euler Ví dụ 4.1: Sử dụng phương pháp Euler để xấp xỉ nghiệm toán Cauchy: y '(t) y t 1; t y (0) 0,5 Với h = 0,2 Tại điểm nút chia, so sánh giá trị gần với giá trị xác, biết nghiệm xác tốn = ( + 1) −0,5 Giải = 0,2 ; = 0,5 Cơng thức tính nghiệm gần = + ℎ( − + 1) Bấm máy: = + 0.2 CALC Y=0.5=,X=0= Y=,X=0.2= Bộ mơn Thiết kế máy - Khoa Cơ khí − +1 : = Với k = 0,1,…,9 + 0.2 Trường Đại học Bách khoa – ĐHQG-HCM 4.2 Phương pháp Euler Ví dụ 4.1: Kết Bảng 4.1: Kết Ví dụ 4.1 Bộ mơn Thiết kế máy - Khoa Cơ khí 10 Trường Đại học Bách khoa – ĐHQG-HCM 4.2 Phương pháp Euler Sai số công thức Euler Giả sử f hàm liên tục thỏa điều kiện f (t , y1 ) f (t , y2 ) L y1 y2 Với số L > tồn M thỏa y "(t ) M Với ∈ [ , ] Khi với y(t) nghiệm xác tốn giá trị đầu = , , ≤ ≤ , = , ,…, nghiệm xấp xỉ toán cho cơng thức Euler, với k=0,1,…,n hM L ( tk a ) e y (tk ) yk 1 2L 11 Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.3 Phương pháp Euler cải tiến Công thức Heun Trong công thức Euler, thay ( , ta công thức Heun ) , ( , ) f (tk , yk ) f (tk 1 , yk 1 ) y (tk 1 ) yk 1 yk h Với k = 0,1,2,…,n-1 Việc tính tốn theo cơng thức Euler cải tiến phức tạp vế chứa ẩn cần tìm Để đơn giản ta thay vế phải yk hf (tk , yk ) Lúc ta có cơng thức: y (tk 1 ) yk 1 yk h = 0,1,2, … , − Bộ mơn Thiết kế máy - Khoa Cơ khí f (tk , yk ) f (tk 1 , yk hf (tk , yk )) 12 Trường Đại học Bách khoa – ĐHQG-HCM 4.3 Phương pháp Euler cải tiến Cơng thức Heun Ví dụ 4.2 Sử dụng phương pháp Euler cải tiến để xấp xỉ nghiệm toán Cauchy y '(t ) y t 1, t y (0) 0,5 Với h = 0,2 Tại điểm nút, so sánh giá trị gần với giá trị xác cho = ( + 1) −0,5 13 Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.3 Phương pháp Euler cải tiến Cơng thức Heun Ví dụ 4.2 Giải: ℎ = 0,2; = 0,5 Cơng thức tính nghiệm gần là: f (tk , yk ) f (tk 1 , yk hf (tk , yk )) y (t k 1 ) yk 1 yk h Với k = 0,1,…,9 = + 0.1 − +1 + + 0.2 − +1 − + 0.2 +1 : = + 0.2 CALC Y=0.5=X=0= Y=,X=0.2 14 Bộ mơn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.3 Phương pháp Euler cải tiến Ví dụ 4.2: Kết 15 Bộ mơn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.4 Phương pháp Runge - Kutta Công thức Runge – Kutta bậc Hai nhà toán học người Đức Runge Kutta đề xuất phương pháp để nâng cao độ xác nghiệm tốn phương trình vi phân Ý tưởng phương pháp tăng độ xác giá trị điểm + ℎ, ta dựa vào vài điểm trung gian đoạn [ , + ℎ] điểm + ℎ/2 Công thức: h h y (tk 1 ) y (tk ) hf (tk , y (tk ) f (tk , y (tk )) 2 16 Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.4 Phương pháp Runge - Kutta Công thức Runge – Kutta bậc Ta xây dựng phương pháp Runge – Kutta với bậc cao, phổ biến bậc k k k k y y ( t h ) y ( K K K K k k 4) k 1 k K hf (t k , yk ) K1k h k K hf (tk , yk ) 2 k K h K 3k hf (tk , yk ) 2 K 4k hf (tk h, yk K 3k ) 17 Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.4 Phương pháp Runge - Kutta Công thức Runge – Kutta bậc Ví dụ 4.3: Sử dụng phương pháp Runge – Kutta bậc để xấp xỉ nghiệm toán Cauchy y '( x) y x 1, x y (0) 0,5 Với n = 10 Tại điểm nút chia, so sánh giá trị gần với giá trị xác, biết nghiệm xác tốn = ( + 1) −0,5 18 Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4.4 Phương pháp Runge - Kutta Công thức Runge – Kutta bậc Ví dụ 4.3: Giải Với n = 10 h = 0,2; = 0,2 ; = 0,5 Ta có: K1k hf (tk , yk ) 0, 2( yk 0, 04k 1), k k K K h h k 1 K hf tk , yk tk 1 , h yk 2 2 k k K K h h k 2 K hf tk , yk tk 1 , h yk 2 2 K 4k hf (tk h, yk K 3k ) h[ yk K 3k (t k h) 1] Công thức tính: yk 1 yk ( K1k K 2k K 3k K 4k ) Với k = 0,1,…,9 Bộ môn Thiết kế máy - Khoa Cơ khí 19 Trường Đại học Bách khoa – ĐHQG-HCM 4.4 Phương pháp Runge - Kutta Công thức Runge – Kutta bậc Ví dụ 4.3: Bấm máy 0.2( − + 1) Tính : CALC X = 0, Y = 0.5 ⇒ Tính : CALC X = + 0.2 ÷ 2, Y = 0.5 + A ÷ ⇒ ℎ − − : CALC X = + 0.2 ÷ 2, Y = 0.5 + B ÷ ⇒ ℎ − − : CALC X = + 0.2, Y = 0.5 + C ⇒ ℎ − − y (0.2) y1 y0 ( K1 K 20 K 30 K 40 ) 0,5 ( A B 2C D ) 0,8292933 Tính Tính Shift – STO - F Bộ mơn Thiết kế máy - Khoa Cơ khí ℎ − − 20 Trường Đại học Bách khoa – ĐHQG-HCM 4.4 Phương pháp Runge - Kutta Công thức Runge – Kutta bậc Ví dụ 4.3: Kết 21 Bộ mơn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM Bài tập 1: Cho toán Cauchy Sử dụng công thức Runge-Kutta cấp xấp xỉ y(1,2) với bước h = 0,2 y ' x x sin( x y ), x y (1) 2, 22 Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM Bài tập 1: Giải Đặt f(X,Y)=2X+Xsin(X+2Y) = 1; =2,4 Nhập vào máy tính hàm h.f(X,Y) “0.2(2X+Xsin(X+2Y))” “CALC” Ta có: = + (A + 2B + 2C + D) ÷ Đáp số: y(1,2)=2,8449 23 Bộ môn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 24 Bộ mơn Thiết kế máy - Khoa Cơ khí ... dung 4. 1 Đại cương 4. 2 Phương pháp Euler 4. 3 Phương pháp Euler cải tiến 4. 4 Phương pháp Runge - Kutta Bộ mơn Thiết kế máy - Khoa Cơ khí Trường Đại học Bách khoa – ĐHQG-HCM 4. 1 Đại cương Hình 4. 1:... ta tìm nghiệm số phương trình đơn giản Đối với trường hợp f(x,y) có dạng khơng có phương pháp giải Trường hợp tìm nghiệm tốn Cauchy (1) q phức tạp nên dùng Vi? ??c tìm phương pháp giải tốn Cauchy... Đại học Bách khoa – ĐHQG-HCM 4. 2 Phương pháp Euler Ví dụ 4. 1: Kết Bảng 4. 1: Kết Ví dụ 4. 1 Bộ môn Thiết kế máy - Khoa Cơ khí 10 Trường Đại học Bách khoa – ĐHQG-HCM 4. 2 Phương pháp Euler Sai số công