Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 81 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
81
Dung lượng
183,5 KB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN Phan Quang Tuyển MỘT SỐ THUẬT TOÁN RUNGE - KUTTA VỚI BƯỚC LƯỚI THAY ĐỔI GIẢI MỘT LỚP PHƯƠNG TRÌNH VI PHÂN ĐẠI SỐ LUẬN VĂN THẠC SĨ KHOA HỌC Hà Nội - 2019 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN Phan Quang Tuyển MỘT SỐ THUẬT TOÁN RUNGE KUTTA VỚI BƯỚC LƯỚI THAY ĐỔI GIẢI MỘT LỚP PHƯƠNG TRÌNH VI PHÂN ĐẠI SỐ Chuyên ngành: Toán ứng dụng Mã số: 8460112.01 LUẬN VĂN THẠC SĨ KHOA HỌC NGƯỜI HƯỚNG DẪN KHOA HỌC PGS TSKH Vũ Hoàng Linh Hà Nội - 2019 LỜI CẢM ƠN Trước trình bày nội dung luận văn, tơi xin bày tỏ lịng biết ơn sâu sắc tới thầy giáo PGS TSKH Vũ Hoàng Linh, người trực tiếp hướng dẫn, dạy để tơi hồn thành luận văn Tơi xin bày tỏ lòng biết ơn chân thành đến Khoa Tốn- Cơ- Tin học, Phịng Sau đại học, Trường Đại học Khoa học Tự nhiên Hà Nội Đại học Quốc gia Hà Nội, quý thầy cô giáo tham gia giảng dạy khóa cao học 20172019 dạy bảo tơi tận tình suốt q trình học tập trường Tôi xin gửi lời cảm ơn chân thành tới gia đình, bạn bè, đồng nghiệp Khoa khoa học bản, Trường Sĩ quan Pháo binh, nơi công tác, hỗ trợ, động viên tạo điều kiện cho học tập, nghiên cứu thực luận văn Cuối cùng, xin chân thành cảm ơn TS Nguyễn Duy Trường, giảng viên trường Sĩ quan lục quân 1, toàn thể bạn bè, anh chị em lớp cao học 2017-2019 động viên giúp đỡ cho tơi q trình thực luận văn Hà Nội, ngày 28 tháng 11 năm 2019 Học viên Phan Quang Tuyển Mục lục Giới thiệu 1.1 Phương trình vi phân đại số 1.1.1 1.1.2 1.2 Phương pháp Runge-Kutta cho p 1.2.1 1.2.2 1.3 Đánh giá sai số lựa chọn bước 1.3.1 1.3.2 Phương pháp Runge-Kutta nửa giải phương trình vi phân đại số 2.1 Trường hợp phương trình vi phân 2.2 Trường hợp phương trình vi phân 2.2.1 2.2.2 2.3 Trường hợp phương trình vi phân cấu trúc 2.3.1 2.3.2 2.3.3 2.3.4 Phương pháp Runge-Kutta với bước lưới thay đổi giải phương trình vi phân đại số 3.1 Phương pháp nhúng 3.2 Thử nghiệm số Kết luận Tài liệu tham khảo DANH MỤC KÝ HIỆU R Tập hợp số tự nhiên Tập số thực C Tập số phức N I m m R , (C ) m ,m R p m C (I, R ) p m ,m C (I, R Ik rank(A) Const ) k O(h ) Điều phải chứng minh DANH MỤC VIẾT TẮT BTGTBĐ Bài toán giá trị ban đầu ƠĐTĐ Ổn định tuyệt đối PTVPT Phương trình vi phân thường PTVPĐS Phương trình vi phân đại số RK HERK Phương pháp Runge-Kutta Phương pháp Runge-Kutta nửa (Half explicit Runge-Kutta) IRK HEOL Phương pháp Runge-Kutta ẩn (Implicit Runge-Kutta) Phương pháp chân nửa (Half explicit One - leg ) HELM Phương pháp đa bước nửa (Half explicit linear multistep) LỜI MỞ ĐẦU Trong thực tế, gặp nhiều toán lĩnh vực khoa học kĩ thuật học, hóa học, hệ mạch điện, lý thuyết điều khiển, động lực học chất lỏng, v.v mơ hình hóa dạng hệ hỗn hợp phương trình vi phân kết hợp với ràng buộc đại số Các hệ gọi phương trình vi phân đại số (PTVPĐS, DAEs) PTVPĐS có dạng tổng quát F(t, x, x ) = 0, m m n t I = [0, T], F : I R R ! R , m, n N Nếu ma trận Jacobi F theo x không suy biến, theo định lý hàm ẩn, từ phương trình (0.0.1) ta giải x = f (t, x), dạng phương trình vi phân thường (PTVPT) Trong trường hợp tổng quát, ma trận Jacobi F theo x suy biến Khi đó, có PTVPĐS, hay cịn gọi phương trình vi phân ẩn Ví dụ 0.0.1 [5, Example 1.3 ]Xét lắc đơn có khối lượng m chiều dài l Đặt hệ trục tọa độ Đề Oxy hình vẽ: trọng trường, với ràng buộc x L= với tham số Lagrange l Phương trình chuyển động lắc có dạng với biến q = x, y, l, nghĩa ta có: mx 00 + 2lx = 0, my00 x +y 0 Bằng cách đặt biến u = x , v = y , phương trình (0.0.2) trở thành x y 0 mu 0 mv + mg + 2ly = 0, 2 x +y Đây PTVPĐS có số với biến x, y, u, v, l Giả sử, ta giải toán giá trị ban đầu (BTGTBĐ) (0.0.1) với điều kiện đầu m x(0) = x0, x0 R Sự tồn nghiệm BTGTBĐ (0.0.1) phụ thuộc vào điều kiện ban đầu x0 Trong ví dụ (0.0.1) để hệ (0.0.3) có nghiệm điều kiện ta cần có 2 x0 + y = l0 Không vậy, điều kiện ban đầu PTVPĐS cịn liên quan đến đạo hàm ràng buộc thời điểm ban đầu, xem [3] Các PTVPĐS xuất từ toán thực tế thường hệ phức tạp, khơng có hy vọng giải đúng, nhiều trường hợp cần biết thông tin nghiệm số nghiệm gần với mức độ xác định Việc nghiên cứu giải số cho PTVPT phát triển từ lâu, việc nghiên cứu lý thuyết phương pháp số PTVPĐS phát triển mạnh khoảng 30 năm trở lại Các phương pháp số cho PTVPĐS mở rộng từ phương pháp số cho PTVPT Tuy nhiên, có nhiều ví dụ cho thấy phương pháp quen thuộc giải PTVPT áp dụng cho PTVPĐS gặp khó khăn như: lời giải số không ổn định chí khơng tồn tại, xảy tượng giảm cấp xác, v.v Trong năm cuối kỉ 20 đầu kỉ 21, nghiên cứu tập trung vào PTVPĐS dạng ẩn Nhóm tác giả P Kunkel V Mehrmann có nghiên cứu cách có hệ thống PTVPĐS dạng (0.0.1) có số tùy ý Các tác giả nghiên cứu số lạ toán đề xuất thuật toán đưa tốn PTVPĐS dạng (0.0.1) dạng tắc khơng có tính lạ, sau áp dụng cơng thức rời rạc hóa để thu nghiệm số tốn (0.0.1) Gần đây, lớp PTVPĐS thu hút quan tâm nhà toán học PTVPĐS ẩn khơng có tính lạ có dạng f (t, x, x ) = 0, (0.0.4) g(t, x) = 0, 8t [t0, T] Khơng tính tổng qt, ta giả sử t0 = f : I R m m m R !R , m m g : I R ! R , (m = m1 + m2) hàm đủ trơn có đạo hàm riêng bị chặn thỏa mãn (, ,x f t x ,x) Tác giả V.H Linh V Mehrmann [7] nghiên cứu tính chất toán xg x ( t (0.0.4) đề xuất phương pháp chân nửa (HEOL), phương pháp đa bước nửa (HELM), phương pháp Runge-Kutta nửa (HERK) để giải hiệu PTVPĐS (0.0.4) khơng có tính cương Khi nghiên cứu lớp PTVPĐS có cấu trúc dạng f (t, x, E(t)x ) = 0, g(t, x) = 0, đoạn [0, T], E C (I, R R m m !R , g = g(t, u) : I m m ,m m R !R ) hàm f = f (t, u, v) : I (0.0.6) R m , (m, m1, m2 N, m = m1 + m2) đủ trơn 10 Ki = Các nghiệm xấp xỉ Ui, Ki 1, i = 2, , s cặp phương pháp nhúng RK tính nấc s Cuối cùng, ta xác định nghiệm xn+1: E(tn+1)xn+1 = E(tn)U1 + h åi =1 biKi, dựa vào hệ: = h f T(s), Us, Ks Es Us , = g(tn+1, xn+1), Ks = s nghiệm yn+1: E(tn+1)yn+1 = E(tn)U1 + h åi =1 diKi xác định từ hệ phương trình đại số = h f T(s), Us, Ks Es Us , = g(tn+1, yn+1), Ks = So sánh jyn+1 xn+1j TOL Nếu bất đẳng thức ta giữ bước lưới h, tính lại x n+1, yn+1 với xn ! yn+1, tăng k ! k + 1, t = t + h Nếu t + h > t f h = t f t Nếu bất đẳng thức không thỏa mãn bước h thay ˜ bước : h ˜ h=h 52 Tiếp tục q trình tính tốn dừng lại, ta in thời gian tính tốn, số bước k, sai số tính tốn nghiệm phương pháp, sai số nghiệm thực so với nghiệm xác, vẽ đồ bước lưới h theo thời gian v.v Ta thấy PTVPĐS khơng có tính lạ có cấu trúc dạng biến đổi (2.3.3) qua phép đổi biến x(t) = Q(t)y(t) đưa dạng PTVPĐS nửa số (2.3.6) Khi đó, áp dụng phương pháp nhúng RK có cấp p nhúng phương pháp RK có cấp p + tính ổn định hội tụ bảo tồn Ta có hệ sau: Mệnh đề 3.1.1 Phương pháp nhúng với cặp phương pháp RK cấp p cấp p + 1, kết hợp với phương pháp Runge-Kutta nửa (HERK) giải PTVPĐS khơng có tính lạ có cấu trúc có cấp hội tụ p Chứng minh Mệnh đề suy trực tiếp từ Định lí 2.1.1, Định lí 2.3.1 Bổ đề 2.3.2 3.2 Thử nghiệm số Ví dụ 3.2.1 Xét BTGTBĐ cho phương trình thử PTVPĐS h với số giá trị tham số đặc biệt l w đoạn [0, 5] PTVPĐS khơng có tính lạ có cấu trúc, cho giá trị ban đầu x 1(0) = 1, x2(0) = 1, nghiệm xác x= Sử dụng phương pháp nhúng kết hợp phương pháp HERK áp dụng cho phương trình thử PTVPĐS viết dạng khơng có tính lạ 53 a) Sử dụng phương pháp nhúng với cặp Fehlberg4(5) Do cặp phương pháp RK ban đầu có cấp xác 4, nên xảy tượng giảm cấp xác Kiểm tra thử nghiệm số với phương pháp HERK cấp cấp cho phương trình thử PTVPĐS với bước lưới h Kí hiệu phương phương pháp RK Fehlberg cấp cấp RKF4 RKF5 Chúng ta thấy cặp phương pháp RK Bảng 3.1: Kiểm tra cấp xác phương pháp RKF4 với l = Bảng 3.2: Kiểm tra cấp xác phương pháp RKF5 với l = Fehlberg có cấp cấp bị giảm cấp xác xuống cịn cấp cấp Do đó, áp dụng phương pháp nhúng RK Fehlberg trường hợp ý nghĩa sử dụng chi phí tính tốn lớn cho phương pháp RK cấp cấp mà kết thu không tốt sử dụng phương pháp HERK với bước lưới h 54 b) Sử dụng phương pháp nhúng với cặp Dormand-Prince4(5) Kiểm tra thử nghiệm số với phương pháp HERK cấp cấp cho phương trình thử PTVPĐS với bước lưới h Kí hiệu phương phương pháp RK Dormand-Prince cấp cấp RKDP4 RKDP5 Qua thử nghiệm số, thấy cặp phương pháp RK Dormand- Bảng 3.3: Kiểm tra cấp xác phương pháp RKDP4 với l = Bảng 3.4: Kiểm tra cấp xác phương pháp RKDP5 với l = Prince có cấp cấp bị giảm cấp xác xuống cịn cấp cấp tương ứng Kí hiệu phương pháp nhúng sử dụng cặp Dormand-Prince4(5) sHERKDP4(5), sai số đánh giá xi, (i = 1, 2) sai số nghiệm xấp xỉ dùng 55 h=0.02 h h/2 h/4 h/8 h/16 h/32 h/64 h/128 N 10 20 40 80 16 32 Bảng 3.6: Thử nghiệm số phương pháp sHERK4 với l = Sử dụng phương pháp nhúng kết hợp với phương pháp HERK áp dụng cho phương trình thử PTVPĐS viết dạng khơng có tính lạ có cấu trúc, với bước ban đầu h = 0.1, sai số tương đối tol = 10 Kí hiệu phương pháp nhúng sử dụng cặp Fehlberg 4(5) HERKF4(5), phương pháp nhúng sử dụng cặp Dormand-Prince4(5) HERKDP4(5) Ta có bảng so sánh hai phương pháp: Bảng 3.7: So sánh phương pháp HERKF4(5) HERKDP4(5) Ta thấy việc sử dụng phương pháp nhúng sử dụng cặp DormandPrince4(5) cho số bước Đúng phân tích phương pháp nhúng cho PTVPT phương pháp nhúng sử dụng cặp Dormand-Prince4(5) có sai số thực tế nghiệm x i, i = 1, sai số đánh giá nghiệm xấp xỉ phương pháp RK phương pháp nhúng nhỏ so với phương pháp nhúng sử dụng cặp Fehlberg 4(5) Tuy nhiên, khác biệt hai phương pháp không nhiều, hai phương pháp có cấp hội tụ 4, (Mệnh đề 3.1.1) 57 phương pháp cho kết tốt Sử dụng phương pháp HERK với bước lưới h với phương pháp RK ban đầu phương pháp RK cổ điển nấc, kí hiệu HERK4 h=0.1 h h/2 h/4 h/8 h/16 h/32 N 50 100 200 400 800 1600 Bảng 3.8: Thử nghiệm số phương pháp HERK4 với l = Dựa vào thử nghiệm số cho bảng (3.8) ta thấy phương pháp HERK4 giữ cấp xác Với sai số cho trước tol = 10 , phương pháp HERK4 cần số bước 200 với bước lưới h = 0.025 nhỏ, phương pháp HERKF4(5) cần số bước 44, phương pháp HERKDP4(5) cần số bước 41 Như vậy, phương pháp HERKF4(5) phương pháp HERKDP4(5) cho kết tốt so với phương pháp HERK4 với sai số cho trước Ví dụ 3.2.2 Chúng ta xét PTVPĐS phi tuyến t 2t t 2t x1(x10 + tx20) = x1x2e + e + t cos te e sin t, t = e x1 (3.2.1) x2 + sin t 1, T với t [0, 5] với điều kiện ban đầu x(0) = [1 0] Dễ dàng ta kiểm tra (3.2.1) PTVPĐS khơng có tính lạ Thật vậy, ma trận Jacobi h có định thức x1( T t x(0) = [1 0] PTVPĐS (3.2.1) có nghiệm x1 = e , x2 = sin t 59 Sử dụng phương pháp nhúng kết hợp với phương pháp HERK cho toán PTVPĐS (3.2.1) viết dạng khơng có tính lạ a) Sử dụng phương pháp nhúng với cặp Fehlberg4(5) h=0.1 h/2 h/4 h/8 h/16 h/32 Bảng 3.9: Kiểm tra cấp xác phương pháp RKF4 h=0.1 h/2 h/4 h/8 h/16 h/32 Bảng 3.10: Kiểm tra cấp xác phương pháp RKF5 Chúng ta thấy cặp phương pháp RK Fehlberg có cấp cấp bị giảm cấp xác xuống cịn cấp cấp Do đó, áp dụng phương pháp nhúng RK Fehlberg trường hợp khơng có ý nghĩa sử dụng chi phí tính tốn lớn cho phương pháp RK cấp cấp mà kết thu không tốt sử dụng phương pháp HERK với bước lưới h b) Sử dụng phương pháp nhúng với cặp Dormand-Prince4(5) Kiểm tra thử nghiệm số với phương pháp HERK cấp cấp cho phương trình thử PTVPĐS với bước lưới h Qua thử nghiệm số, thấy cặp phương pháp RK Dormand-Prince có cấp cấp bị giảm cấp xác xuống cấp cấp tương ứng 60 h=0.1 h/2 h/4 h/8 h/16 h/32 Bảng 3.11: Kiểm tra cấp xác phương pháp RKDP4 h=0.025 h/2 h/4 h/8 h/16 h/32 Bảng 3.12: Kiểm tra cấp xác phương pháp RKDP5 Sử dụng phương pháp nhúng với cặp Dormand-Prince4(5): số bước (N) Sai số đánh giá x1 Sai số đánh giá x2 Sai số thực tế x1 Sai số thực tế x2 Bảng 3.13: Phương pháp sHERKDP4(5) với tol = 10 , bước lưới ban đầu h = 0.1 61 Kết luận Trong luận văn, tơi trình bày phương pháp Runge-Kutta nửa áp dụng cho lớp PTVPĐS dạng nửa hiện, khơng có tính lạ, khơng có tính lạ có cấu trúc Từ đưa phương pháp nhúng cho phương pháp HERK thực thử nghiệm số, có số kết đánh giá sai số, số bước bước lưới h để thấy được: Khi áp dụng phương pháp nhúng cho PTVPĐS dạng khơng có tính lạ với cấp phương pháp RK ban đầu p > xảy tượng giảm cấp xác Qua thử nghiệm số, ta thấy sử dụng phương pháp nhúng với cặp Fehlberg cấp cấp bị giảm cấp xác xuống cấp cấp tương ứng Do đó, ta khơng sử dụng phương pháp nhúng với cặp Fehlberg4(5) trường hợp Phương pháp nhúng với cặp Dormand-Prince cấp cấp bị giảm cấp xác xuống cịn cấp cấp tương ứng Tuy nhiên, sử dụng phương pháp nhúng với cặp Dormand-Prince4(5) cho ta số bước so với việc áp dụng phương pháp sHERK4 với bước lưới h với sai số cho trước Khi thực phương pháp nhúng cho PTVPĐS khơng có tính lạ cấu trúc cấp xác phương pháp RK bảo tồn Do đó, với sai số cho trước phương pháp nhúng sử dụng cặp Fehlberg4(5) phương pháp nhúng sử dụng cặp Dormand-Price4(5) cho số bước nhỏ nhiều so với phương pháp HERK4 với bước lưới h 65 Tài liệu tham khảo Tài liệu tiếng Việt [1] Phạm Kỳ Anh (2005), Giải tích số, NXB Đại học Quốc gia Hà Nội [2] Nguyễn Duy Trường (2019), Một số phương pháp hiệu giải phương trình vi phân đại số phi tuyến có cấu trúc, Luận án tiến sĩ tốn học, Đại học khoa học tự nhiên - ĐHQG Hà Nội Tài liệu tiếng Anh [3] U Ascher and L Petzold (1998), Computer methods for Ordinary differential equations and differential - algebraic equations, SIAM, Philadenphia [4] V.Brasey, E Hairer, Half-explicit Runge-Kutta methods for differential- algebraic systems of index 2, SIAM J Numer Anal., 30 (1993), pp 538-552 [5] P Kunkel and V Mehrmann (2006) Differential - Algebraic Equations Analysis and Numerical Solution , European Mathematical Society, Zurich [6] P Kunkel and V Mehrmann, Stability properties of differential-algebraic equa-tions and spin-stabilized discretization, Electron Trans Numer Anal., 26 (2007), pp 385-420 [7] V.H Linh and V Mehrmann (2014), Efficient integration of strangeness- free non-stiff differential-algebraic equations by half-explicit methods, J Comput Appl Math., 262: 346-360 66 [8] V.H Linh and N.D Truong (2018), Runge - Kutta methods revisited for a class of structured strangeness-free differential-algebraic equations, Electr Trans Num Anal., 48: 131-135 67 ...ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN Phan Quang Tuyển MỘT SỐ THUẬT TOÁN RUNGE KUTTA VỚI BƯỚC LƯỚI THAY ĐỔI GIẢI MỘT LỚP PHƯƠNG TRÌNH VI PHÂN ĐẠI SỐ Chun ngành:... sai số lựa chọn bước 1.3.1 1.3.2 Phương pháp Runge- Kutta nửa giải phương trình vi phân đại số 2.1 Trường hợp phương trình vi phân 2.2 Trường hợp phương trình vi phân 2.2.1 2.2.2 2.3 Trường hợp phương. .. 2.3 Trường hợp phương trình vi phân cấu trúc 2.3.1 2.3.2 2.3.3 2.3.4 Phương pháp Runge- Kutta với bước lưới thay đổi giải phương trình vi phân đại số 3.1 Phương pháp nhúng