Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 67 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
67
Dung lượng
2,93 MB
Nội dung
ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM ——————————– NGUYỄN THẢO NHI NGHIỆM SỐ CHO PHƯƠNG TRÌNH PHI TUYẾN KHÓA LUẬN TỐT NGHIỆP Đà Nẵng - 2021 ĐẠI HỌC ĐÀ NẴNG TRƯỜNG ĐẠI HỌC SƯ PHẠM ——————————– NGUYỄN THẢO NHI NGHIỆM SỐ CHO PHƯƠNG TRÌNH PHI TUYẾN KHĨA LUẬN TỐT NGHIỆP Người hướng dẫn khoa học: TS Phạm Quý Mười Đà Nẵng - 2021 LỜI CẢM ƠN Lời đầu tiên, xin cho phép em gửi lời cám ơn chân thành tới thầy giáo TS Phạm Quý Mười tận tình hướng dẫn động viên em suốt q trình thực đề tài, nhờ em hồn thành khóa luận Trong q trình nghiên cứu thực hiện, em gặp khơng khó khăn tìm tịi nghiên cứu tài liệu hạn chế mặt kiến thức Tuy vậy, nhờ giúp đỡ tận tình từ quý thầy giáo, quan tâm gia đình bạn bè giúp em có thêm động lực phấn đấu để hồn thành khóa luận Cuối cùng, em xin gửi lời cám ơn chân thành đến quý thầy, hội đồng chấm khóa luận giành thời gian để xem xét góp ý cho điểm cịn thiếu xót Đây kinh nghiệm q báu thân em suốt trình học tập nghiên cứu Khoa Toán Trường Đại học Sư phạm - Đại học Đà Nẵng Em xin chân thành cảm ơn! Nguyễn Thảo Nhi MỤC LỤC MỞ ĐẦU CHƯƠNG KIẾN THỨC CƠ SỞ 1.1 Không gian metric R 1.2 Hàm số không gian R 1.3 Nghiệm khoảng phân ly nghiệm phương trình phi tuyến 10 1.4 Sai số tuyệt đối, sai số tương đối tốc độ hội tụ 11 CHƯƠNG CÁC PHƯƠNG PHÁP TÌM NGHỆM SỐ CHO PHƯƠNG TRÌNH PHI TUYẾN 12 2.1 Phương pháp chia đôi 12 2.1.1 Nội dung phương pháp 12 2.1.2 Sự hội tụ 13 2.1.3 Đánh giá sai số 14 2.1.4 Phương pháp thực 15 2.1.5 Ví dụ minh họa 16 2.2 Phương pháp lặp đơn (vòng lặp điểm cố định) 22 2.2.1 Nội dung phương pháp 22 2.2.2 Sự hội tụ 23 2.2.3 Phương pháp tìm phương trình tương đương có dạng x = g(x) thỏa mãn điều kiện hội tụ 25 2.2.4 Đánh giá sai số 27 2.2.5 Phương pháp thực 28 2.2.6 Ví dụ minh họa 29 2.3 Phương pháp Newton 35 2.3.1 Nội dung phương pháp 35 2.3.2 Sự hội tụ 36 2.3.3 Đánh giá sai số 38 2.3.4 Phương pháp thực 39 2.3.5 Ví dụ minh họa 40 CHƯƠNG SỬ DỤNG MATLAB TÌM NGHIỆM CHO PHƯƠNG TRÌNH PHI TUYẾN 44 3.1 Tìm đoạn phân ly nghiệm 44 3.2 Tìm nghiệm phương pháp chia đôi 45 3.3 Tìm nghiệm phương pháp lặp đơn 45 3.4 Tìm nghiệm phương pháp Newton 46 3.5 Các ví dụ 47 KẾT LUẬN 61 TÀI LIỆU THAM KHẢO 62 MỞ ĐẦU Lý chọn đề tài Vấn đề giải phương trình phi tuyến nảy sinh thường xuyên tự nhiên từ việc nghiên cứu nhiều vấn đề thực tế lĩnh vực liên quan đến khoa học Các toán liên quan đến vấn đề tìm nghiệm cho phương trình phi tuyến tồn nhiều thực tiễn có số phương trình giải nghiệm phương pháp tìm nghiệm theo cơng thức có sẵn, cịn lại phần lớn phương trình khơng thể giải nghiệm xác nghiệm xác q phức tạp để giải thơng qua nghững phương pháp Trong trường hợp vậy, ta cần xây dựng số phương pháp giải cố định để tìm nghiệm cho hầu hết phương trình Nghiệm tìm từ phương pháp gọi nghiệm số phương trình phi tuyến Trong thực tế, có nhiều phương trình phi tuyến khơng thể tìm nghiệm xác mà biết nghiệm xấp xỉ chúng nhiều trường hợp việc tìm nghiệm xác khơng cịn quan trọng Hiện nay, nhà Toán học phát triển nhiều phương pháp tìm nghiệm cho phương trình phi tuyến Để tìm nghiệm cách giải tay, nhiều thời gian khó tránh khỏi sai sót q trình tính tốn Nhưng nhờ hỗ trợ phần mềm Toán học, khơng rút ngắn thời gian tính tốn mà nghiệm tìm đạt đến độ xác mà ta mong muốn Vì thế, việc sử dụng thành thạo cơng cụ Tốn học cần thiết cho việc tính tốn, nghiên cứu Với mong muốn hiểu rõ phương pháp tìm nghiệm số cho phương trình phi tuyến nhằm đáp ứng nguyện vọng nghiên cứu khoa học thân, đồng thời hướng dẫn dạy giáo viên hướng dẫn - TS Phạm Quý Mười nên em chọn đề tài: "Nghiệm số cho phương trình phi tuyến" Mục tiêu nghiên cứu Nghiên cứu phương pháp chia đơi, phương pháp lặp đơn (vịng lặp điểm cố định) phương pháp Newton (phương pháp tiếp tuyến) việc tìm nghiệm số cho phương trình phi tuyến Đồng thời nghiên cứu cách lập trình chương trình tìm nghiệm số cho phương trình phi tuyến phương pháp Nhiệm vụ nghiên cứu Khóa luận nghiên cứu trình bày nội dung sau: + Tìm nghiệm số cho phương trình phi tuyến phương pháp chia đơi, phương pháp lặp đơn (vịng lặp điểm cố định) phương pháp Newton + Lập trình chương trình tìm nghiệm ba phương pháp sử dụng để tìm nghiệm cho phương trình phi tuyến MATLAB Đóng góp luận văn Về mặt lý luận, trình bày nội dung kiến thức phương pháp giải ba phương pháp tìm nghiệm cho phương trình phi tuyến Về mặt thực tiễn, trình bày số ví dụ minh họa tìm nghiệm cho phương trình phi tuyến cách lập trình chương trình tìm nghiệm MATLAB ba phương pháp nói Cấu trúc đề tài Nội dung đề tài trình bày ba chương Ngồi ra, đề tài có Lời cảm ơn, Mục lục, phần Mở đầu, phần Kết luận Tài liệu tham khảo Chương 1, trình bày số kiến thức giải tích sai số nhằm phục vụ cho việc nghiên cứu Chương Chương 2, trình bày ba phương pháp tìm nghiệm cho phương trình phi tuyến bao gồm mục: Mục 2.1, trình bày phương pháp chia đơi; Mục 2.2, trình bày phương pháp lặp đơn (vịng lặp điểm cố định); Mục 2.3, trình bày phương pháp Newton Mỗi mục gồm nội dung chính: Nội dung phương pháp; Sự hội tụ; Đánh giá sai số; Phương pháp thực hiện; Ví dụ minh họa Chương 3, trình bày cách viết sử dụng ba chương trình lập trình MATLAB để tìm nghiệm cho phương trình phi tuyến ba phương pháp tìm nghiệm nói CHƯƠNG KIẾN THỨC CƠ SỞ Chương trình bày số kiến thức giải tích, khái niệm tính chất chương trình bày nhằm phục vụ cho việc chứng minh kết chương sau Các kiến thức nêu chương tham khảo từ tài liệu [1] [6] 1.1 Không gian metric R Định nghĩa 1.1.1 (Không gian metric) Giả sử X tập khác rỗng R Hàm số ρ:X ×X →R gọi metric (hoặc hàm khoảng cách) X thỏa mãn điều kiện sau: (a) ρ(x, y) ≥ với x, y ∈ X, ρ(x, y) = ⇔ x = y , (b) ρ(x, y) = ρ(y, x) với x, y ∈ X , (c) ρ(x, z) ≤ ρ(x, y) + ρ(y, z) với x, y, z ∈ X Tập hợp X với metric ρ X gọi không gian metric Các phần tử X gọi điểm X Số ρ(x, y) gọi khoảng cách hai điểm x y Nhận xét 1.1.2 R không gian metric với metric ρ(x, y) = |x − y| Định nghĩa 1.1.3 (Sự hội tụ) Giả sử (X, ρ) không gian metric, {xn } dãy phần tử X Điểm xo ∈ X gọi giới hạn dãy {xn } với số ε > bất kì, tồn số nguyên dương N cho ∀ n ≥ N ⇒ ρ(xn , xo ) < ε Ta viết lim xn = xo xn → xo n → ∞ n→∞ Ta nói dãy {xn } hội tụ đến phần tử xo Nhận xét 1.1.4 Mỗi dãy hội tụ khơng gian metric có giới hạn Chứng minh Giả sử lim xn = a lim xn = b không gian metric n→∞ n→∞ X Khi ρ(a, b) ≤ ρ(a, xn ) + ρ(xn , b) với n Vì lim ρ(a, xn ) = lim (xn , b) = 0, từ suy ρ(a, b) = ⇒ a = n→∞ n→∞ b Định nghĩa 1.1.5 (Hình cầu mở hình cầu đóng) Giả sử (X, ρ) không gian metric, xo ∈ X r số dương (a) Tập hợp B(xo , r) = x ∈ X : ρ(x, xo ) < r gọi hình cầu mở tâm xo bán kính r (b) Tập hợp [xo , r] = x ∈ X : ρ(x, xo ) ≤ r gọi hình cầu đóng tâm xo bán kính r 48 x −∞ f (x) −2 + +∞ − + +∞ f (x) −∞ −1 Figure 3.1: Đồ thị hàm số f (x) = x3 + 3x2 − Dễ thấy f (−3).f (−2) < 0; f (−1).f (0) < f (0).f (1) < nên đoạn phân ly nghiệm: [−3; −2]; [−1; 0] [0; 1] Sử dụng chương trình rootsearch.m để thu nhỏ đoạn phân ly nghiệm >> f=inline(’x^3+3*x^2-1’); >> [x1,x2]=rootsearch(f,-3,-2,0.2) x1 = -3 x2 = -2.8000 49 >> [x1,x2]=rootsearch(f,-1,0,0.2) x1 = -0.8000 x2 = -0.6000 >> [x1,x2]=rootsearch(f,0,1,0.2) x1 = 0.4000 x2 = 0.6000 Ta thu đoạn phân ly nghiệm nhỏ hơn: [−3; −2.8] , [−0.8; −0.6] [0.4; 0.6] Sử dụng phương pháp để tìm nghiệm cho phương trình (3.1) 1) Phương pháp chia đơi >> [x,ss,xx]=bisection(f,-3,-2.8,10^(-6),50) Hoi tu sau 18 lan lap x = -2.879384613037110 ss = 7.629394531694089e-07 >> [x,ss,xx]=bisection(f,-0.8,-0.6,10^(-6),50) Hoi tu sau 18 lan lap x = 50 -0.652703094482422 ss = 7.629394531138978e-07 >> [x,ss]=bisection(f,0.4,0.6,10^(-6),50) Hoi tu sau 18 lan lap x = 0.532088470458984 ss = 7.629394531694089e-07 2) Phương pháp lặp - điểm cố định Trong [−3; −2.8] ta dùng phương trình x = g(x) = − có q ≈ x2 0.091 hội tụ nhanh đến nghiệm >> g=inline(’1/(x^2)-3’); >> [x,ss]=simpiter(g,-3,10^(-6),200) Hoi tu sau lan lap x = -2.879385280584164 ss = 4.266504145533645e-07 Ta dùng phương trình x = g(x) = − x3 có q ≈ 0.451 [−0.8; −0.6] q ≈ 0.352 [0.4; 0.6] >> g=inline(’sqrt((1-(x^3))/3)’); >> [x,ss]=simpiter(g,-0.8,10^(-6),200) Hoi tu sau 13 lan lap x = 51 0.532088777047083 ss = 5.196139439833658e-07 >> [x,ss]=simpiter(g,0.4,10^(-6),200) Hoi tu sau 11 lan lap x = 0.532088701509045 ss = 8.790814645109890e-07 3) Phương pháp Newton >> f=inline(’x^3+3*x^2-1’); >> df=inline(’3*x^2+6*x’); >> [x,ss,xx]=newton(f,df,-3,10^(-6),50) Hoi tu sau lan lap x = -2.879385241571816 ss = 3.264854164797271e-09 >> [x,ss]=newton(f,df,-0.8,10^(-6),50) Hoi tu sau lan lap x = -0.652703644666139 ss = 6.001033003855127e-11 52 >> [x,ss]=newton(f,df,0.6,10^(-6),50) Hoi tu sau lan lap x = 0.532088886237956 ss = 6.835672028415729e-10 Ví dụ 3.5.2 Tìm nghiệm xấp xỉ với sai số 10−8 phương trình: x2 − 10 ln x − = (3.2) Đặt f (x) = x2 − 10 ln x − Bảng biến thiên: x √ − f (x) +∞ f (x) +∞ + +∞ √ − ln Dễ thấy f (0).f (1) < f (3).f (4) < nên đoạn phân ly nghiệm: [0; 1] [3; 4] 53 Figure 3.2: Đồ thị hàm số f (x) = x2 − 10 ln x − Sử dụng chương trình rootsearch.m để thu nhỏ đoạn phân ly nghiệm >> f=inline(’x^2-10*log(x)-2’); >> [x1,x2]=rootsearch(f,0,1,0.2) x1 = 0.800000000000000 x2 = >> [x1,x2]=rootsearch(f,3,4,0.2) x1 = 3.800000000000001 x2 = 4.000000000000001 Ta thu đoạn phân ly nghiệm nhỏ hơn: [0.8; 1] [3.8; 4] 54 Sử dụng phương pháp để tìm nghiệm cho phương trình (3.2) 1) Phương pháp chia đôi >> f=inline(’x^2-10*log(x)-2’); >> [x,ss]=bisection(f,0.8,1,10^(-8),100) Hoi tu sau 25 lan lap x = 0.885514539480209 ss = 5.960464510845753e-09 >> [x,ss]=bisection(f,3.8,4,10^(-8),100) Hoi tu sau 25 lan lap x = 3.974930530786514 ss = 5.960464566356905e-09 2) Phương pháp lặp đơn Trong [3.8; 4] ta dùng phương trình x = g(x) = q ≈ 0.336 >> g=inline(’sqrt(10*log(x)+2)’); >> [x,ss]=simpiter(g,3.8,10^(-8),200) Hoi tu sau 17 lan lap x = 3.974930527031822 ss = 3.992195019009159e-09 √ 10 ln x + có 55 Ta dùng phương trình x = g(x) = e x2 −2 10 có q ≈ 0.905 [0.8; 1] >> g=inline(’exp((x^2-2)/10)’); >> [x,ss]=simpiter(g,0.8,10^(-8),200) Hoi tu sau 11 lan lap x = 0.885514541220280 ss = 3.871366560659340e-09 3) Phương pháp Newton >> f=inline(’x^2-10*log(x)-2’); >> df=inline(’(2*x)-(10/x)’); >> [x,ss]=newton(f,df,0.8,10^(-8),50) Hoi tu sau lan lap x = 0.885514541940340 ss = 4.451097268542981e-10 >> [x,ss]=newton(f,df,4,10^(-8),50) Hoi tu sau lan lap x = 3.974930528880048 ss = 5.459633189985880e-09 Ví dụ 3.5.3 Tìm nghiệm xấp xỉ [0; 1] [3; 5] với sai số 10−9 56 phương trình: ex − 3x2 = (3.3) Đặt f (x) = ex − 3x2 Sử dụng chương trình rootsearch.m để thu nhỏ đoạn phân ly nghiệm > f=inline(’exp(x)-3*x^2’); >> [x1,x2]=rootsearch(f,0,1,0.2) x1 = 0.800000000000000 x2 = >> [x1,x2]=rootsearch(f,3,5,0.2) x1 = 3.600000000000001 x2 = 3.800000000000001 Ta thu đoạn phân ly nghiệm nhỏ hơn: [0.8; 1] [3.6; 3.8] Sử dụng phương pháp để tìm nghiệm cho phương trình (3.3) 1) Phương pháp chia đơi >> f=inline(’exp(x)-3*x^2’); >> [x,ss]=bisection(f,0.8,1,10^(-9),100) Hoi tu sau 28 lan lap x = 0.910007572919130 57 ss = 7.450580707946131e-10 >> [x,ss]=bisection(f,3.6,3.8,10^(-9),100) Hoi tu sau 28 lan lap x = 3.733079028874636 ss = 7.450580152834618e-10 2) Phương pháp lặp - điểm cố định ex Trong [0.8; 1] ta dùng phương trình x = g(x) = có q ≈ 0.927 3x >> g=inline(’(exp(x))/(3*x)’); >> [x,ss]=simpiter(g,0.8,10^(-9),50) Hoi tu sau 10 lan lap x = 0.910007572555844 ss = 8.131437745362291e-10 Ta dùng phương trình x = g(x) = ln(3x2 ) có q ≈ 0.556 [3.6; 3.8] >> g=inline(’log(3*x^2)’); >> [x,ss]=simpiter(g,3.6,10^(-9),50) Hoi tu sau 31 lan lap x = 3.733079027609367 ss = 58 8.868572543008213e-10 3) Phương pháp Newton >> f=inline(’exp(x)-3*x^2’); >> df=inline(’exp(x)-6*x’); >> [x,ss]=newton(f,df,1,10^(-9),50) Hoi tu sau lan lap x = 0.910007572488709 ss = 6.017897291599184e-11 >> [x,ss]=newton(f,df,3.8,10^(-9),50) Hoi tu sau lan lap x = 3.733079028632814 ss = 1.722120224201262e-10 Ví dụ 3.5.4 Tìm nghiệm xấp xỉ 0.2; π với sai số 10−10 phương trình: x − 0.8 − 0.2 sin x = (3.4) Đặt f (x) = x − 0.8 − 0.2 sin x Sử dụng chương trình rootsearch.m để thu nhỏ đoạn phân ly nghiệm >> f=inline(’x-0.8-0.2*sin(x)’); >> [x1,x2]=rootsearch(f,0.2,pi/2,0.2) 59 x1 = 0.800000000000000 x2 = Ta thu đoạn phân ly nghiệm nhỏ hơn: [0.8; 1] Sử dụng phương pháp để tìm nghiệm cho phương trình (3.4) 1) Phương pháp chia đơi >> f=inline(’x-0.8-0.2*sin(x)’); >> [x,ss]=bisection(f,0.8,1,10^(-10),100) Hoi tu sau 31 lan lap x = 0.964333887677640 ss = 9.313227966600834e-11 2) Phương pháp lặp - điểm cố định Ta dùng phương trình x = g(x) = 0.8 + 0.2 sin x có q ≈ 0.199 >> g=inline(’0.8+0.2*sin(x)’); >> [x,ss]=simpiter(g,0.8,10^(-10),50) Hoi tu sau 12 lan lap x = 0.964333887687362 ss = 6.109546202281990e-11 60 3) Phương pháp Newton >> f=inline(’x-0.8-0.2*sin(x)’); >> df=inline(’1-0.2*cos(x)’); >> [x,ss]=newton(f,df,1,10^(-10),50) Hoi tu sau lan lap x = 0.964333887695223 ss = 1.110223024625157e-16 61 KẾT LUẬN Kết luận Qua trình nghiên cứu, đề tài thu kết sau 1.1 Hệ thống lại kiến thức liên quan đến ba phương pháp tìm nghiệm số cho phương trình phi tuyến cách giải 1.2 Sử dụng phần mềm Tốn học MATLAB việc tìm nghiệm cho phương trình phi tuyến 62 TÀI LIỆU THAM KHẢO Tài liệu Tiếng Việt [1] Nguyễn Xn Liêm, Giải tích (Giáo trình lý thuyết tập có hướng dẫn), Nhà xuất Giáo Dục, 2006 [2] Phạm Kỳ Anh, Giải tich số, Nhà xuất Đại học Quốc gia Hà Nội,1996 [3] Nguyễn Minh Chương(Chủ biên), Nguyễn văn Khải, Khuất Văn Ninh, Nguyễn Văn Tuấn, Nguyễn Tường, Giải tích số, Nhà xuất Giáo dục, 2007 [4] Phan Thị Hà, Phan Đăng Cầu, Bài giảng Phương pháp số, Học viện Công nghệ Bưu Viễn thơng (Hà Nội), 2006 [5] Nguyễn Thị Mùi, Khóa luận tốt nghiệp"Phương pháp số giải phương trình hệ phương trình phi tuyến", Trường Đại học Sư phạm - Đại học Đà Nẵng, 2013 Tài liệu Tiếng Anh [6] Witold A.J Kosmala, A Friendly Introduction to Analysis, Single and Multivariable, Upper Saddle River, NJ : Pearson Prentice Hall, 2004 [7] G.R Lindfield and J.E.T Penny, Numerical Methods: Using MATLAB, Academic Press, 2012 ... cần xây dựng số phương pháp giải cố định để tìm nghiệm cho hầu hết phương trình Nghiệm tìm từ phương pháp gọi nghiệm số phương trình phi tuyến Trong thực tế, có nhiều phương trình phi tuyến khơng... tìm nghiệm số cho phương trình phi tuyến Đồng thời nghiên cứu cách lập trình chương trình tìm nghiệm số cho phương trình phi tuyến phương pháp Nhiệm vụ nghiên cứu Khóa luận nghiên cứu trình bày... bậc p > cho hội tụ siêu tuyến tính 12 CHƯƠNG CÁC PHƯƠNG PHÁP TÌM NGHỆM SỐ CHO PHƯƠNG TRÌNH PHI TUYẾN Chương trình bày ba phương pháp tìm nghiệm xấp xỉ cho phương trình phi tuyến có dạng: f (x)