Phương pháp Runge - kutta giải phương trình vi phân thường

77 893 0
Phương pháp Runge - kutta giải phương trình vi phân thường

Đ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

3 Mở đầu 1. Lí do chọn đề tài Nhiều bài toán trong khoa học và kĩ thuật có thể thiết lập được công thức theo các phương trình vi phân. Như các phương trình của tên lửa đạn đạo, lý thuyết vệ tinh nhân tạo, các phương trình của mạng lưới điện, của sự uốn cong xà, sự ổn định của thiết bị bay, lý thuyết giao động Tuy nhiên đại đa số các phương trình được kể đến trong thực tế lại không thể giải được bằng công thức giải tích hoặc nếu giải được thì công thức nghiệm thường phức tạp, cồng kềnh việc khảo sát các tính chất nghiệm vì thế gặp nhiều khó khăn. Khi đó các phương pháp số để giải gần đúng các phương trình vi phân trở nên hữu ích. Các phương pháp số thường được sử dụng là phương pháp Euler, phương pháp Runge – Kutta, phương pháp Adam Phương pháp Euler là một trường hợp riêng của phương pháp Runge – Kutta và đã được Runge tổng quát vào năm 1895. Năm 1900 – 1901 Heun và Kutta đã hoàn thiện tập các phương pháp Runge – Kutta bậc 4 và đề suất các phương pháp bậc 5 đầu tiên. Cho đến năm 1956 – 1957 Huta đã đưa ra các phương pháp bậc 6. Các phương pháp bậc 8 được đưa ra bởi Curtis vào năm 1970 và Cooper vào năm 1972. Khi kĩ thuật máy tính phát triển sự quan tâm mới được tập trung vào các phương pháp Runge – Kutta ẩn và có một số lượng lớn các nhà nghiên cứu đã có những đóng góp cho sự mở rộng các định lý và các phương pháp đặc biệt. Với mong muốn được tìm hiểu sâu hơn các nghiên cứu về phương pháp Runge – Kutta giải phương trình vi phân thường dưới sự chỉ bảo tận tình của TS Nguyễn Văn Hùng tôi chọn nghiên cứu đề tài: “Phương pháp Runge – Kutta giải phương trình vi phân thường” 4 2. Mục đích nghiên cứu Luận văn nhằm nghiên cứu cách xây dựng các phương pháp Runge – Kutta giải phương trình vi phân thường. 3. Nhiệm vụ nghiên cứu Việc nghiên cứu Luận văn với nhiệm vụ hệ thống và làm rõ cách xây dựng các phương pháp Runge – Kutta giải phương trình vi phân thường. 4. Đối tượng nghiên cứu Luận văn tập trung nghiên cứu cách xây dựng các phương pháp Runge – Kutta giải phương trình vi phân thường. 5. Phương pháp nghiên cứu Tổng hợp những kiến thức thu thập được qua những tài liệu có liên quan đến đề tài. Phân tích, đánh giá các tài liệu để đưa ra các phương pháp Runge – Kutta giải phương trình vi phân thường một cách tổng quát dưới các cách nghiên cứu khác nhau. 6. Những đóng góp mới của đề tài Trình bày một cách có hệ thống về các phương pháp Runge – Kutta hiển giải phương trình vi phân thường sử dụng cây có gốc. Những lý thuyết đó có thể áp dụng cho cả các phương pháp Runge – Kuta ẩn. Nội dung Luận văn tập trung vào các nội dung được thể hiện trong các chương sau: Chương 1: Lý thuyết tổng quan về phương trình vi phân thường. Chương 2: Phương pháp Runge – Kutta. Chương 3: Phương pháp Runge – Kutta với cây có gốc. 5 Chương 1 Lý thuyết tổng quan về phương trình vi phân thường 1.1 Định nghĩa phương trình vi phân thường Định nghĩa 1.1 Phương trình vi phân thường có dạng:       , ,y x f x y x (1.1) ở đây , dy y dx  và : N y    , : N N f      . Khi giải quyết các bài toán cụ thể, để thuận tiện ta không xét trên các hàm giá trị vectơ f và y mà trên các thành phần đơn lẻ. Vì vậy, để thay thế cách viết phương trình vi phân ở dạng (1.1) chúng ta có thể liên kết các phương trình với từng thành phần riêng lẻ:             1 1 1 2 2 2 1 2 1 2 ' , , , , ' , , , , ' , , , , N N N N N y x f x y y y y x f x y y y y x f x y y y    (1.2) Một phương trình vi phân với f không phải là hàm của x mà là hàm của y thì ta gọi là “autonmous” nó có dạng       ' y x f y x  . Nhưng hoàn toàn có thể biểu diễn một phương trình vi phân ở dạng “non-autonmous” tương đương với dạng “autonmous” bằng cách đưa thêm một thành phần 1N y  vào trong vectơ y và đảm bảo rằng thành phần này luôn đóng vai trò giống x bởi liên kết nó cùng với phương trình vi phân 1 ' 1 N y   . Vì vậy hệ được thay đổi như sau: 6               1 1 1 2 2 1 2 1 1 2 1 1 2 1 ' , , , , ' , , , , ' , , , , ' 1 N N N N N N N N N y x f y y y y y x f y y y y y x f y y y y y x         (1.3) 1.2 Bài toán giá trị ban đầu của phương trình vi phân thường. 1.2.1 Bài toán Tìm nghiệm   y y x của phương trình vi phân       ' ,y x f x y x (1.4) Thỏa mãn điều kiện ban đầu   0 0 y x y (1.5) Ở đây   1 2 , , , N y y y y ,   1 2 , , , N f f f f và   0 01 02 0 , , , N y y y y là các vectơ trong N  . Cặp phương trình (1.4) và (1.5) được gọi là bài toán giá trị ban đầu của phương trình vi phân thường. 1.2.2 Nghiệm của bài toán giá trị ban đầu Giả sử , N f C        (f xác định và liên tục trên  và nhận giá trị trong N  ), ở đây  là một tập mở trong 1N   . Một nghiệm   y y x của bài toán (1.4), (1.5) là một hàm khả vi của x sao cho với một khoảng J chứa 0 x ta có     0 0 ( ) , ,y x y x y x   và       ' , y x f x y x  . Nhận xét Hàm khả vi   y x là nghiệm của bài toán (1.4), (1.5) trên J khi và chỉ khi nó là nghiệm của phương trình tích phân Volterra: 7       0 0 , , x x y x y f s y s ds x J    (1.6) 1.3 Các định lý về sự tồn tại và duy nhất nghiệm của bài toán giá trị ban đầu Xét bài toán giá trị ban đầu (1.4) và (1.5). Định lý 1.1 (Định lý Picard - Lindelof) Giả sử   ,f x y liên tục trên 0 0 0 0 : , B x x x a y y b     , ở đây a, b là các số thực dương và thỏa mãn điều kiện Lipschitz trên B 0 , nghĩa là, tồn tại một hằng số dương L sao cho, với 0 0 h h  và với mọi   ,x u ,   0 , x v B thì     , , f x u f x v L u v   . Đặt :     0 , ax , x y B M m f x y   ,   min , a b M   . Khi đó bài toán giá trị ban đầu (1.4), (1.5) có nghiệm duy nhất   y x trên   0 0 ,x x   . Chứng minh Theo nhận xét trên thì nghiệm của bài toán (1.4), (1.5) tương đương với nghiệm của phương trình tích phân (1.6). Do vậy ta chỉ cần chứng tỏ với các giả thiết của định lý 1.1 thì phương trình (1.6) tồn tại nghiệm duy nhất   y y x trong khoảng 0 0 x x x     ở đó   min ; a b M   . Định nghĩa một dãy các hàm:         0 0 0 0 1 , , 1,2, , x k k x y x y y x y f s y s ds k n       (1.7) Với 0 0 x x x     . 8 Vì     , f x y x liên tục trên   0 0 ,x x   nên các hàm số   0 y x ,     1 , , n y x y x xác định và liên tục trên   0 0 ,x x   . Hiển nhiên     0 0 , x y x B . Vì vậy ta có:     1 0 0 y x y M x x M b       và hơn nữa     1 0 , x y x B . Tuy nhiên có thể chứng minh bằng quy nạp rằng:   0k y x y b  và     0 , , 1,2, , . k x y x B k n   Đặt       1n n n z x y x y x    . Vì f thỏa mãn điều kiện Lipschitz trên B 0 nên suy ra:               0 0 2 1 0 1 0 , , x x x x z x f s y s f s y s ds L y s y s ds           0 2 0 0 2! x x x x L M s x ds LM      . Lập luận tương tự bằng quy nạp với   0 0 ,x x x    ta có:     1 0 . 1,2, , ! k k k x x z x M L k n k     (1.8) Chứng minh điều này, giả sử với   0 0 ;x x x    thì:       1 2 0 1 . , 1,2, , 1 ! k k k x x z x M L k n k        Khi đó với   0 0 ,x x x    , ta có:           0 1 2 , , x n n n x z x f s y s f s y s ds            0 0 1 2 1 x x n n n x x L y s y s ds L z s ds         9       0 1 1 0 1 0 1 ! ! n n x n n x s x x x ML ds ML n n          (1.8) được chứng minh. Xét chuỗi vô hạn có dạng:       0 1 2 n y z x z x z x      (1.9) Tổng riêng thứ n của chuỗi này là:     0 1 n n k k y x y z x     (1.10) Ta có, dãy     n y x hội tụ khi và chỉ khi chuỗi (1.9) hội tụ. Từ bất đẳng thức (1.8) ta có:     1 0 0 0 1 1 1 . ! ! k k k k k k k L M y z x y M L y k L k                  (1.11) Vì chuỗi   1 ! k k L k     hội tụ đến   1 L e   do đó chuỗi (1.9) hội tụ đều trên   0 0 ,x x   khi n   . Gọi tổng của chuỗi (1.9) là   y x , khi đó theo (1.10 ) ta có:     lim n n y x y x   . Từ tính hội tụ đều của   n y x đến   y x và tính liên tục của hàm   ,f x y trên B 0 suy ra rằng     , n f x y x hội tụ đều đến     , f x y x trên   0 0 ,x x   khi n   . Do đó:       0 0 1 , x n n x y x y f s y s ds           0 0 1 lim , x n x y x y f s y s ds      Vậy:       0 0 , x x y x y f s y s ds    Như vậy tồn tại nghiệm   y x của phương trình (1.4), (1.5). 10 Nghiệm này là duy nhất. Thật vậy, giả sử   y x và   z x là hai nghiệm của (1.4), (1.5). Hàm không âm       w x y x z x   thoả mãn   0 0 w x  và                 0 0 0 , , x x x x x x w x f s y s f s z s ds L y s z s ds L w s ds         (1.12) Giả sử K là giá trị lớn nhất của   w x với   0 0 ,x x x    và do đó 0K  Khi đó         0 0 0 0 . , x x w x L w s ds K L x x x x x         (1.13) Thay bất đẳng thức (1.13) và vế phải của (1.14) ta có:       0 2 2 2 0 0 . . 2! x x x x w x L K s x ds K L      Tiếp tục quá trình trên ta có:       0 0 0 . 1,2 , ! k k x x w x K L k x x x k        (1.14) ((1.14) có thể chứng minh bằng phương pháp quy nạp). Hơn nữa vế phải của (1.14) bị chặn trên bởi:     0 0 0 . . , ! k k x x K L x x x k      Biểu thức này có thể nhỏ tuỳ ý bởi chọn k đủ lớn. Vì vậy   0 w x  với   0 0 ,x x x    . Hay     y x z x là nghiệm duy nhất của bài toán. Nhận xét Nếu y, z thỏa mãn (1.4) cùng với y(a) = y 0 và z(a) = z 0 thì:         d y x z x L y x z x dx    11 Nhân cả hai vế với Lx e  và ta có       0 Lx d e y x z x dx    Suy ra:       0 0 L x a y x z x y z e     (1.15) Định nghĩa 1.2 Một họ các hàm số   F f xác định trên khoảng I được gọi là liên tục đồng bậc trên I nếu mọi 0   , tồn tại   0      sao cho với 1 , ,x x I 1 x x    và với mỗi f F thì     1 f x f x    . Nhận xét i) Bất kỳ tập con của họ liên tục đồng bậc là liên tục đồng bậc. ii) Mỗi phần tử của họ liên tục đồng bậc là một hàm liên tục. iii) Một họ các hàm khả vi là liên tục đồng bậc tại mọi điểm trên I nếu các đạo hàm của nó bị chặn đều trên I. Bổ đề 1.1 Trên một tập compact 0 n B   , lấy     , 1,2, n f x n  là một dãy các hàm liên tục đồng bậc và bị chặn đều. Khi đó tồn tại một dãy con     k n f x hội tụ đều trên 0 B . Định lý 1.2 (Định lý tồn tại Peano: trường hợp vectơ) Cho 0 , n f C B       , ở đây B 0 là tập:     0 0 0 , : , x y x x x y y b        và   , f x y M trên B 0 . Khi đó bài toán giá trị ban đầu (1.4), (1.5) có ít nhất một nghiệm   y x trên 0 0 x x x     , ở đó   min , a b M   . Chứng minh 12 Đặt   0 y x là một hàm khả vi liên tục trên   0 0 , , 0 x x     thỏa mãn   0 0 0 y x y ,       0 0 ' , y x f x y x  ,   0 0 y x y b  và   0 ' y x M . Với 0     , ta định nghĩa một hàm   y x  trên   0 0 ,x x     bởi:           0 0 0 0 0 , , x x y x x x x y x y f s y s ds                (1.16) Hàm   y x  xác định theo hệ thức (1.16) là một hàm khả vi liên tục cấp 1 trên     0 0 1 1 , , min , x x         và trên đoạn này:   0 y x y b    (1.17) Nếu 1    ta có thể sử dụng (1.16) mở rộng   y x  là một hàm khả vi liên tục cấp 1 trên     0 0 2 2 , , min ,2 x x         sao cho bất đẳng thức (1.17) xảy ra. Tiếp tục quá trình này, ta có hàm   y x  khả vi liên tục cấp 1 trên   0 0 ,x x     và thỏa mãn (1.17) trên đoạn này. Hơn nữa:   ' y x M   trên   0 0 ,x x     và vì thế dãy     , 0y x      là một họ các hàm liên tục đồng bậc và bị chặn đều. Áp dụng bổ đề 1.1, suy ra tồn tại một dãy   n  và     lim n n y x y x    tồn tại đều trên   0 0 ,x x     . Vì sự hội tụ này là đều và từ tính liên tục của hàm f trên B 0 suy ra hàm     , n n f x y x    hội tụ đều đến     , f x y x khi n   . Hơn nữa lấy giới hạn hai vế của (1.16) cùng với n    ta có:       0 0 , x x y x y f s y s ds    Điều này chứng tỏ   y x là nghiệm của (1.4), (1.5). [...]... y0   f  s, y  s  ds x0 * Kết luận Chương 1 trình bày định nghĩa về phương trình vi phân thường trong N Các định lý về sự tồn tại và duy nhất nghiệm, tính liên tục của nghiệm và nghiệm xấp xỉ của bài toán giá trị ban đầu của phương trình vi phân thường Trong chương 2 và chương 3 khi nghiên cứu về phương pháp Runge – Kutta giải phương trình vi phân thường ta luôn giả thiết chúng thỏa mãn các điều... phương pháp một bước và cách xây dựng phương pháp Runge – Kutta dẫn đến một số các hệ thức liên hệ giữa các hệ số của phương pháp Định lý 2.1 Với một công thức Runge – Kutta nhất quán ta có: s b  1 i i 1 s ci   aij , i  1,2, , s j 1 2.2.2 Phương pháp Runge – Kutta bậc 1 (phương pháp Euler ) Phương pháp Runge – Kutta đơn giản nhất có dạng: yn1  yn  hf  xn , yn  Sai số của phương pháp này... của định lý về sự tồn tại và duy nhất nghiệm 18 Chương 2 Phương pháp Runge – Kutta Phương pháp Runge – Kutta là một trong các phương pháp một bước xấp xỉ nghiệm của bài toán giá trị ban đầu Trong chương này chúng tôi nghiên cứu phương pháp một bước sau đó đưa ra các phương pháp Runge – Kutta bậc 1, 2, 3 2.1 Phương pháp một bước 2.1.1 Phương pháp một bước Xét bài toán giá trị ban đầu (1.4), (1.5) Giả... k1  4k2  k3  6 Tuy nhiên phương pháp Runge- Kutta sử dụng 3 cấp k1 , k2 , k3 không đạt được độ chính xác bậc 4 vì hệ số của h3 chứa một số hạng độc lập với 6 tham số c2 , c3 , a32 , b1 , b2 , b3 *Kết luận Chương 2 trình bày phương pháp một bước giải phương trình vi phân thường từ đó xây dựng các phương pháp Runge – Kutta bậc 1, bậc 2, bậc 3 Nhưng các cấp của phương pháp càng tăng thì số điều kiện... là phương pháp Runge – Kutta ẩn Đặc biệt nếu aij  0  j  i  1 thì ta gọi là phương pháp ẩn chéo Trong giới hạn của đề tài này chúng tôi chỉ nghiên cứu các phương pháp Runge – Kutta hiển Rõ ràng phương pháp Runge – Kutta là phương pháp một bước có dạng s s s   (2.1.1) ở đây hàm   xn , yn ; h    bi ki   bi f  xn  hci , yn  h aij k j  i 1 i 1 j 1   Từ điều kiện nhất quán của phương. .. đối với phương pháp Runge – Kutta sử dụng một cấp có 1 điều kiện, 1 tham số và có độ chính xác bậc 1, phương pháp Runge – Kutta sử dụng 2 cấp có 2 điều kiện, 3 tham số, 31 độ chính xác bậc 2, phương pháp Runge – Kutta sử dụng 3 cấp có 4 điều kiện, 6 tham số, độ chính xác bậc 3 Với phương pháp cấp cao hơn thì vi c đánh giá độ chính xác sẽ gặp khó khăn Vấn đề đặt ra nếu chúng ta sử dụng một phương pháp. .. pháp có cấp s thì độ chính xác của phương pháp là bao nhiêu? Để giải quyết vấn đề này, ở chương 3 chúng tôi sẽ trình bày một con đường khác để xây dựng các phương pháp Runge – Kutta bậc cao hơn bằng cách sử dụng “cây có gốc” (rooted trees), nó đóng vai trò trung tâm trong sự phân tích độ chính xác của các phương pháp Runge – Kutta 32 Chương 3 Phương pháp Runge – Kutta với cây có gốc 3.1 Giới thiệu... là hai ví dụ về phương pháp Runge – Kutta bậc 2 * Phương pháp điểm giữa Chọn c2  1 ta có: yn1  yn  hf 2 1 1    xn  h, yn  hf  xn , yn   2 2   (2.2.5) * Phương pháp Euler cải tiến 1 1 Chọn c2  1 thì a21  1, b1  , b2  ta có: 2 2 1 yn1  yn  h f  xn , yn   f  xn  h, yn  hf  xn , yn   2   (2.2.6) 27 2.2.4 Phương pháp Runge – Kutta bậc 3 Phương pháp Runge – Kutta bậc 3 có dạng:... b3 4 3 4  b3 2  3c2 6c3  c3  c2  30 Sau đây là hai ví dụ về phương pháp Runge – Kutta bậc 3 là phương pháp Heun bậc 3 và phương pháp Kutta bậc 3 * Phương pháp Heun bậc 3 k1  f  xn , yn  1 1   k2  f  xn  h, yn  hk1  3 3   2 2   k3  f  xn  h, yn  hk2  3 3   1 yn1  yn  h  k1  3k3  4 (2.2.8) * Phương pháp Kutta bậc 3 k1  f  xn , yn  1 1   k2  f  xn  h, yn  hk1 ... , N Vậy sai số toàn cục của phương pháp này là O(h) Do đó phương pháp có độ chính xác bậc 1 2.2.3 Phương pháp Runge – Kutta bậc 2 Phương pháp Runge – Kutta bậc 2 có dạng yn1  yn  h  b1k1  b2 k2  k1  f  xn , yn  k2  f  xn  c2 h, yn  a21hk1  ở đây   xn , yn ; h   b1 f  xn , yn   b2 f  xn  c2 h, yn  a21hf  xn , yn   Để xác định sai số của phương pháp ta cần đạo hàm cấp cao hơn . các phương pháp số để giải gần đúng các phương trình vi phân trở nên hữu ích. Các phương pháp số thường được sử dụng là phương pháp Euler, phương pháp Runge – Kutta, phương pháp Adam Phương pháp. phương pháp Runge – Kutta giải phương trình vi phân thường dưới sự chỉ bảo tận tình của TS Nguyễn Văn Hùng tôi chọn nghiên cứu đề tài: Phương pháp Runge – Kutta giải phương trình vi phân thường . về phương trình vi phân thường. Chương 2: Phương pháp Runge – Kutta. Chương 3: Phương pháp Runge – Kutta với cây có gốc. 5 Chương 1 Lý thuyết tổng quan về phương trình vi phân thường

Ngày đăng: 23/07/2015, 14:25

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan