Phương pháp lặp giải bài toán biên cho phương trình vi phân phi tuyến cấp 4

1 66 0
Phương pháp lặp giải bài toán biên cho phương trình vi phân phi tuyến cấp 4

Đang tải... (xem toàn văn)

Thông tin tài liệu

ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC ——————–o0o——————– HÀ HOÀNG VIỆT PHƯƠNG PHÁP LẶP GIẢI BÀI TOÁN BIÊN CHO PHƯƠNG TRÌNH VI PHÂN PHI TUYẾN CẤP 4 THÁI NGUYÊN, 10/2018 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC ——————–o0o——————– HÀ HOÀNG VIỆT PHƯƠNG PHÁP LẶP GIẢI BÀI TOÁN BIÊN CHO PHƯƠNG TRÌNH VI PHÂN PHI TUYẾN CẤP 4 Chuyên ngành: Toán ứng dụng Mã số: 846 01 12 LUẬN VĂN THẠC SĨ TOÁN HỌC GIÁO VIÊN HƯỚNG DẪN TS VŨ VINH QUANG THÁI NGUYÊN, 10/2018 1 Mục lục Danh mục các ký hiệu, các chữ viết tắt 3 Danh mục các bảng 4 Danh mục các hình vẽ, đồ thị 5 Lời nói đầu 6 Chương 1 Một số kiến thức cơ bản 1.1 Một số kiến thức cơ bản về phương pháp lưới 1.1.1 Lưới sai phân 1.1.2 Hàm lưới 1.1.3 Đạo hàm lưới 1.1.4 Quy ước viết vô cùng bé 1.1.5 Công thức Taylor 1.1.6 Liên hệ giữa đạo hàm và hàm lưới 1.2 Phương pháp số giải bài toán Cauchy 1.2.1 Phương pháp Euler 1 1.2.2 Phương pháp Euler 2 1.2.3 Thuật toán RK4 1.3 Phương pháp số giải bài toán biên cho phương trình vi phân tuyến tính cấp 2 với độ chính xác cấp cao 1.3.1 Thuật toán truy đuổi 3 đường chéo 1.3.2 Phương pháp xấp xỉ đạo hàm với độ chính xác bậc cao 1.3.3 Lược đồ sai phân giải bài toán biên cho phương trình cấp hai với độ chính xác bậc cao 9 9 9 9 10 10 10 11 12 13 13 14 15 15 17 21 Chương 2 Phương pháp lặp giải bài toán biên cho phương trình vi phân phi tuyến cấp bốn 26 2.1 Mô hình bài toán phi tuyến tổng quát 26 2.2 Mô hình bài toán phi tuyến cấp 4 với hệ điều kiện biên thuần nhất 27 2 2.2.1 Sự tồn tại duy nhất nghiệm 2.2.2 Phương pháp lặp xây dựng dãy lặp đơn điệu 2.3 Mô hình bài toán phi tuyến cấp 4 với hệ điều kiện đầu thuần nhất 2.3.1 Mô hình bài toán 2.3.2 Sự tồn tại và duy nhất của nghiệm 27 31 33 33 33 Chương 3 Một số kết quả thực nghiệm 41 3.1 Mô hình bài toán cấp 4 phi tuyến với giá trị biên 41 3.2 Mô hình bài toán cấp 4 phi tuyến với giá trị ban đầu 47 Kết luận 54 Tài liệu tham khảo 55 Phần phụ lục 57 3 Danh mục các ký hiệu, các chữ viết tắt N Ωk ρ(h) hα ∆x RK4 A Pn (x) Lk (x) v G(x, t) B[O, M ] R+ Lưới sai phân Không gian lưới Vô cùng bé so với h Vô cùng bé bậc α Số gia hàm Phương pháp Runge-Kutta Ma trận Aij cấp n × n Đa thức bậc n Nhân tử Lagrange bậc k Chuẩn trong không gian Rn Hàm Green Hình cầu tâm O, bán kính M Nửa dương của đường thẳng thực 4 Danh mục các bảng Bảng 1.1: Sai số ε trên lưới điểm c0 = 1; c1 = 2; d0 = 2; d1 = 3 Bảng 1.2: Sai số ε trên lưới điểm c0 = 1; c1 = 0; d0 = 1; d1 = 0 Bảng 3.1: Giá trị sai số ε, số điểm lưới N = 100 (Bài toán 3.1) Bảng 3.2: Giá trị sai số ε, số điểm lưới N = 100 (Bài toán 3.2) Bảng 3.3: Giá trị sai số ε, số điểm lưới N = 100 (Bài toán 3.3) Bảng 3.4: Giá trị sai số ε, số điểm lưới N = 100 (Bài toán 3.4) Bảng 3.5: Giá trị sai số ε, số điểm lưới N = 100 (Bài toán 3.5) Bảng 3.6: Giá trị sai số ε, số điểm lưới N = 100 (Bài toán 3.6) Bảng 3.7: Giá trị sai số ε, số điểm lưới N = 100 (Bài toán 3.7) Bảng 3.8: Giá trị sai số ε, số điểm lưới N = 100 (Bài toán 3.8) 5 Danh mục các hình vẽ, đồ thị Hình 3.1: Đồ thị nghiệm dương (Bài toán 3.1) Hình 3.2: Đồ thị nghiệm dương (Bài toán 3.2) Hình 3.3: Đồ thị nghiệm dương (Bài toán 3.3) Hình 3.4: Đồ thị nghiệm dương (Bài toán 3.4) Hình 3.5: Đồ thị nghiệm dương (Bài toán 3.5) Hình 3.6: Đồ thị nghiệm dương (Bài toán 3.6) Hình 3.7: Đồ thị nghiệm dương (Bài toán 3.7) Hình 3.8: Đồ thị nghiệm dương (Bài toán 3.8) 6 Lời nói đầu Bài toán cơ học mô tả bởi phương trình vi phân phi tuyến tính với hệ điều kiện biên đầy đủ là một bài toán khó, được các tác giả trên thế giới cũng như trong nước quan tâm Đã có rất nhiều tài liệu đề cập tới việc chứng minh sự tồn tại và duy nhất nghiệm của bài toán, tuy nhiên việc xác định nghiệm đúng của bài toán bằng phương pháp giải tích là khó thực hiện, vì vậy người ta chú ý đến việc nghiên cứu các phương pháp xác định nghiệm xấp xỉ của bài toán bằng phương pháp chuyển bài toán phi tuyến về một dãy các bài toán tuyến tính thông qua một sơ đồ lặp, từ đó dựa trên phương pháp chuyển các bài toán vi phân tuyến tính về các bài toán sai phân được mô tả bằng các hệ phương trình đại số sau đó xây dựng các phương pháp giải các hệ đại số tuyến tính Có hai vấn đề cần quan tâm là cơ sở toán học của việc xây dựng các sơ đồ lặp cùng với sự hội tụ của sơ đồ và các thuật toán giải các hệ phương trình sai phân với độ chính xác cao Mục tiêu của luận văn là tìm hiểu cơ sở toán học của việc xây dựng các sơ đồ lặp dựa trên dãy lặp đơn điệu và phương pháp dựa trên phương trình toán tử, tìm hiểu các thuật toán xây dựng và giải các hệ phương trình lưới từ đó cài đặt các chương trình tìm nghiệm xấp xỉ của bài toán phi tuyến tính cấp 4 được mô tả bằng các sơ đồ lặp thông qua các ví dụ cụ thể Luận văn “Phương pháp lặp giải bài toán biên cho phương trình vi phân phi tuyến cấp 4” gồm phần mở đầu, ba chương nội dung, kết luận và tài liệu tham khảo Chương 1: Một số kiến thức cơ bản Trong chương này luận văn trình bày một số kiến thức cơ bản về phương pháp lưới, thuật toán truy đuổi giải hệ phương trình lưới và phương pháp 7 số giải bài toán biên cho phương trình vi phân tuyến tính cấp 2 với độ chính xác cấp cao Chương 2: Phương pháp lặp giải bài toán biên cho phương trình vi phân phi tuyến cấp bốn Chương này, luận văn sẽ giới thiệu một số phương pháp lặp để tìm nghiệm gần đúng cho một số mô hình mô tả bởi phương trình vi phân phi tuyến bậc 4 bao gồm lý thuyết về phương pháp nghiệm trên và nghiệm dưới, phương pháp lặp dựa trên phương trình toán tử áp dụng cho trường hợp tổng quát Chương 3: Một số kết quả thực nghiệm Trong chương này luận văn đưa ra một số kết quả số để khẳng định tính đúng đắn về lý thuyết đối với sự hội tụ của các sơ đồ lặp đã được đưa ra trong Chương 2 Mô hình các bài toán được tham khảo trong các tài liệu [5, 6] Các kết quả số được thực hiện bằng các chương trình trong môi trường MATLAB trên máy tính PC Mặc dù đã rất nghiêm túc và cố gắng thực hiện luận văn này, nhưng luận văn sẽ không tránh khỏi những khiếm khuyết nhất định Kính mong sự góp ý của các thầy cô để luận văn này được hoàn chỉnh và ý nghĩa hơn Luận văn này được thực hiện tại Trường Đại học Khoa học - Đại học Thái Nguyên và hoàn thành dưới sự hướng dẫn của TS Vũ Vinh Quang Tác giả xin được bày tỏ lòng biết ơn chân thành và sâu sắc tới người hướng dẫn khoa học của mình, người đã đặt vấn đề nghiên cứu, dành nhiều thời gian hướng dẫn tận tình và đầy trách nhiệm để tác giả hoàn thành luận văn này Tác giả đã học tập được rất nhiều kiến thức chuyên ngành bổ ích cho công tác và nghiên cứu của bản thân Tác giả cũng xin được gửi lời cảm ơn sâu sắc tới các Thầy giáo, Cô giáo đã tham gia giảng dạy lớp Cao học Toán K10A; Nhà trường và các phòng chức năng của trường, Khoa Toán - Tin, trường Đại học Khoa học, Đại học Thái Nguyên đã quan tâm và giúp đỡ tác giả trong suốt thời gian học tập tại trường Cuối cùng tác giả xin cảm ơn gia đình và các bạn đồng nghiệp đã 8 động viên, ủng hộ cũng như tạo mọi điều kiện cho tác giả trong suốt thời gian nghiên cứu và học tập Thái Nguyên, tháng 4 năm 2018 Tác giả Hà Hoàng Việt 9 Chương 1 Một số kiến thức cơ bản Nội dung chính của Chương 1 trình bày các kiến thức cơ bản về phương pháp lưới, một số thuật toán giải số các phương trình vi phân cấp 1 và cấp 2 với hệ điều kiện đầu và điều kiện biên Các kiến thức trình bày được tham khảo trong các tài liệu [1, 2, 3, 7, 8] 1.1 Một số kiến thức cơ bản về phương pháp lưới Cho khoảng [x0 , X] Tìm hàm u = u(x) xác định trên [x0 , X] và thỏa mãn: u = f (x, u), x0 ≤ x < X, (1.1) u (x0 ) = η, (1.2) trong đó f (x, u) là một hàm cho trước và η là một số cho trước Giả sử bài toán (1.1), (1.2) có nghiệm u = u(x) đủ trơn, nghĩa là nó có đạo hàm liên tục đến cấp mà ta cần 1.1.1 Lưới sai phân Ta chia đoạn [x0 , X] thành N đoạn con bằng nhau, mỗi đoạn con có (a − b) độ dài h = bởi các điểm xi = x0 + ih, i = 0, 1, , N Tập điểm N xi gọi là một lưới sai phân trên [x0 , X] ký hiệu là Ωh 1.1.2 Hàm lưới Giá trị của hàm lưới v tại nút xi viết là vi Một số hàm u(x) xác định tại mọi x ∈ [a, b] sẽ tạo ra hàm lưới u có giá trị tại nút xi là ui = u (xi ) 10 1.1.3 Đạo hàm lưới Xét hàm lưới v Đạo hàm lưới cấp một của v ký hiệu là vx , có giá trị tại nút xi là: vxi = vi+1 − vi h Đạo hàm lưới lùi cấp một của v, ký hiệu là vx , có giá trị tại nút xi là: vxi = vi − vi−1 h Ta sẽ thấy rằng khi h đủ bé thì đạo hàm lưới "xấp xỉ" được đạo hàm thường 1.1.4 Quy ước viết vô cùng bé Khái niệm xấp xỉ liên quan đến khái niệm vô cùng bé Để viết các vô cùng bé một cách đơn giản ta sẽ áp dụng qui ước sau đây: Giả sử đại lượng ρ(h) là một vô cùng bé khi h → 0 Nếu tồn tại α > 0 và hằng số M > 0 sao cho: | ρ (h) | M hα thì ta viết: ρ (h) = O (hα ) Cách viết như trên có nghĩa là: Khi h nhỏ thì ρ(h) là một đại lượng nhỏ và khi h → 0 thì ρ(h) tiến đến số 0 không chậm hơn M hα 1.1.5 Công thức Taylor Giả sử F (x) là một hàm số xác định và có đạo hàm đến cấp m + 1 trong khoảng (α, β) chứa x và x + ∆x, ∆x có thể âm hay dương Khi đó ta có công thức khai triển (∆x)2 F (x + ∆x) = F (x) + ∆xF (x) + F (x) + 2! m+1 m (∆x) (∆x) + F (m) (x) + F (m+1) (c) m! (m + 1)! trong đó c là một điểm ở trong khoảng từ x đến x + ∆x Có thể viết c = x + θ∆x với 0 < θ < 1 Ta giả thiết thêm: F (m+1) (x) M = const, x ∈ [α, β] Khi đó (∆x)(m+1) (m+1) F (c) là một vô cùng bé khi ∆x → 0 (m + 1)! 11 tức là tồn tại hằng số K > 0 không phụ thuộc vào ∆x sao cho: (∆x)(m+1) (m+1) F (c) (m + 1)! K(∆x)(m+1) Công thức Taylor ở trên có thể viết gọn hơn như sau: (∆x)2 F (x) + F (x + ∆x) = F (x) + ∆xF (x) + 2! (∆x)m m F (x) + O (∆x)(m+1) + m! 1.1.6 Liên hệ giữa đạo hàm và hàm lưới Giả sử hàm u(x) đủ trơn Theo công thức Taylor ta có: u(xx + 1) = u(xi + h) = u(xi ) + hu (xi ) + O(h2 ) Ta suy ra uxi = u (xi+1 ) − u (xi ) = u (xi ) + O(h) h (1.3) Tương tự: u(xi − 1) = u(xi − h) = u(xi ) − hu (xi ) + O(h2 ) Do đó: u (xi ) − u (xi−1 ) = u (xi ) + O(h) h Ngoài ra với quy ước: h xi+ 12 = xi + , ui+ 12 = u xi+ 12 2 h Ta còn có: u (xi+1 ) = u xi+ 12 + 2 uxi = h 1 h = u xi+ 12 + u xi+ 21 + 2 2! 2 h u(xi ) = u xi+ 21 − 2 2 h 1 h − u xi+ 12 + 2 2! 2 2 = u xi+ 12 u u xi+ 12 + O h3 , xi+ 21 +O h3 Ta suy ra: u (xi+1 ) − u (xi ) = hu xi+ 12 (1.4) + O h3 12 Do đó: ux i +1 − uxi = u (xi+1 ) − u (xi ) = u xi+ 12 + O(h2 ) h (1.5) Đồng thời: u (xi+1 ) + u (xi ) = u xi+ 12 h 1.2 + O h2 (1.6) Phương pháp số giải bài toán Cauchy Xét bài toán Cauchy, hay còn gọi là bài toán giá trị ban đầu: Tìm y(x) thỏa mãn điều kiện: y = f (x, y), x0 ≤ x ≤ x y(x0 ) = y0 , (y, f ∈ Rm ) (1.7) Ta quan tâm đến phương pháp tìm nghiệm của (1.7) tại điểm x1 = x0 +h với bước h > 0 Hai nhà toán học người Đức Runge và Kutta đã đề xuất một phương pháp tìm nghiệm y1 , chỉ phải tính một hàm f (x, y) tại một số điểm khác nhau: Đặt y1 = y0 + ∆y0 , trong đó ∆y0 = pr1 k1 (h) + + prr kr (h) ki (h) = hf (ξi , vi ) ; ξi = x0 + αi h; α1 = 0; vi = y0 + βi1 k1 (h) + + βi,i−1 ki−1 (h) Gọi ϕr (h) := y (x0 + h) − y1 = y (x0 + h) − y (x0 ) − ∆y0 là sai số (địa (s+1) phương) của phương pháp Runge-Kutta Nếu ϕr (0) = 0 thì: r (i) ϕr (h) = i=0 ϕr (0) i h + O hs+1 i! Runge-Kutta chọn các hệ số αi , βij , prj từ điều kiện: (s+1) ϕ(i) (0) = 0, r (0) = 0, (i = 0, s); ϕr với s càng lớn càng tốt (i) (i) (i) (i) Như vậy, ϕr (0) = y0 − pr1 k1 (0) + + prr kr (0) = 0, i = 0, s , hay ta có phương trình phi tuyến để xác định các hệ số αi , βij , prj : (i) (i) (i) (i) pr1 k1 (0) + pr2 k2 (0) + + prr kr (0) = y0 i = 0, s (1.8) Xuất phát từ phương pháp Runge-Kutta tổng quát, chúng ta thu được một số phương pháp cụ thể như sau: 13 1.2.1 Phương pháp Euler 1 Xét trường hợp riêng của phương pháp Runge-Kutta khi r = 1 Ta có: ∆y0 = p11 k1 (h) ; k1 (h) = hf (x0 , y0 ) ϕ1 (h) := y (x0 + h) − y0 − p11 hf (x0 , y0 ) ; ϕ1 (0) = 0; ϕ1 (0) = y0 − p11 f (x0 , y0 ) = (1 − p11 ) f (x0 , y0 ) Để ϕ1 (0) = 0 với mọi hàm f , ta phải có p11 = 1 Với ϕ1 (0) = y0 = 0 và ∆y0 = p11 k1 (h) = hf (x0 , y0 ) Ta nhận được công thức Euler: y1 = y0 + hf (x0 , y0 ) (1.9) Nói chung yn+1 = yn + hf (xn , yn ) , xn = x0 + nh + Sai số địa phương của phương pháp: ϕ1 (ξ) 2 y (ξ) 2 h = h = O h2 2! 2 + Để nhận được công thức sai số toàn phần, ta giả thiết f (x, y) liên tục Lipschitz theo biến y với hằng số Lipschitz L > 0, ngoài ra vi phân toàn df phần M Cho xn cố định dx  xn  y (xn ) = y0 + f (x, y(x)) dx R1 (h) = x0  y n = yn−1 + hf (xn−1 , yn−1 ) Có thể thấy rằng phương pháp Euler 1 có độ chính xác O(h2 ) 1.2.2 Phương pháp Euler 2 Trong phương pháp Runge-Kutta, ta xét trường hợp r = 2, ∆y0 = p21 k1 (h) + p22 k2 (h) Phương trình (1.8) có dạng: (1) (l) (l) y0 = p21 k1 (0) + p22 k2 (0); l = 1, 2 (1.10) Vì k1 (h) = hf (x0 , y0 ) nên k1 (0) = 0; k1 (0) = f (x0 , y0 ) và k1 (0) = 0 Tiếp theo k2 (h) = hf (ξ2 , v2 ) trong đó ξ2 = x0 +α2 h; v2 = y0 +β21 k1 (h) Ta có: ∂f ∂f α2 + β21 k1 (h) ≡ f (ξ2 , v2 ) + h [.] k2 (h) = f (ξ2 , v2 ) + h ∂x ∂y 14 Dễ thấy k2 (0) = 0; k2 (0) = f (x0 , y0 ) Tiếp theo k2 (h) = [.] + [.] + h[.] nên: k2 (0) = 2 [.]|h=0 = 2 α2 ∂f0 ∂f0 + β21 f0 ∂x ∂y Ở đây chúng ta dùng kí hiệu f0 := f (x0 , y0 ) ; ∂f0 ∂f0 ; là đạo hàm ∂x ∂y ∂f ∂f ; tương ứng tính tại điểm (x0 , y0 ) ∂x ∂y Từ hệ thức (1.10), ta suy ra:   y0 = f0 = p21 f0 + p22 f0 , ∂f0 ∂f0 ∂f0 ∂f0  + f0 = 2p22 α2 + β21 f0 y0 = ∂x ∂y ∂x ∂y (1.11) Từ phương trình đầu của (1.11), suy ra: p21 + p22 = 1 Biến đổi phương trình thứ hai của hệ (1.11), ta được: (1 − 2α2 p22 ) ∂f0 ∂f0 + (1 − 2p22 β21 ) f0 = 0 ∂x ∂y (1.12) Vì công thức Runge-Kutta (ứng với r = 2) đúng với mọi hàm f , nên để (1.12) nghiệm đúng, cần 1 − 2α2 p22 = 1 − 2p22 β21 = 0 1 Như vậy: α2 = β21 = 1; p21 = p22 = 2 1 và ∆y0 = h {f (x0 , y0 ) + f (x0 + h, y0 + hf (x0 , y0 ))} 2 Ta nhận được công thức gọi là công thức Euler 2 sau:  y0 := y0 + hf (x0 , y0 ) (1.13) y1 = y0 + 1 h [f (x0 , y0 ) + f (x1 , y0 )] 2 Có thể thấy rằng phương pháp Euler 2 có độ chính xác O(h2 ) 1.2.3 Thuật toán RK4 4 Khi r = 4, ϕ4 (h) = y (x0 + h) − y (x0 ) − p4i ki (h) i=1 4 Dễ thấy: ϕ4 (0) = 0; ϕ4 (0) = y0 − i=1 4 p4i = 1 Từ đây suy ra: i=1 4 p4i ki (0) = 1− p4i f0 = 0 i=1 15 (4) Ngoài ra ta còn có: ϕ4 (0) = ϕ4 (0) = ϕ4 (0) = 0 Kết quả là có 11 phương trình đối với 10 ẩn: α2 , α3 , α4 , β21 , β31 , β32 , β41 , β42 , β43 , p4i (i = 1, 4) Như vậy sẽ có một họ các công thức RK4 Công thức thông dụng nhất có dạng: 1 ∆y0 = [k1 + 2k2 + 2k3 + k4 ] 6 k1 = hf (x0 , y0 ) k1 h (1.14) k2 = hf (x0 + , y0 + ) 2 2 h k2 k3 = hf (x0 + , y0 + ) 2 2 k4 = hf (x0 + h, y0 + k3 ) (5) 5 ϕ4 (ξ) Có thể chứng minh rằng R4 (h) = h RK4 1.3 1.3.1 120 là sai số địa phương của Phương pháp số giải bài toán biên cho phương trình vi phân tuyến tính cấp 2 với độ chính xác cấp cao Thuật toán truy đuổi 3 đường chéo Xét hệ phương trình    C1 x1 + B1 x2 Ai xi−1 + Ci xi + Bi xi+1   A x +C x n n−1 n Hệ (1.15) có ma trận:  C1 B1 A C  2 2   0 A3 A=    0 0 0 0 n 0 B2 C3 0 0 = f1 , = fi , (i = 1, 2, , n − 1) (1.15) = fn 0 0 0 0 0 0 Cn−1 Bn−1 An Cn       dạng 3 đường chéo    X = (x0 , x1 , , xn )T : ẩn phải tìm D = (d0 , d1 , , dn ) : cột vế phải Các hệ số của ma trận 3 đường chéo cần thỏa mãn các điều kiện sau 16 đây: |Ci | |Ai | + |Bi | , i = 1, 2, , n trong đó tồn tại ít nhất một bất đẳng thức chặt Hệ phương trình trên được gọi là hệ 3 đường chéo Đối với hệ dạng đặc biệt này, chúng ta có thể tìm nghiệm của hệ bằng thuật toán sau đây: Thuật toán truy đuổi 3 đường chéo Ta đi tìm nghiệm của hệ (1.15) trong dạng: xi = αi+1 xi+1 + βi+1 ; i = 0, 1, 2, , n − 1, (1.16) trong đó αi+1 , βi+1 được tìm từ điều kiện ràng buộc (1.16), là nghiệm của hệ (1.15) Thay (1.16) vào (1.15) và sử dụng đẳng thức: xi−1 = αi xi + βi = αi (αi+1 xi+1 + βi+1 ) + βi ta được: [αi+1 (αi Ai − Ci ) + Bi ] xi+1 + [(αi Ai − Ci ) Bi+1 + βi Ai + di ] = 0; i = 1, 2, , n − 1 Nên αi+1 (αi Ai − Ci ) + βi = 0, (αi Ai − Ci ) Bi+1 + βi Ai + di = 0 Từ đó ta có công thức truy hồi: αi+1 = βi βi Ai + di ; Bi+1 = ; i = 1, 2, , n − 1 (Ci − αi Ai ) (Ci − αi Ai ) Để có các hệ số đó, ta cần xác định α1 , β1 Do đó phương trình đầu tiên: −C0 x0 + B0 x1 = −d0 , B0 d0 hay: x0 = x1 + = α1 x1 + β1 có dạng (1.16) C0 C0 B0 d0 Nghĩa là: α1 = , β1 = C0 C0 Nhưng để tính theo công thức (1.16), ta cần có xn Ẩn xn sẽ được tìm nhờ phương trình cuối cùng của hệ (1.15): An xn+1 − Cn xn = −dn Lại theo (1.16) ta có: xn−1 = αn xn + βn Loại trừ xn−1 từ hệ này, ta suy ra được: xn = βn An + dn Cn − An αn 17 Như vậy nghiệm của hệ (1.15) được tìm theo công thức:  Bi Ai βi + di   αi+1 = ; βi+1 = ; i = 1, 2, , n − 1,    C − α A C − α A i i i i i i    d0 B0 α ; β1 = , = 1 Co Co   xi = αi+1 xi+1 + βi+1 ; i = 1, 2, , n − 1,     βn An + dn   = xn C n − An αn Xuất phát từ các công thức trên, thuật toán truy đuổi 3 đường chéo được thực hiện bằng thuật toán sau đây: Thuật toán B1 f1 , β1 = , xác định tất cả các giá trị C1 C1 αi , βi , ∀i = 2, 3, , n theo công thức: Bước 1: Xuất phát từ α1 = − Ai βi + di Bi ; βi+1 = ; i = 1, 2, , n − 1 C i − αi Ai C i − αi Ai βn An + dn Bước 2: Xuất phát từ xn = , xác định tất cả các xi , i = C n − An αn n − 1, n − 2, , 1 theo công thức: αi+1 = xi = αi+1 xi+1 + βi+1 ; i = 1, 2, , n − 1 Chúng ta có thể thấy rằng kết quả của thuật toán là O(n) 1.3.2 Phương pháp xấp xỉ đạo hàm với độ chính xác bậc cao Xét bài toán tổng quát: Cho hàm số y = f (x), x ∈ [a, b], cho trước (n + 1) mốc nội suy a = x0 < x1 < < xn = b Hãy tìm đa thức Pn (x) = a0 xn + a1 xn−1 + + an thỏa mãn tính chất: Pn (xi ) = yi = f (xi ); (i = 0, 1, 2, , n) Ý nghĩa hình học của bài toán nội suy là: Hãy xây dựng đường cong đại số y = Pn (x) đi qua tất cả các điểm cho trước (xi , yi )(i = 0, 1, 2, , n) Về mặt toán học, chúng ta chứng minh được: Với hàm số f (x) xác định liên tục và các mốc nội suy tùy ý thì đa thức nội suy Pn (x) sẽ tồn tại và duy nhất Sau đây chúng ta sẽ nghiên cứu phương pháp xác định đa thức nội suy Lagrange 18 Định nghĩa: Đa thức Lk (x) bậc n sẽ được gọi là nhân tử Lagrange thứ k nếu thỏa mãn điều kiện: Lk (xi ) = 1, xi = xk , i = 0, 1, , n; k = 0, 1, , n 0, xi = xk , Dễ thấy rằng các nhân tử sẽ được xác định bằng công thức Lk (x) = (x − x0 ) (x − xk−1 )(x − xk+1 ) (x − xn ) , k = 0, 1, 2, , n (xk − x0 ) (xk − xk−1 )(xk − xk+1 ) (xk − xn ) Nhận xét: * Sử dụng khái niệm nhân tử Lagrange, chúng ta nhận được công thức xác định đa thức nội suy Lagrange Pn (x) = y0 L0 (x) + y1 L1 (x) + + yn Ln (x) (1.17) * Sai số của phương pháp xấp xỉ được xác định bằng công thức f (n+1) (ξ) n f (x) = Pn (x) + Rn (x), trong đó Rn (x) = (x − xi ) (n + 1)! i=0 (b − a) Trong trường hợp lưới cách đều, kí hiệu h = chúng ta có thể đánh n giá sai số của phép nội suy theo công thức f (x) = Pn (x) + O(h(n+1) ) Chúng ta giả thiết hàm số f (x) là hàm khả vi mọi cấp trên đoạn [a, b] (b − a) Sử dụng lưới sai phân đều với bước lưới h = bằng các mốc nội n suy a = x0 < x1 < < xn = b trong đó xi = a + ih, i = 0, 1, , n Xuất phát từ công thức về đa thức nội suy Lagrange, ta sẽ thu được các công thức tính xấp xỉ đạo hàm như sau: f (n+1) (ξ) (n + 1)! d f (x) = Pn (x) + Rn (x) = Pn (x) + dx n (x − xi ) i=0 n = Pn (x) + O(h ), d2 f (x) = Pn (x) + Rn (x) = Pn (x) + 2 dx f (n+1) (ξ) (n + 1)! n−1 = Pn (x) + O(h ), Một số kết quả trong trường hợp lưới năm điểm: Giả sử xét lưới năm điểm x0 , x1 , x2 , x3 , x4 cách đều Ký hiệu: fk = f (xk ) = f (x0 + kh), k = 0, 1, 2, 3, 4 n (x − xi ) i=0 19 Ta xác định các nhân tử Lagrange: L0 (x) = L1 (x) = L2 (x) = L3 (x) = L4 (x) = (x − x1 )(x − x2 )(x − x3 )(x − x4 ) ; 24h4 (x − x0 )(x − x2 )(x − x3 )(x − x4 ) ; −6h4 (x − x0 )(x − x1 )(x − x3 )(x − x4 ) ; 4h4 (x − x0 )(x − x1 )(x − x2 )(x − x4 ) ; −6h4 (x − x0 )(x − x1 )(x − x2 )(x − x3 ) 24h4 Vậy theo (1.17) P4 (x) = + + + + (x − x1 )(x − x2 )(x − x3 )(x − x4 ) f0 24h4 (x − x0 )(x − x2 )(x − x3 )(x − x4 ) f1 −6h4 (x − x0 )(x − x1 )(x − x3 )(x − x4 ) f2 4h4 (x − x0 )(x − x1 )(x − x2 )(x − x4 ) f3 −6h4 (x − x0 )(x − x1 )(x − x2 )(x − x3 ) f4 24h4 Xét tại điểm x = x0 , chúng ta có: f (x0 ) = f0 L0 (x0 ) + f1 L1 (x0 ) + f2 L2 (x0 ) + f3 L3 (x0 ) + f4 L4 (x0 ) + O(h4 ), f (x0 ) = f0 L0 (x0 ) + f1 L1 (x0 ) + f2 L2 (x0 ) + f3 L3 (x0 ) + f4 L4 (x0 ) + O(h3 ) 20 Vì (x − x1 )(x − x2 )(x − x3 )(x − x4 ) 24h4 25 35 ⇒ L0 (x0 ) = − ; L0 (x0 ) = ; 12h 12h2 (x − x0 )(x − x2 )(x − x3 )(x − x4 ) L1 (x) = −6h4 104 48 ; L1 (x0 ) = − ; ⇒ L1 (x0 ) = 12h 12h2 (x − x0 )(x − x1 )(x − x3 )(x − x4 ) L2 (x) = 4h4 36 114 ⇒ L2 (x0 ) = ; L2 (x0 ) = ; 12h 12h2 (x − x0 )(x − x1 )(x − x2 )(x − x4 ) L3 (x) = −6h4 16 56 ⇒ L3 (x0 ) = ; L3 (x0 ) = − ; 12h 12h2 (x − x0 )(x − x1 )(x − x2 )(x − x3 ) L4 (x) = 24h4 3 11 ⇒ L4 (x0 ) = − ; L4 (x0 ) = 12h 12h2 L0 (x) = Từ đó chúng ta thu được công thức  1   (−25f0 + 48f1 − 36f2 + 16f3 − 3f4 ) + O(h4 ), f (x ) =  0  12h       f (x0 ) = (1.18) 1 (35f0 − 104f1 + 114f2 − 56f3 + 11f4 ) + O(h3 ) 2 12h Hoàn toàn tương tự, lần lượt xét tại các mốc nội suy x, x1 , x2 , x3 , x4 ta sẽ thu được các công thức tương ứng:  1   f (x ) = (−3f0 − 10f1 + 18f2 − 6f3 + f4 ) + O(h4 ),  1  12h    1    f (x2 ) = (−f0 − 8f1 + 8f3 − f4 ) + O(h4 ), 12h (1.19) 1  4  f (x3 ) = (−f0 + 6f1 − 18f2 + 10f3 + 3f4 ) + O(h ),    12h    1   f (x4 ) = (3f0 − 16f1 + 36f2 − 48f3 + 25f4 ) + O(h4 ) 12h 21  1   f (x ) = (11f0 − 20f1 + 6f2 + 4f3 − f4 ) + O(h3 ),  1 2  12h    1    f (x2 ) = (−f0 + 16f1 − 30f2 + 16f3 − f4 ) + O(h3 ), 2 12h (1.20) 1  3  f (x3 ) = (−f0 + 4f1 + 6f2 − 20f3 + 11f4 ) + O(h ),    12h2    1   f (x4 ) = (11f0 − 56f1 + 114f2 − 104f3 + 35f4 ) + O(h3 ) 2 12h Nhận xét: * Bộ công thức (1.18) - (1.20) cho ta các kết quả tính gần đúng đạo hàm bậc nhất và bậc hai với độ chính xác cấp bốn và cấp ba thông qua việc áp dụng đa thức nội suy Lagrange với số nút năm điểm * Hoàn toàn tương tự, chúng ta thu được các công thức tính xấp xỉ đạo hàm bậc bốn với độ chính xác cấp một  1  (4)  (f0 − 4f1 + 6f2 − 4f3 + f4 ) + O(h), f (x ) =  0   h4    1  (4)  rf (x ) = (f0 − 4f1 + 6f2 − 4f3 + f4 ) + O(h), 1  4  h   1 (1.21) f (4) (x2 ) = 4 (f0 − 4f1 + 6f2 − 4f3 + f4 ) + O(h),  h    1  (4)  f (x ) = (f0 − 4f1 + 6f2 − 4f3 + f4 ) + O(h),  3  h4     1   f (4) (x4 ) = 4 (f0 − 4f1 + 6f2 − 4f3 + f4 ) + O(h) h * Trong ứng dụng tính toán, các mốc nội suy x0 , x1 , x2 , x3 , x4 được hiểu tổng quát là năm mốc liên tiếp trong lưới sai phân n + 1, đó là các mốc xk , xk+1 , xk+2 , xk+3 , xk+4 , k + 4 < n Các công thức trên có ý nghĩa rất quan trọng trong việc xây dựng các lược đồ sai phân giải phương trình vi phân với độ chính xác bậc cao 1.3.3 Lược đồ sai phân giải bài toán biên cho phương trình cấp hai với độ chính xác bậc cao Mô hình bài toán: Xét bài toán biên  = f (x), x ∈ [a, b]  u c0 u(a) − c1 u (a) = C,   d0 u(b) + d1 u (b) = D, (1.22) 22 0, c20 + c21 > 0, d20 + d21 > 0 là các hằng số tùy ý (b − a) , Chia đoạn [a, b] bằng n + 1 điểm chia với bước lưới h = n xi = a + ih(i = 0, 1, , n) Kí hiệu: ui = u(xi ), ui = u (xi ), ui = u (xi ) Xét công thức khai triển Taylor tổng quát trong đó c0 , c1 , d0 , d1 h2 h3 (3) h(4) (4) u(x ± h) = u(x) ± hu + u ± u + u + + O(hn ) 2 6 24 Hay ui+1 ui−1 h2 h3 (3) h4 h5 (5) h6 (4) = ui + hui + ui + ui + fi + ui + fi + O(h6 ), 2 6 24 120 720 3 4 5 2 h (3) h h (5) h6 (4) h ui + fi + O(h6 ) = ui − hui + ui − ui + fi − 2 6 24 120 720 Từ đây suy ra ui−1 − 2ui + ui+1 h2 h4 (4) ui = − fi − f + O(h4 ) h2 12 360 i Vậy ta thu được lược đồ sai phân với độ chính xác cấp bốn ui−1 − 2ui + ui+1 h2 h4 (4) = fi + fi + f ; i = 1, 2, , n − 1 h2 12 360 i Sử dụng các công thức tính xấp xỉ đạo hàm với độ chính xác bậc cao (1.18) - (1.21), áp dụng với các đạo hàm tương ứng trong phương trình và điều kiện biên, ta thu được hệ phương trình sai phân với độ chính xác cấp bốn như sau:  c1  c u − (−25u0 + 48u1 − 36u2 + 16u3 − 3u4 ) = C, 0 0   12h  ui−1 − 2ui + ui+1 = Fi , i = 1, 2, , n − 1     d u + d1 (25u − 48u 0 n n n−1 + 36un−2 − 16un−3 + 3un−4 ) = D 12h Trong đó 2 Fi = h h4 (4) h2 fi + fi + f , 12 360 i i = 1, 2, , n − 1 Hệ có dạng thu gọn AU = F , (1.23) ở đây U = (u0 , u1 , , un )T ; F = (F0 , F1 , , Fn )T , ma trận hệ số của hệ được kí hiệu 23          A=         a0,0 a0,1 a1,0 a1,1 0 a2,1 0 0 a0,2 a1,2 a2,2 a3,2 an−3,n−2 0 0 an−2,n−2 an−2,n−1 0 an−1,n−2 an−1,n−1 an−1,n an,n−2 an,n−1 an,n                   Nhận xét: * Hệ phương trình sai phân (1.23) chính là hệ phương trình sai phân tương ứng với bài toán biên cho phương trình vi phân (1.22) với độ chính xác cấp bốn * Trong trường hợp khi điều kiện biên có dạng Dirichlet u(a) = C; u(b) = D, ta thu được lược đồ sai phân với đội chính xác cấp sáu (do không phải sai phân điều kiện biên) * Ma trận của hệ phương trình không phải dạng ba đường chéo có tính chất chéo trội, do đó hệ không giải được bằng thuật toán truy đuổi Bổ đề 1.1: Hệ phương trình AU = F qua hữu hạn phép toán biến đổi luôn chuyển hệ về dạng ba đường chéo có tính chất chéo trội Chúng ta cần chứng minh hai vấn đề: + Hệ phương trình qua hữu hạn phép toán được chuyển về hệ đại số tuyến tính dạng ba đường chéo + Ma trận của hệ có tính chất chéo trội Chứng minh: Theo tính chất của hệ đại số tuyến tính, hệ sẽ không thay đổi nếu ta nhân một phương trình với một số bất kì sau đó cộng vào phương trình khác Sử dụng tính chất trên, ta sẽ biến đổi hệ phương trình (1.23) về dạng hệ phương trình có ma trận ba đường chéo lần lượt qua các bước như sau: a0,4 sau đó cộng vào Bước 1: Nhân phương trình thứ tư với số K1 = − a3,4 phương trình thứ nhất của hệ Qua phép biến đổi ta thu được a0,4 = 0 24 an,n−4 an−3,n−4 sau đó cộng vào phương trình thứ nhất của hệ Qua phép biến đổi ta thu được an,n−4 = 0 Bước 2: Biến đổi tương tự, ta thu được a0,3 = 0; an,n−3 = 0 Bước 3: Biến đổi tương tự, ta thu được a0,2 = 0; an,n−2 = 0 Trong các phép biến đổi trên, các thành phần F0 , Fn cũng nhận được giá trị thay đổi theo từng bước biến đổi Cuối cùng, sau ba bước biến đổi, ta nhận được hệ phương trình tương đương trong đó ma trận của hệ có dạng ba đường chéo với các số hạng được xác định như sau:  c1 c1  a = c + ; a = − ;  0,0 0 0,1  h h  ai−1,i = 1; ai,i = −2; ai,i+1 = 1;   d1  an−1,n = d1 ; an,n = d0 + h h Hoàn toàn tương tự, nhân phương trình thứ n−2 với số K2 = − Với i = 1,2, ,n - 1 Do điều kiện c0 , c1 > 0, d0 , d1 của hệ thỏa mãn tính chất: 0, do đó các hệ số |a0,0 | > |a0,1 | , |an,n | > |an−1,n | , |ai,i | = |ai,i−1 | + |ai,i+1 | , ∀i = 1, 2, , n − 1 tức là hệ thu được là hệ phương trình đại số dạng ba đường chéo có tính chất chéo trội Để kiểm tra độ chính xác của lược đồ đã xây dựng, chúng ta kí hiệu ud là nghiệm đúng của bài toán, u là nghiệm xấp xỉ thu được khi giải hệ phương trình sai phân, ε = ud − u ∞ là sai số giữa nghiệm đúng và nghiệm xấp xỉ trên toàn lưới sai phân, sử dụng thuật toán truy đuổi ba đường chéo giải hệ phương trình sai phân Kết quả kiểm tra độ chính xác của lược đồ được đưa ra trong các Bảng 1.1 và Bảng 1.2 Bảng 1.1 Giá trị sai số ε trên từng lưới điểm c0 = 1; c1 = 2; d0 = 2; d1 = 3 Hàm nghiệm đúng 10 100 1000 −5 −9 sinx + cosx 1.1 × e 1.4 × e 9.0 × e−13 e−x 8.0 × e−6 1.0 × e−9 3.1 × e−13 ex + x4 + cosx 1.0 × e−5 1.7 × e−9 2.0 × e−12 Bảng 1.2 Giá trị sai số ε trên từng lưới điểm c0 = 1; c1 = 0; d0 = 1; d1 = 0 25 Hàm nghiệm đúng 10 100 1000 sinx + cosx 1.1 × e−9 2.1 × e−14 3.1 × e−18 e−x 2.0 × e−10 1.0 × e−14 1.0 × e−18 ex + x4 + cosx 2.0 × e−10 8.0 × e−15 8.0 × e−19 Các kết quả Bảng 1.1 chỉ ra rằng độ chính xác của phương pháp là tương đương với O(h4 ) Khi lựa chọn c1 = d1 = 0 (Bảng 1.2) thì độ chính xác là tương đương với O(h6 ) Kết luận: Bài toán biên cho phương trình vi phân cấp hai luôn luôn tìm được nghiệm xấp xỉ với độ chính xác cấp bốn bằng thuật toán truy đuổi ba đường chéo với độ phức tạp tính toán O(n) 26 Chương 2 Phương pháp lặp giải bài toán biên cho phương trình vi phân phi tuyến cấp bốn Trong chương này, luận văn sẽ giới thiệu một số phương pháp lặp để tìm nghiệm gần đúng cho một số mô hình mô tả bởi phương trình vi phân phi tuyến bậc 4 bao gồm lý thuyết về phương pháp nghiệm trên và nghiệm dưới và phương pháp lặp dựa trên phương trình toán tử áp dụng cho trường hợp tổng quát Nội dung được tham khảo trong các tài liệu [4, 5, 6] 2.1 Mô hình bài toán phi tuyến tổng quát Chúng ta xét mô hình bài toán phi tuyến cấp 4 với hệ điều kiện biên đầy đủ  (4)  u = f (x, u, u , u , u ), x ∈ [a, b] (2.1) a u(a) − a1 u (a) = A, b0 u(b) + b1 u (b) = B,  0 c0 u (a) − c1 u (a) = C, d0 u (b) + d1 u (b) = D trong đó f là hàm số vế phải liên tục với tất cả các biến số a0 , a1 , b0 , b1 , c0 , c1 , d0 , d1 , A, B, C, D là các hằng số mô tả giá trị điều kiện biên tại hai điểm đầu mút Trong thực tế, có nhiều mô hình cơ học được mô tả bằng bài toán phi tuyến trên tùy theo các giá trị của các hằng số Mô hình trên chính là mô hình phi tuyến cấp 4 phức tạp nhất Giả sử hàm f thỏa mãn các giả thiết để phương trình tồn tại và duy nhất nghiệm Luận văn sẽ nghiên cứu lý thuyết và mô hình một số phương pháp lặp tìm nghiệm gần đúng của mô hình trên trong một số trường hợp cụ thể 27 2.2 Mô hình bài toán phi tuyến cấp 4 với hệ điều kiện biên thuần nhất u(4) (x) = f (x, u(x), u (x)), 0

Ngày đăng: 07/05/2020, 07:52

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan