Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 77 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
77
Dung lượng
1,05 MB
Nội dung
ĐẠI HỌC THÁI NGUYÊN KHOA CÔNG NGHỆ THÔNG TIN Cao Thị Anh Thư Mơ hình tính tốn song song giải toán biên phức tạp dựa tư tưởng chia miền Chuyên ngành: Khoa học máy tính Mã số: 60.48.01 Luận văn thạc sỹ Khoa học máy tính Người hướng dẫn Khoa học: TS Vũ Vinh Quang Thái Nguyên - 2009 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên Tai ngay!!! Ban co the xoa dong chu nay!!! http://www.lrc-tnu.edu.vn MỤC LỤC ĐẶT VẤN ĐỀ Chương 1: Các kiến thức giải số phương trình đạo hàm riêng 1.1 PHƯƠNG PHÁP SAI PHÂN 1.2 THUẬT TOÁN THU GỌN KHỐI LƯỢNG TÍNH TỐN 1.2.1 Bài toán biên thứ 1.2.2 Bài toán biên thứ hai 12 1.3 ÁP DỤNG ĐỐI VỚI PHƯƠNG TRÌNH ELLIPTIC 15 1.3.1 Bài toán biên Dirichlet 15 1.3.2 Bài toán biên hỗn hợp 16 1.4 PHƯƠNG PHÁP LẶP VÀ CÁC SƠ ĐỒ LẶP CƠ BẢN 18 1.4.1 Không gian lượng 18 1.4.2 Phương pháp lặp giải phương trình tốn tử 19 Chương 2: Cơ sở Toán học phương pháp chia miền 27 2.1 CƠNG THỨC ĐA MIỀN VÀ PHƯƠNG TRÌNH STEKLOV- POICARE 28 2.2 CÁC PHƯƠNG PHÁP LẶP ĐƠN CƠ SỞ 30 2.2.1 Phương pháp Dirichlet-Neumann 30 2.2.2 Phương pháp Neumann-Neumann 31 2.2.3 Phương pháp Robin 31 2.3 MỘT SỐ THUẬT TOÁN CHIA MIỀN 33 2.3.1 Thuật toán chia miền Patrick Le Talle 33 2.3.2 Thuật toán chia miền J.R.Rice, E.A Vavalis, Daopi Yang 35 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 2.3.3 Thuật toán chia miền Saito-Fujita 37 2.3.4 Phương pháp DQuangA-VVQuang 38 2.3.5 Phương pháp chia miền giải toán biên gián đoạn mạnh 40 Chương 3: Mơ hình tính tốn song song giải toán Elliptic dựa chia miền 43 3.1 CÁC BƯỚC LẶP TRÊN NHIỀU MIỀN CON 43 3.2 MƠ HÌNH TÍNH TỐN SONG SONG GIẢI BÀI TỐN BIÊN GIÁN ĐOẠN MẠNH 45 3.2.1.Hướng tiếp cận hiệu chỉnh đạo hàm 46 3.2.2 Hướng tiếp cận hiệu chỉnh hàm 47 3.3 CÁC KẾT QUẢ THỰC NGHIỆM 49 3.4 ỨNG DỤNG MƠ HÌNH SONG SONG GIẢI BÀI TOÁN CƠ HỌC 51 3.4.1 Sơ đồ song song theo hướng hiệu chỉnh đạo hàm 53 3.4.2 Sơ đồ song song theo hướng hiệu chỉnh hàm 57 3.4.3 Các kết thực nghiệm 60 NHẬN XÉT KẾT LUẬN 63 DANH MỤC CƠNG TRÌNH ĐÃ CƠNG BỐ LIÊN QUAN ĐẾN LUẬN VĂN 64 TÀI LIỆU THAM KHẢO 65 PHỤ LỤC 68 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn LỜI CẢM ƠN Sau thời gian nghiên cứu thực luận văn thạc sỹ chuyên ngành Khoa học máy tính, đến luận văn :"Mơ hình tính tốn song song giải toán biên phức tạp dựa tư tưởng chia miền" tơi hồn thiện đầy đủ Để có kết mong muốn tơi nhận quan tâm, bảo giúp đỡ từ thầy giáo hướng dẫn: Tiến sĩ Vũ Vinh Quang - Phó trưởng Khoa Cơng nghệ thơng tin- Đại học Thái Nguyên Nhân dịp xin trân trọng gửi lời cảm ơn tới thầy giáo, vị giáo sư Viện Công nghệ Thông tin, thầy cô giáo thuộc Khoa Công nghệ thông tin - Đại học Thái Nguyên truyền đạt kiến thức bổ ích cho học viên cao học khố nơi học tập nghiên cứu suốt năm qua Tơi xin bày tỏ tình cảm lời cảm ơn chân thành tới đồng nghiệp Viễn thông Thái Nguyên, tới bạn bè người thân gia đình khích lệ, động viên, giúp đỡ thời gian qua Một lần xin gửi lời cảm ơn sâu sắc tới thầy giáo Vũ Vinh Quang hướng dẫn, tạo điều kiện để tơi học tập nghiên cứu hồn thiện luận văn Tơi xin trân trọng cảm ơn! Thái Nguyên, ngày 30 tháng10 năm 2009 Học viên Cao Thị Anh Thư Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẶT VẤN ĐỀ Lý thuyết phương pháp chia miền phát triển vịng 20 năm qua, xuất phát từ cơng thức đa miền phương trình biên chung SteklovPoincare, phương pháp chia miền phát triển từ sơ đồ lặp như: Sơ đồ Dirichlet-Neumann, sơ đồ Neumann-Neumann sơ đồ Robin nghiên cứu tác giả giới Có thể thấy sở phương pháp xuất phát từ giá trị điều kiện biên phân chia từ xây dựng sơ đồ lặp dạng hai lớp phương trình tốn tử Việc nghiên cứu tính chất hội tụ sơ đồ lặp sử dụng kết không gian Sobolev tốn tử Steklov-Poincare Nội dung luận văn sở lý thuyết chia miền, luận văn đề xuất mơ hình tính tốn song song giải toán với điều kiện biên phức tạp tư tưởng chia miền, tiến hành cài đặt thử nghiệm mơ hình đồng thời ứng dụng mơ hình song song giải tốn môi trường vật lý bán dẫn Luận văn cấu trúc gồm chương: Chương 1: Đưa sở phương pháp lưới, thuật tốn thu gọn khối lượng tính tốn giải phương trình lưới sở lý thuyết sơ đồ lặp tổng quát Chương 2: Trình bày tóm tắt sở tốn học phương pháp chia miền, sơ đồ lặp phương pháp chia miền Một số phương pháp chia miền tác giả giới đặc biệt sơ đồ lặp tư tưởng hiệu chỉnh hàm đạo hàm biên phân chia tác giả Việt Nam Nhật Bản, phương pháp chia miền toán biên gián đoạn mạnh Chương 3: Trên sở sơ đồ lặp theo hướng hiệu chỉnh hàm đạo hàm, luận văn đề xuất sơ đồ tính tốn song song dựa tư tưởng hiệu Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn chỉnh hàm đạo hàm, tiến hành tính tốn số so sánh hai sơ đồ tính tốn song song đồng thời áp dụng phương pháp song song giải toán học tác giả giới quan tâm Các kết lý thuyết kiểm tra chương trình thực nghiệm lập trình mơi trường MATLAB máy tính PC Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Chương CÁC KIẾN THỨC CƠ BẢN VỀ GIẢI SỐ PHƢƠNG TRÌNH ĐẠO HÀM RIÊNG Trong chương này, chúng tơi trình bày số kiến thức liên quan đến việc giải số phương trình đạo hàm riêng bao gồm sở phương pháp lưới, thuật tốn thu gọn khối lượng tính toán lý thuyết phương pháp lặp giải phương trình tốn tử Những kiến thức sở kết tham khảo từ tài liệu [ 5, 10, 16, 21] 1.1 Phƣơng pháp sai phân Lƣới sai phân: u f , x , Xét toán x u g, (1.1) ( x, y) R2 , a x b, c y d , chọn số nguyên N > M >1, đặt h = (b a) / N gọi bước lưới theo x , k = (d c) / M gọi bước lưới theo y Đặt xi = a ih, y j = c jk , i N , j M Mỗi điểm ( xi , y j ) gọi nút lưới ký hiệu nút (i, j ) Tập tất nút ký hiệu hk Nút biên gọi nút biên; tập tất nút biên ký hiệu hk , tập hk = hk hk gọi lưới sai phân Hàm lƣới: Mỗi hàm số xác định nút lưới gọi hàm lưới, giá trị hàm lưới u ( x, y ) nút lưới (i, j ) viết tắt ui , j Mỗi hàm u ( x, y ) xác định ( x, y ) tạo hàm lưới u xác định ui , j Bài toán sai phân: Ký hiệu Lu f tập hàm số hai biến x, y có đạo hàm riêng đến cấp m liên tục = Giả sử tốn có nghiệm u C () , đó: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 4u 4u max( x , y ) | ( x, y) | C1 = const , max( x , y ) | ( x, y ) | C2 = const x y Do theo cơng thức Taylor ta có: u ( xi 1 , y j ) = u ( xi ) h, y j = u ( xi , y j ) h u h2 2u h3 3u o(h ) hay x 2! x 3! x u ( xi 1 , y j ) 2u ( xi , y j ) u ( xi 1 , y j ) 2u = o( h ) h x Một cách tương tự: u k 2u k 3u u ( xi , y j 1 ) = u ( xi , y j k ) = u ( xi , y j ) k o( k ) y 2! y 3! y u k 2u k 3u u ( xi , y j 1 ) u ( xi , y j k ) = u ( xi , y j ) k o(k ) y 2! y 3! y Do đó: u ( xi , y j 1 ) 2u ( xi , y j ) u ( xi , y j 1 ) 2u = o( k ) k y Vậy ta có: u ( xi 1 , y j ) 2u ( xi , y j ) u ( xi 1 , y j ) u ( xi , y j 1 ) 2u ( xi , y j ) u ( xi , y j 1 ) = h2 k2 u o(h k ) Ta đặt: hk u ui 1, j - 2ui , j ui -1, j ui , j 1 - 2ui , j ui , j -1 -1 h2 k2 Khi chứng tỏ: khu = u o(h2 k ) Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn Số hạng O(h +k ) vơ bé bậc hai Ta nói tốn tử kh xấp xỉ tốn tử , điều cho phép thay phương trình vi phân phương trình sai phân: hk u = fij , f ij = f ( xi , y j ), ( xi , y j ) hk tức là: ui 1, j 2ui , j ui 1 j ui , j 1 2ui , j ui , j f ( xi , y j ), ( xi , y j ) hk h2 k2 (1.2) đồng thời thay điều kiện biên điều kiện: uij g ( xi , y j ), ( xi , y j ) hk (1.3) Ta tốn sai phân hồn chỉnh: tìm hàm lưới u nút (i, j ) thoả mãn hệ phương trình sai phân (1.2) với điều kiện biên (1.3) Như việc tìm nghiệm xấp xỉ tốn vi phân (1.1) với độ xác cấp hai đưa việc giải toán sai phân (1.2) với điều kiện (1.3) phương pháp đại số 1.2 Thuật tốn thu gọn khối lƣợng tính tốn Được đề xuất Samarski-Nicolaev Bằng phép biến đổi đơn giản vec tơ ma trận, toán sai phân ln ln đưa hệ phương trình vec tơ điểm thuộc dạng sau đây: 1.2.1 Bài toán biên thứ Xét toán biên thứ phƣơng trình véc tơ ba điểm Yj 1 CYj Yj 1 = Fj , j N , Y0 = F0 , YN = FN (1.4) Trong Yj véc tơ cần tìm, C ma trận vng, Fj véc tơ cho trước ý tưởng phương pháp rút gọn hoàn toàn giải (1.1) khử liên tiếp ẩn Yj với j lẻ, sau từ phương trình cịn lại khử Yj Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn với j bội 2, bội 4,… Mỗi bước khử giảm nửa số ẩn Như N = 2n sau số lần khử cịn lại phương trình chứa véc tơ ẩn YN / mà từ YN / tính qua Y0 YN Sau có Y0 ,YN / YN trình ngược lại việc tìm Yj với j bội N N bội ,… Rõ ràng, phương pháp rút gọn hoàn toàn biến thể phương pháp khử Gauss áp dụng cho tốn (1.4) việc khử biến thực theo thứ tự đặc biệt Sau đây, ta mô tả cụ thể phương pháp Giả sử N = 2n , n > Ký hiệu C (0) = C , Fj(0) = Fj ; j = 1,2, , N Khi (1.4) viết dạng Yj 1 C 0Yj Yj 1 = Fj(0) (1 j N 1) , Y0 = F0 , YN = FN (1.5) Bước khử thứ nhất: Từ phương trình đầu (1.5) ta khử Yj với j lẻ Muốn ta viết phương trình liên tiếp: Yj C (0)Yj 1 Yj = Fj(0)1 , Yj 1 C (0)Yj Yj 1 = Fj(0) , Yj C (0)Yj 1 Yj = Fj(0)1 Nhân vế phương trình thứ hai với C (0) vào bên trái cộng phương trình lại ta Yj 2 C (1)Yj Yj = Fj(1)1 , j = 2,4, , N , Y0 = F0 , YN = FN (1.6) đó: C (1) = (C( 0))2 E Fj(1) = Fj(0)1 c (0) Fj(0) Fj(0)1 , j = 2,4, , N Nhận xét hệ (1.6) chứa Yj với j chẵn, số véc tơ ẩn Yj N Do giải hệ Yj với j lẻ tìm từ phương trình Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 60 3.4.3 Các kết thực nghiệm Để kiểm tra hội tụ thuật toán, chúng tơi cho trước nghiệm u * tốn từ xác định giá trị điều kiên biên Dirichlet Neumann biên tất đoạn biên toán xét Sai số err=max( u ij uij* ) lấy điểm lưới uij nghiệm xấp xỉ, uij* nghiệm điểm lưới (i, j ) Trong kết thực nghiệm sau đây, đưa số liệu thực nghiệm việc lựa chọn tham số lặp, số bước lặp sai số tương ứng trường hợp cho trước nghiệm tốn Các kết lập trình thuật toán song song theo hướng hiệu chỉnh đạo hàm, việc lập trình thuật tốn song song theo hướng hiệu chỉnh hàm hoàn toàn tương tự Tham số lặp 0.1 0.2 0.3 0.4 0.5 0.6 0.7 Số bước lặp 40 27 17 12 16 40 Sai số 5.10-4 9.10-5 9.10-5 9.10-5 8.10-5 8.10-5 2.10-4 Bảng Số liệu thực nghiệm đồ thị hàm nghiệm u* ( x1, x2 ) sinx1 sinx , a / 6, b / Tham số lặp 0.1 0.2 0.3 0.4 0.5 0.6 0.7 Số bước lặp 40 40 22 16 12 30 40 Sai số 0.05 6.10-4 6.10-4 6.10-4 6.10-4 8.10-4 0.05 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 61 Bảng Số liệu thực nghiệm đồ thị hàm nghiệm u* ( x1, x2 ) x13 x2e x1 x32 x1e x2 , a / 6, b / Tham số lặp 0.1 0.2 0.3 0.4 0.5 0.6 0.7 Số bước lặp 40 30 18 14 10 17 40 Sai số 0.05 0.002 0.001 0.002 0.002 0.002 0.002 Bảng Số liệu thực nghiệm đồ thị hàm nghiệm u* ( x1 , x2 ) e x1 log(x1 5) sinx log( x1 6), a / 6, b / Tham số lặp 0.1 0.2 0.3 0.4 0.5 0.6 0.7 Số bước lặp 40 34 22 15 12 20 40 Sai số 0.0047 9.10-5 6.10-5 8.10-5 4.10-5 7.10-5 0.0025 Bảng Số liệu thực nghiệm đồ thị hàm nghiệm u* ( x1, x2 ) x12 x 22 , a / 6, b / Nhận xét: Thuật tốn ln ln hội tụ với vế phải phương trình điều kiện biên đoạn biên chọn cách tùy ý, thuật toán dừng dãy lặp thỏa mãn điều kiện dừng lặp sai số bước lặp liên tiếp nhỏ epsilon cho trước Trong trường hợp vế phải điều kiện biên chọn tùy ý theo cơng thức: Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 62 sin( x2 ) cos(x1 ) g e x1 log( x2 5) sin( x2 )log( x1 6) f x14 x24 epxilon=10-10 Khi thực thuật toán trên, sau 31 lần lặp ta thu nghiệm xấp xỉ mô tả đồ thị hình Hình 7: Đồ thị nghiệm xấp xỉ - số buớc lặp count=31 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 63 NHẬN XÉT KẾT LUẬN Nội dung luận văn trình bày kết nghiên cứu mơ hình tính tốn song song sở phương pháp chia miền, lĩnh vực giới quan tâm phát triển Kết luận văn gồm có: Nghiên cứu lý thuyết chung sở toán học phương pháp chia miền, sơ đồ lặp sở số thuật toán chia miền tác giả giới nước Đề xuất mơ hình tính tốn song song hai hướng hiệu chỉnh hàm đạo hàm giải mơ hình tốn biên gián đoạn mạnh phức tạp, tiến hành cài đặt thử nghiệm mơ hình tính tốn máy tính điện tử Áp dụng mơ hình tính tốn song song giải tốn mơ q trình hoạt động hệ vật lý bán dẫn thực tế Tiến hành cài đặt thử nghiệm máy tính điện tử Các kết thực nghiệm tính tốn chứng tỏ mơ hình tính tốn song song đề xuất đắn Các kết đề tài khẳng định tính ưu việt phương pháp chia miền giải lớp toán elliptic cấp hai miền hình học phức tạp điều kiện biên phức tạp Đề tài mở số hướng nghiên cứu phương pháp chia miền lớp phương trình bậc cao, lớp phương trình parabolic hyperbolic, ứng dụng phương pháp chia miền khảo sát toán học vật lý với điều kiện mơi trường phức tạp Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 64 DANH MỤC CƠNG TRÌNH ĐÃ CƠNG BỐ LIÊN QUAN ĐẾN LUẬN VĂN [1] Vũ Vinh Quang, Trương Hà Hải, Cao Thị Anh Thư, Mơ hình tính tốn song song giải toán biên hỗn hợp mạnh dựa chia miền, Tạp chí Khoa học Cơng nghệ Đại học Thái Nguyên, T.2(50):52-57, 2009 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 65 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Đặng Quang á, Vũ Vinh Quang (2006), “Nghiên cứu thực nghiệm phương pháp chia miền giải toán với điều kiện biên hỗn hợp miền hình học phức tạp”, Tạp chí Tin học điều khiển học, T.21, tr.216-229 [2] Đặng Quang á, Vũ Vinh Quang (2006), “Phương pháp chia miền giải tốn biên hỗn hợp mạnh”, Tạp chí Tin học điều khiển học, T.22, tr.307318 [3] Đặng Quang á, Vũ Vinh Quang (2006), “Một số kết nghiên cứu phương pháp chia miền giải phương trình elliptic phương trình song điều hịa”, Hội nghị khoa học Kỷ niệm 30 năm ngày thành lập Viện Công nghệ Thông tin [4] Vũ Vinh Quang (2007), Phương pháp chia miền giải phương trình elliptic cấp hai phương trình song điều hịa miền hình học phức tạp, Luận án Tiến sĩ Tốn học, Viện Cơng nghệ thơng tin, Hà Nội [5] Vũ Vinh Quang (2005), Các kết việc ứng dụng thuật tốn thu gọn khối lượng tính tốn giải toán elliptic với điều kiện biên hỗn hợp, Hội thảo Khoa học Toàn quốc “Phát triển công cụ Tin học trợ giúp cho giảng dạy, nghiên cứu ứng dụng Toán học”, Hà Nội, tr.247-256 [6] Đặng Quang Á, Vũ Vinh Quang, Phương pháp song song giải toán biên hỗn hợp dựa chia miền, Hội thảo Quốc gia Công nghệ Thông tin truyền thông, Huế 6/2008, 329-340, 2008 [7] Vũ Vinh Quang, Trương Hà Hải, Cao Thị Anh Thư, Mơ hình tính tốn song song giải tốn biên hỗn hợp mạnh dựa chia miền, Tạp chí Khoa học Cơng nghệ Đại học Thái Ngun, T.2(50):52-57, 2009 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 66 Tiếng Anh [8] Arad M., Yosibash Z., Ben-Dor G and Yakhot A (2005), “Computing Flux Intensity Factors by a Boundary Method for Elliptic Equation with Singularities,” Preprint submitted to Elsevier Science, 14 October [9] Adams R (1975), Shape Sobolev Spaces, Acad Press, New YorkSanfrancisco-London [10] Cioranescu D and Donato P (1999), An Introduction to Homogennization, Lectures series in Mathematics and its Applications, V.17, Oxford Univesity Press, Oxford [11] Diaz M.A., Herrera I (2003), Indirect Method of Collocation for the Biharmonic Equation, Fourtenth International Conference on Domain Decomposition Methods, Editors: Ismael Herrera, David E Keyes, Olof B Widlund, Robert Yates [12] Dang Quang A, Vu Vinh Quang, “A domaindecompositionmethod for solving an elliptic boundary value problem”, Methods of Complex and Clifford Analysis (Proceedings of 2004 International Conference on Applied Mathematics), SAS Iternational Publication, Delhi, pp.309-319 [13] Elliotis M., Georgiou G., Xenophontos C.(2005), Solution of the stickslip problem with the singular function boundary integral method, $5^{th}$ GRACM International Congress Computational Mechanics Limassol [14] Funaro D., Quarteroni A., Zanolli P.(1998), “An iterative procedure with interface relaxation for domain decomposition method”, SIAM J Numer Anal 25(6), pp.1213-1236 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 67 [15] Gevarsio P (2005), “Homogeneous and heterogeneous domain decomposition methods for plate bending problem”, Comput Methods Appl Mech Engrg 194, pp 4321-4343 [16] Marchuk G.I (1982), Methods of Numerical Mathematics, Springer, New York [17] Marchuk G.I and Kuznetsov Yu, Matsokin (1986), “Fictitous domains and domain decomposition method”, Soviet J of Num Anal and Math Modelling, V 1, No 1, pp.5-41 [18] Poullikkas A., Karageorghis A., Georgiou G (1998), “Methods of fundamental solutions for harmonic and biharmonic boundary value problems”, Computational Mechanics, (21), pp.416-423 [19] Quarteroni A and Valli A (1999), Domain Decomposition Methods for Partial Differential Equations, Clarendon Press Oxford [20] Samarskij A.(2001), The theory of diffence schemes, New York: Marcel Dekker [21] Samarskij A and Nikolaev E (1989), Numerical Methods for Grid Equations, Vol 2, Birkhauser, Basel [22] Saito N and Fujita H (2001), Operator Theoretical Analysis to Domain Decomposition Methods, 12th Int Conf on Domain Decomposition Methods, 63-70, [23] Saito N and Fujita H (2000), Remarks on Trace of H1-functions defined in a Domain with corners, J Math, Sci Unv Tokyo, (7), pp.325-345 Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 68 PHẦN PHỤ LỤC % Chuong trinh Quang_Thu_1 giai bai toan co hoc bang mo hinh tinh toan % song song % Truong hop mien hinh hoc phuc tap-chia SM mien % Truong hop biet truoc nghiem dung % phi la ham ve phai % b1,b2,b3,b4: la cac gia tri tren bien trai,phai,duoi,tren % u la nghiem bai toan % Ngay lap 18/09/2008 clear all clc teta=0.5; a=1;b=1;cc=0; SM=21;%So mien chia count=0; epxilon=3*10^(-4);saiso=10; n=6; N=2^n; M=N; q1=1;q2=N+1;h1=a/M;h2=b/N;l1=a;l2=b;x10=0;x20=0; %buoc lap - Gia tri ban dau eta=0; for k=1:SM-1; for j=0:N; etak(k,j+1)=0; end; end; for i=0:SM*M; for j=0:N; ud(i+1,j+1)=u(x10+i*h1,x20+j*h2); w(i+1,j+1)=0; end; end; thoigian=cputime; while and(countepxilon); count=count+1; %Giai cac bai toan tren mien le for k=1:2:SM; p1=(k-1)*M+1;p2=k*M+1; x10=(k-1)*a;x20=0; % Gia tri ve phai for i=0:M; for j=0:N; x1=x10+i*h1; x2=x20+j*h2; Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 69 phi(i+1,j+1)=vp1(x1,x2,cc); % Ham ve phai end; end; % Dieu kien tren canh trai va phai for j=0:N; x2=x20+j*h2; if k==1 b1(j+1)=u(x10,x2); else b1(j+1)=etak(k-1,j+1); end; if k==SM b2(j+1)=u(x10+l1,x2); else b2(j+1)=etak(k,j+1); end; end; % Dieu kien tren canh duoi va tren for i=0:M; x1=x10+i*h1; b3(i+1)=u(x1,x20); b4(i+1)=u(x1,x20+l2); end; if k==1; uu=u0100(phi,b1,b2,b3,b4,l1,l2,cc,x10,x20,M,N,n,p1,p2,q1,q2); w(p1:p2,q1:q2)=uu(p1:p2,q1:q2); else if k==SM; uu=u1000(phi,b1,b2,b3,b4,l1,l2,cc,x10,x20,M,N,n,p1,p2,q1,q2); w(p1:p2,q1:q2)=uu(p1:p2,q1:q2); else uu=u1100(phi,b1,b2,b3,b4,l1,l2,cc,x10,x20,M,N,n,p1,p2,q1,q2); w(p1:p2,q1:q2)=uu(p1:p2,q1:q2); end; end; end;%Het vong lap mien le %Giai cac bai toan tren mien chan for k=2:2:SM-1; p1=(k-1)*M+1;p2=k*M+1; x10=(k-1)*a;x20=0; % Gia tri ve phai for i=0:M; for j=0:N; Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 70 x1=x10+i*h1; x2=x20+j*h2; phi(i+1,j+1)=vp1(x1,x2,cc); % Ham ve phai end; end; % Dieu kien tren canh trai va phai for j=0:N; b1(j+1)=w(p1,j+1); b2(j+1)=w(p2,j+1); end; % Dieu kien tren canh duoi va tren for i=0:M; x1=x10+i*h1; b3(i+1)=u(x1,x20); b4(i+1)=dhy(x1,x20+l2); end; uu=u0001(phi,b1,b2,b3,b4,l1,l2,cc,x10,x20,M,N,n,p1,p2,q1,q2); w(p1:p2,q1:q2)=uu(p1:p2,q1:q2); end;%Het vong lap mien chan % Hieu chinh gia tri etak(j) tren bien for k=2:2:SM-1; p1=(k-1)*M+1;p2=k*M+1; x10=(k-1)*a;x20=0; for j=0:N; x2=x20+j*h2; ph0(k-1,j+1)=vp1(x10,x2,cc); ph0(k,j+1)=vp1(x10+l1,x2,cc); end; for j=1:N-1; du1=1/h1*(w(p1+1,q1+j)-w(p1,q1+j))+h1/(2*h2*h2)*(w(p1,q1+j-1)2*w(p1,q1+j)+w(p1,q1+j+1))+h1/2*ph0(k-1,j+1); du2=1/h1*(w(p2-1,q1+j)-w(p2,q1+j))+h1/(2*h2*h2)*(w(p2,q1+j-1)2*w(p2,q1+j)+w(p2,q1+j+1))+h1/2*ph0(k,j+1); etak(k-1,j+1)=(1-teta)*etak(k-1,j+1)+teta*du1; etak(k,j+1)=(1-teta)*etak(k,j+1)-teta*du2; end; end;%Het vong lap hieu chinh saiso=0; for i=0:SM*M; for j=0:N; if abs(w(i+1,j+1))>10^(-7); if abs((w(i+1,j+1)-ud(i+1,j+1))/w(i+1,j+1))>saiso; Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 71 saiso=abs((w(i+1,j+1)-ud(i+1,j+1))/w(i+1,j+1)); end; end; end; end; %for i=0:SM*M; % for j=0:N; % if abs(w(i+1,j+1)-ud(i+1,j+1))>saiso; % saiso=abs(w(i+1,j+1)-ud(i+1,j+1)); % end; % end; %end; saiso end;%Het vong lap while thoigian=cputime-thoigian count % Chuong trinh Quang_Thu_3 giai bai toan co hoc bang mo hinh tinh toan % song song - so hieu chinh ham saito-fujita % Truong hop mien hinh hoc phuc tap-chia SM mien % Truong hop biet truoc nghiem dung % phi la ham ve phai % b1,b2,b3,b4: la cac gia tri tren bien trai,phai,duoi,tren % u la nghiem bai toan % Ngay lap 18/09/2008 clear all clc teta=0.9; a=1;b=1;cc=0; SM=21;%So mien chia count=0; epxilon=1*10^(-4);saiso=10; n=6; N=2^n; M=N; q1=1;q2=N+1;h1=a/M;h2=b/N;l1=a;l2=b;x10=0;x20=0; %buoc lap - Gia tri ban dau eta=0; for k=1:SM; for j=0:N; etak(k,j+1)=0; du1(k,j+1)=0; du2(k,j+1)=0; end; end; for i=0:SM*M; for j=0:N; Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 72 ud(i+1,j+1)=u(x10+i*h1,x20+j*h2); w(i+1,j+1)=0; end; end; thoigian=cputime; while and(countepxilon); count=count+1; %Giai cac bai toan tren mien chan for k=2:2:SM-1; p1=(k-1)*M+1;p2=k*M+1; x10=(k-1)*a;x20=0; % Gia tri ve phai for i=0:M; for j=0:N; x1=x10+i*h1; x2=x20+j*h2; phi(i+1,j+1)=vp1(x1,x2,cc); % Ham ve phai end; end; % Dieu kien tren canh trai va phai for j=0:N; x2=x20+j*h2; b1(j+1)=etak(k-1,j+1); b2(j+1)=etak(k,j+1); end; % Dieu kien tren canh duoi va tren for i=0:M; x1=x10+i*h1; b3(i+1)=u(x1,x20); b4(i+1)=dhy(x1,x20+l2); end; uu=u0001(phi,b1,b2,b3,b4,l1,l2,cc,x10,x20,M,N,n,p1,p2,q1,q2); w(p1:p2,q1:q2)=uu(p1:p2,q1:q2); for k=2:2:SM-1;%xac dinh gia tri dao ham p1=(k-1)*M+1;p2=k*M+1; x10=(k-1)*a;x20=0; for j=0:N; x2=x20+j*h2; ph0(k-1,j+1)=vp1(x10,x2,cc); ph0(k,j+1)=vp1(x10+l1,x2,cc); end; for j=1:N-1; du1(k-1,j+1)=1/h1*(w(p1+1,q1+j)-w(p1,q1+j))+h1/(2*h2*h2)*(w(p1,q1+j-1)2*w(p1,q1+j)+w(p1,q1+j+1))+h1/2*ph0(k-1,j+1); Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 73 du2(k,j+1)=1/h1*(w(p2-1,q1+j)-w(p2,q1+j))+h1/(2*h2*h2)*(w(p2,q1+j-1)2*w(p2,q1+j)+w(p2,q1+j+1))+h1/2*ph0(k,j+1); end; du1(k-1,1)=dhx(x10,x20);du1(k-1,N+1)=dhx(x10,x20+l2); du2(k,1)=-dhx(x10+l1,x20);du2(k,N+1)=-dhx(x10+l1,x20+l2); end; end;%Het vong lap mien chan %Giai cac bai toan tren mien le for k=1:2:SM; p1=(k-1)*M+1;p2=k*M+1; x10=(k-1)*a;x20=0; % Gia tri ve phai for i=0:M; for j=0:N; x1=x10+i*h1; x2=x20+j*h2; phi(i+1,j+1)=vp1(x1,x2,cc); % Ham ve phai end; end; % Dieu kien tren canh trai va phai for j=0:N; x2=x20+j*h2; if k==1 b1(j+1)=u(x10,x2); else b1(j+1)=-du2(k-1,j+1); end; if k==SM b2(j+1)=u(x10+l1,x2); else b2(j+1)=du1(k,j+1); end; end; % Dieu kien tren canh duoi va tren for i=0:M; x1=x10+i*h1; b3(i+1)=u(x1,x20); b4(i+1)=u(x1,x20+l2); end; if k==1; uu=u0100(phi,b1,b2,b3,b4,l1,l2,cc,x10,x20,M,N,n,p1,p2,q1,q2); w(p1:p2,q1:q2)=uu(p1:p2,q1:q2); else Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 74 if k==SM; uu=u1000(phi,b1,b2,b3,b4,l1,l2,cc,x10,x20,M,N,n,p1,p2,q1,q2); w(p1:p2,q1:q2)=uu(p1:p2,q1:q2); else uu=u1100(phi,b1,b2,b3,b4,l1,l2,cc,x10,x20,M,N,n,p1,p2,q1,q2); w(p1:p2,q1:q2)=uu(p1:p2,q1:q2); end; end; end;%Het vong lap mien le % Hieu chinh gia tri etak(j) tren bien for k=2:2:SM-1; p1=(k-1)*M+1;p2=k*M+1; for j=0:N; etak(k-1,j+1)=(1-teta)*etak(k-1,j+1)+teta*w(p1,j+1); etak(k,j+1)=(1-teta)*etak(k,j+1)+teta*w(p2,j+1); end; end;%Het vong lap hieu chinh saiso=0; for i=0:SM*M; for j=0:N; if abs(w(i+1,j+1))>10^(-7); if abs((w(i+1,j+1)-ud(i+1,j+1))/w(i+1,j+1))>saiso; saiso=abs((w(i+1,j+1)-ud(i+1,j+1))/w(i+1,j+1)); end; end; end; end; saiso end;%Het vong lap while thoigian=cputime-thoigian count Số hóa Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn