Khóa luận ứng dụng của phần mềm maple trong giải phương trình đại số

52 6 0
Khóa luận ứng dụng của phần mềm maple trong giải phương trình đại số

Đ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

TRƯỜNG ĐẠI HỌC HỒNG ĐỨC KHOA KHOA HỌC TỰ NHIÊN ———————o0o——————– KHÓA LUẬN TỐT NGHIỆP ỨNG DỤNG CỦA PHẦN MỀM MAPLE TRONG GIẢI PHƯƠNG TRÌNH ĐẠI SỐ Chuyên ngành: Giải tích Giảng viên hướng dẫn: ThS NGUYỄN HỮU HỌC Sinh viên: LÊ THÙY DUNG Lớp: K19−ĐHSP TỐN Thanh Hóa, 5/2020 LỜI CẢM ƠN Đề tài thực hoàn thành Trường Đại học Hồng Đức hướng dẫn thầy Th.S Nguyễn Hữu Học Nhân em xin bày tỏ lòng biết ơn sâu sắc đến thầy, người tận tình dẫn truyền dạy cho em kinh nghiệm quý báu học tập nghiên cứu suốt thời gian vừa qua Đồng thời em xin gửi lời cảm ơn sâu sắc đến Nhà trường, Khoa thầy cô giáo trực tiếp giảng dạy em suốt trình em học tập rèn luyện trường Đại học Hồng Đức Cuối lời cảm ơn sâu sắc tới gia đình, bạn bè ln bên động viên, khích lệ tạo điều kiện tốt giúp em hồn thành tốt khóa luận Thanh Hóa, tháng 5, năm 2020 Lê Thùy Dung i Mục lục Giới thiệu phần mềm Maple 1.1 File 1.2 Edit 1.3 View 1.4 Instet 1.5 Cụm xử lý (Excution Group) 1.6 Lệnh kết Maple 1.7 Mục (Section) 1.8 Siêu liên kết (Hyperlink) 1.9 Một số quy ước, kí hiệu Maple 1.10 Lập trình Maple 1.10.1 Các lệnh lập trình 1.10.2 Cách thiết lập chu trình Ứng dụng phần mềm Maple giải phương trình 2.1 Phương pháp Newton 2.1.1 Nội dung phương pháp 2.1.2 Chương trình minh họa 2.1.3 Ví dụ minh họa 2.1.4 Nhận xét 2.2 Phương pháp dây cung 2.2.1 Nội dung phương pháp 2.2.2 Chương trình minh họa 2.2.3 Ví dụ minh họa 2.2.4 Nhận xét Kết luận 5 6 7 8 10 10 13 16 16 16 17 18 28 29 29 30 31 46 48 Tài liệu tham khảo 49 ii DANH MỤC CÁC KÍ HIỆU R C Z Rn Rn × m Trường số thực Trường số phức Tập số nguyên Tập vectơ thực n chiều Tập ma trận thực n × m chiều MỞ ĐẦU Lí chọn đề tài Ngày nay, cơng nghệ thơng tin có bước tiến vượt bậc thâm nhập vào mặt đời sống xã hội, mang lại lợi ích to lớn thiết thực lĩnh vực Riêng lĩnh vực giáo dục, công nghệ thông tin làm thay đổi quan niệm dạy học có ảnh hưởng tích cực việc nâng cao hiệu giáo dục đào tạo Một công cụ công nghệ thông tin mang lại cho trình dạy học phần mềm dạy học Việc sử dụng phần mềm dạy học nhằm mục đích cải tiến nội dung phương pháp dạy học, hỗ trợ trình dạy học, nâng cao hiệu dạy học, tạo động gây hứng thú học tập, chủ động tiếp thu kiến thức Ngoài phần mềm dạy học tăng cường mối quan hệ hai chiều người dạy người học Hiện có nhiều phần mềm tốn học chun dụng như: Cabri Geometry, Geometer’s sketchpad, Mathcad, Maple Trong maple phần mềm sử dụng phổ biến đáp ứng cho tính tốn số, hỗ trợ nhiều lĩnh vực tốn học: giải tích tốn học, giải tích số, đại số tuyến tính, đồ thị, xác suất thống kê Maple cịn sử dụng lập trình để giải tốn phức tạp, đặc biệt Maple tính tốn kí hiệu toán học Toán học bắt nguồn từ nhu cầu giải tốn có nguồn gốc từ thực tiễn Cùng với thời gian, toán học ngày phát triển chia làm hai lĩnh vực: Tốn học lí thuyết tốn ứng dụng Nói đến tốn ứng dụng khơng thể khơng nói đến giải tích số, mơn khoa học nghiên cứu cách giải gần phương trình cách tính xấp xỉ tốn tử để đạt lời giải gần toán cho trước Giải tích số có bước tiến nhanh chóng khoảng kỉ vừa qua với phát triển kì diệu tin học, phạm vi ứng dụng Giải tích số ngày mở rộng Việc giải phương trình đại số f(x)=0, nhiều trường hợp khơng có cơng thức giải xác nên hầu hết phương trình cần giải gần Do vấn đề đặt tìm cách giải để xác định nghiệm gần phương trình Phương pháp dây cung phương pháp Newton cơng cụ hữu hiệu để giải gần phương trình f(x)=0 Vì nhờ hai phương pháp phương trình phi tuyến f(x)=0 thay phương trình phi tuyến xấp xỉ nghiệm gần phương trình tuyến tính thay hội tụ đến nghiệm phương trình phi tuyến nói Vì vậy, hướng dẫn thầy Nguyễn Hữu Học, chọn “ Ứng dụng phần mền Maple giải phương trình đại số ” làm đề tài khóa luận tốt nghiệp 2.Mục đích nhiệm vụ nghiên cứu Đề tài: “ Ứng dụng phần mền Maple giải phương trình đại số” nhằm mục đích góp phần thực chủ trương ứng dụng công nghệ thông tin để nâng cao chất lượng dạy học mơn Tốn Hệ thống hóa lại kiến thức giải phương trình ứng dụng phần mềm Maple giải phương trình Đối tượng phạm vi nghiên cứu Đối tượng nghiên cứu Các phương pháp giải phương trình ứng dụng chúng phần mền toán học Maple Phạm vi nghiên cứu Nội dung phương pháp giải phương trình gồm phương pháp dây cung phương pháp Newton, phần mền toán học Maple Phương pháp nghiên cứu Cơ sử dụng phương pháp nghiên cứu tài liệu ( sách, báo tài liệu internet có liên quan đến đề tài khóa luận ) để thu thập thông tin nhằm hệ thống lại vấn đề cách lơgic, tìm hiểu cách sử dụng phần mền tốn học maple tìm hiểu tốn, ví dụ minh họa Ý nghĩa khoa học thực tiễn đề tài Làm rõ nghiên cứu có, tìm hiểu sâu phần mềm Maple ứng dụng Tạo đề tài phù hợp cho việc giảng dạy Cấu trúc khóa luận Ngồi phần mở đầu kết luận, luận văn chia thành hai chương : Chương 1: Giới thiệu phầm mềm Maple (Chương trình bày cách sử dụng phần mềm Maple, câu lệnh toán tử, hàm, hằng, phép toán hàm dùng để giải phương trình) Chương 2: ứng dụng phần mền Maple giải phương trình phi tuyến (Chương trình bày phương pháp giải phương trình gồm phương pháp dây cung phương pháp dây cung, chương trình minh họa ứng dụng phần mềm Maple giải phương trình phi tuyến, ví dụ minh họa nhận xét) Chương Giới thiệu phần mềm Maple Maple xây dựng phát triển công ty Waterloo Maple (địa website:http://www.maplesoft.com), tính đến Maple có phiên thứ 18 Các phiên sau Maple cung cấp nhiều cơng cụ trực quan, nhiều gói lệnh chun ngành phù hợp với tính chất tốn phổ thơng bậc đại học, giao diện hoàn thiện hỗ trợ soạn thảo tốt Chính ưu điểm mà nhiều đề tài nghiên cứu sử dụng Maple dạy tốn học tốn Maple góp phần làm thay đổi hẳn cách dạy học toán, tức song song với lối giải truyền thống người dạy người học giải tốn với giúp đỡ Maple Phương pháp đem đến cho người học cách tiếp cận với toán học: sinh động, sáng tạo rèn luyện khả tự học, tự kiểm tra nghiên cứu 1.1 File Gồm lệnh tương tự trình soạn thảo văn thông thường như: New, Open, Save, Save As Đặc biệt có lệnh Export As cho phép ta lưu trữ liệu dạng khác file maplet (khi lập trình có giao diện), file rtf, xuất web, Hình 1.1: Hình ảnh minh họa giao diện phần mềm Maple 18 1.2 Edit Menu chứa lệnh liên quan đến soạn thảo, giống Word Ngồi lệnh thơng thường, ý đến số lệnh đặc biệt sau: - Nhóm lệnh Split or Join: cho phép ta hợp tách cụm xử lí Thuật ngữ "Cụm xử lí" hiểu nhóm lệnh bắt đầu dấu nhắc [> Khi trang làm việc bao gồm nhiều cụm xử lí - Nhóm lệnh Remove Output: Cho phép ta xóa nhanh kết tính tốn trang làm việc Nhờ tiện ích mà khơng cần thiết ta xóa kết lưu file kích thước file thu nhỏ nhiều - Go To Bookmart, chức cho ta tìm nhanh đến Bookmark 1.3 View Ở có số lệnh đặc biệt hữu dụng như: - Tools Bar, Context Bar, Status Bar: cho hiển thị cơng cụ, có lợi cho soạn thảo Maple -Expand Execution Group, Collapse Execution Group: mở, đóng cụm xử lí vị trí trỏ (tức hiển thị kết hay hiển thị phần lệnh Maple) - Inline Document Output: hiển thị không hiển thị việc đánh dòng - Slideshow: Cho phép chuyển trạng thái trình chiếu Nếu chọn Insert/Slideshow chuyển từ file soạn thảo sang trạng thái trình chiếu Hiển thị chương văn Muốn khỏi trạng thái này, nhấn Esc - Show/Hide contents: Cho phép ẩn/hiện nội dung, input, output Về Market trang, cho phép ẩn/hiện dấu cụm xử lý cụm vaen text, dấu section 1.4 Instet - Insert/Text: Chuyển sang chế độ soạn thảo văn bản, giống nhấn T cơng cụ, nhiên có chút khác biệt, là: nhấn vào "T" trỏ hình chuyển xuống cuối section soạn thảo, dùng Insert/Text sau dấu [>, máy chuyển sang hình soạn thảo text trỏ - 2-D Math: Chuyển từ dạng văn text sang Maple - Insert/Execution Group: lệnh cho phép chèn vào cụm xử lý (Execution Group), nghĩa đưa dấu nhắc lệnh vào vị trí trước trỏ (before cursor) sau trỏ (after cursor) - Insert/Hyperlink: công cụ dịch chuyển trỏ trang làm việc đoạn (paragraph) trang làm việc - Hyperlink: cho phép thiết lập liên kết - Table: tạo bảng 1.5 Cụm xử lý (Excution Group) - Cụm xử lý thành phần tính tốn mơi trường làm việc Maple, bao gồm đối tượng Maple lệnh, kết tính tốn, đồ thị, dễ dàng nhận biết cụm xử lý dấu ngoặc vuông bên trái dấu nhắc lệnh Maple - Để tạo cụm xử lí mới, ta kích chuột vào biểu tượng [> công cụ 1.6 Lệnh kết Maple - Lệnh Maple (Maple Input): Lệnh nhập sau dấu nhắc lệnh "[>" kết thúc dấu ":" dấu ";" Lệnh thực ta ấn phím Enter trỏ cụm xử lý Nếu kết thúc lệnh dấu ";" kết hiển M1:=43.0 hesosaiso:=16.00000000 "Qua trinh lap:" y0 := 0.5 y1 := 0.5849056604 y2 = 0.6498661492 sai so =0.5521641550 y3 = 0.6962619068 sai so =0.3943639397 y4 = 0.7276876055 sai so =0.2671184390 y5 = 0.7481839702 sai so=0.1742191000 y6 = 0.7612154534 sai so=0.1107676072 y7 = 0.7693646367 sai so=0.06926805805 y8 = 0.7744074316 sai so=0.04286375666 y9 = 0.7775075657 sai so=0.02635113985 y1 = 0.7794057109 sai so=0.01613423420 y1 = 0.7805650143 sai so=0.009854078900 "Nghiem xap xi cua phuong trinh la:" x = 0.7805650143 Ví dụ 3: Tính nghiệm phương trình sau phương pháp dây cung sai số không vượt 0.005 x4 − 3x − = 0, biết x ∈ [1; 2] Nhập chương trình: [>print("Xet ham so:"); [> f := x4 − 3x − 2; 35 print("Khoang cach ly nghiem:"); a := 1.0; b := 2.0; print("Sai so"); err := 0.005; print("Kiem tra khoang cach ly nghiem"); Tfafb := subs(x = a, f).subs(x = b, f); fafb := evalf(Tfafb); print("Dao ham cap 1:"); dh1 := diff(f, x); m := minimize(abs(dh1), x = a b); M := maximize(abs(dh1), x = a b); print("Dao ham cap 2:"); dh2 := diff(f, x$2); m1 := minimize(dh1, x = a b); M1 := maximize(dh2, x = a b); M−m hesosaiso := ; m print("Qua trinh lap:"); if subs( x = a, f ) > then x0 := b; fphu := evalf(subs(x = a, f)); sophu := a else x0 := a; fphu := evalf(subs(x = b, f)); sophu := b end if; k := 0; x[k] := x0; y[0] := x[0] eval f (subs( x = x[k], f )) eval f ( x[k] − sophu) : y[1] := x[k + 1] := x[k] − (eval f (subs( x = x[k], f )) − f phu) eval f ( x[1]); while hesosaiso.abs( x[k + 1] − x[k]) >err eval f (subs( x = x[k], f )) k := k + 1; x[k + 1] := x[k] − eval f ( x[k] − (eval f (subs( x = x[k], f )) − f phu) sophu); print( y[k + 1] = eval f ( x[k + 1])); M print(sai so = abs( x[k + 1] − x[k])) end do; 2m print("Nghiem xap xi cua phuong trinh la:"); print( x = x[k + 1]); Ta kết print("Xet ham so:"); f := x4 − 3x − 2; print("Khoang cach ly nghiem:"); a := 1.0; b := 2.0; 36 print("Sai so"); err := 0.005; print("Kiem tra khoang cach ly nghiem"); f a f b := −32.00000000 "Dao ham cap 1:" dh1 := 4x3 − m:=1.000 M:=29.000 "Dao ham cap 2:" dh2 := 12x2 m1:=1.000 M1:=48.00 hesosaiso:=28.00000000 "Qua trinh lap:" y0 := 1.0 y1 := 1.333333333 y2 := 1.507972665 sai so =2.532270314 y3 = 1.579145742 sai so =1.579145742 y4 = 1.604780247 sai so =0.3717003225 y5 = 1.613574777 sai so=0.1275206850 y6 = 1.616540295 sai so=0.04300001100 y7 = 1.617534392 sai so=0.01441440650 y8 = 1.617866972 sai so=0.004822410000 y9 = 1.617978164 sai so=0.001612284000 "Nghiem xap xi cua phuong trinh la:" x = 1.617978164 Ví dụ 4: Tính nghiệm phương trình sau phương pháp dây cung 37 sai số không vượt 0.09 3x6 − 4x4 − = 0, biết x ∈ [1; 1,6] Nhập chương trình: [>print("Xet ham so:"); [> f := 3x6 − 4x4 − 2; print("Khoang cach ly nghiem:"); a := 1.0; b := 1.6; print("Sai so"); err := 0.09; print("Kiem tra khoang cach ly nghiem"); Tfafb := subs(x = a, f).subs(x = b, f); fafb := evalf(Tfafb); print("Dao ham cap 1:"); dh1 := diff(f, x); m := minimize(abs(dh1), x = a b); M := maximize(abs(dh1), x = a b); print("Dao ham cap 2:"); dh2 := diff(f, x$2); m1 := minimize(dh1, x = a b); M1 := maximize(dh2, x = a b); M−m hesosaiso := ; m print("Qua trinh lap:"); if subs( x = a, f ) > then x0 := b; fphu := evalf(subs(x = a, f)); sophu := a else x0 := a; fphu := evalf(subs(x = b, f)); sophu := b end if; k := 0; x[k] := x0; y[0] := x[0] eval f (subs( x = x[k], f )) x[k + 1] := x[k] − eval f ( x[k] − sophu) : y[1] := (eval f (subs( x = x[k], f )) − f phu) eval f ( x[1]); while hesosaiso.abs( x[k + 1] − x[k]) >err eval f (subs( x = x[k], f )) k := k + 1; x[k + 1] := x[k] − eval f ( x[k] − (eval f (subs( x = x[k], f )) − f phu) sophu); print( y[k + 1] = eval f ( x[k + 1])); M print(sai so = abs( x[k + 1] − x[k])) end do; 2m 38 print("Nghiem xap xi cua phuong trinh la:"); print( x = x[k + 1]); Ta kết print("Xet ham so:"); f := 3x6 − 4x4 − 2; print("Khoang cach ly nghiem:"); a := 1.0; b := 1.6; print("Sai so"); err := 0.09; print("Kiem tra khoang cach ly nghiem"); f a f b := −66.35174400 "Dao ham cap 1:" dh1 := 18x5 − 16x3 m:=2.000 M:=123.20768 "Dao ham cap 2:" dh2 := 90x4 − 48x2 m1:=2.000 M1:=466.9440 hesosaiso:=60.60384000 "Qua trinh lap:" y0 := 1.0 y1 := 1.071663902 y2 = 1.129741511 sai so = 1.788901866 y3 = 1.173664910 sai so = 1.352925022 y4 = 1.204902323 sai so = 0.9621722960 y7 = 1.226053419 sai so = 0.6514943670 y6 = 1.239868502 sai so = 0.4255310812 y7 = 1.248670871 sai so = 0.2711298658 y8 = 1.254188310 39 sai so = 0.1699477147 y9 = 1.257610627 sai so = 0.1054139344 y10 = 1.259719438 sai so = 0.06495542770 y11 = 1.261013558 sai so = 0.03986138070 "Nghiem xap xi cua phuong trinh la:" x = 1.261013558 Ví dụ 5: Tính nghiệm phương trình sau phương pháp dây cung sai số không vượt 0,005 x4 − − = 0, x biết x ∈ [1; 2] Nhập chương trình: [>print("Xet ham so:"); [> f := x4 − 1x − 4; print("Khoang cach ly nghiem:"); a := 1.0; b := 2.0; print("Sai so"); err := 0.005; print("Kiem tra khoang cach ly nghiem"); Tfafb := subs(x = a, f).subs(x = b, f); fafb := evalf(Tfafb); print("Dao ham cap 1:"); dh1 := diff(f, x); m := minimize(abs(dh1), x = a b); M := maximize(abs(dh1), x = a b); print("Dao ham cap 2:"); dh2 := diff(f, x$2); m1 := minimize(dh1, x = a b); M1 := maximize(dh2, x = a b); M−m ; hesosaiso := m print("Qua trinh lap:"); 40 if subs( x = a, f ) > then x0 := b; fphu := evalf(subs(x = a, f)); sophu := a else x0 := a; fphu := evalf(subs(x = b, f)); sophu := b end if; k := 0; x[k] := x0; y[0] := x[0] eval f (subs( x = x[k], f )) x[k + 1] := x[k] − eval f ( x[k] − sophu) : y[1] := (eval f (subs( x = x[k], f )) − f phu) eval f ( x[1]); while hesosaiso.abs( x[k + 1] − x[k]) >err eval f (subs( x = x[k], f )) k := k + 1; x[k + 1] := x[k] − eval f ( x[k] − (eval f (subs( x = x[k], f )) − f phu) sophu); print( y[k + 1] = eval f ( x[k + 1])); M abs( x[k + 1] − x[k])) end do; print(sai so = 2m print("Nghiem xap xi cua phuong trinh la:"); print( x = x[k + 1]); Ta kết print("Xet ham so:"); f := x4 − 1x − 4; print("Khoang cach ly nghiem:"); a := 1.0; b := 2.0; print("Sai so"); err := 0.005; print("Kiem tra khoang cach ly nghiem"); f a f b := −46.00000000 "Dao ham cap 1:" dh1 := 4x3 + x12 m:=5.000000000 M:=32.25000000 "Dao ham cap 2:" dh2 := 12x2 − x23 m1:=5.000000000 M1:=47.75000000 hesosaiso:=5.450000000 "Qua trinh lap:" y0 := 1.0 y1 := 1.258064516 y2 = 1.381265309 41 sai so = 0.3973225574 y3 = 1.434559992 sai so = 0.1718753527 y4 = 1.456392623 sai so = 0.07041023500 y5 = 1.465120457 sai so = 0.02814726465 y6 = 1.468574300 sai so = 0.01113864368 y7 = 1.469935526 sai so = 0.004389953850 y8 = 1.470471147 sai so = 0.001727377725 "Nghiem xap xi cua phuong trinh la:" x = 1.470471147 Ví dụ 6: Tính nghiệm phương trình sau phương pháp dây cung sai số không vượt 0.001 3x3 − − 2x + = 0, x biết x ∈ [0,5; 1,5] Nhập chương trình: [>print("Xet ham so:"); [> f := 3x3 − 1x − 2x + 2; print("Khoang cach ly nghiem:"); a := 0.5; b := 1.5; print("Sai so"); err := 0.001; print("Kiem tra khoang cach ly nghiem"); Tfafb := subs(x = a, f).subs(x = b, f); fafb := evalf(Tfafb); print("Dao ham cap 1:"); dh1 := diff(f, x); m := minimize(abs(dh1), x = a b); M := maximize(abs(dh1), x = a b); print("Dao ham cap 2:"); 42 dh2 := diff(f, x$2); m1 := minimize(dh1, x = a b); M1 := maximize(dh2, x = a b); M−m hesosaiso := ; m print("Qua trinh lap:"); if subs( x = a, f ) > then x0 := b; fphu := evalf(subs(x = a, f)); sophu := a else x0 := a; fphu := evalf(subs(x = b, f)); sophu := b end if; k := 0; x[k] := x0; y[0] := x[0] eval f (subs( x = x[k], f )) x[k + 1] := x[k] − eval f ( x[k] − sophu) : y[1] := (eval f (subs( x = x[k], f )) − f phu) eval f ( x[1]); while hesosaiso.abs( x[k + 1] − x[k]) >err eval f (subs( x = x[k], f )) k := k + 1; x[k + 1] := x[k] − eval f ( x[k] − (eval f (subs( x = x[k], f )) − f phu) sophu); print( y[k + 1] = eval f ( x[k + 1])); M abs( x[k + 1] − x[k])) end do; print(sai so = 2m print("Nghiem xap xi cua phuong trinh la:"); print( x = x[k + 1]); Ta kết print("Xet ham so:"); f := 3x3 − 1x − 2x + 2; print("Khoang cach ly nghiem:"); a := 0.5; b := 1.5; print("Sai so"); err := 0.001; print("Kiem tra khoang cach ly nghiem"); f a f b := −5.286458333 "Dao ham cap 1:" dh1 := 9x2 + x12 − m:=4 M:=18.69444444 "Dao ham cap 2:" dh2 := 18x − x23 m1:=4 M1:=26.40740741 43 hesosaiso:=3.673611110 "Qua trinh lap:" y0 := 0.5 y1 := 0.5688073394 y2 = 0.6051561974 sai so = 0.08494021330 y3 = 0.6256170954 sai so = 0.04781314011 y4 = 0.6373520808 sai so = 0.02742237908 y5 = 0.6441300271 sai so = 0.01583874256 y6 = 0.6480568126 sai so = 0.009176134170 y7 = 0.6503350982 sai so = 0.005323910445 y8 = 0.6516579244 sai so = 0.003091187612 y9 = 0.6524262960 sai so = 0.001795535024 y1 = 0.6528727081 sai so = 0.001043178275 y1 = 0.6531320992 sai so = 0.0006061465635 "Nghiem xap xi cua phuong trinh la:" x = 0.6531320992 Ví dụ 7: Tính nghiệm phương trình sau phương pháp dây cung sai số không vượt 0,00001 x + 4x2 − = 0, biết x ∈ [0,5; 1,5] Nhập chương trình: [>print("Xet ham so:"); [> f := x + 4x2 − 7; print("Khoang cach ly nghiem:"); 44 a := 0.5; b := 1.5; print("Sai so"); err := 0.00001; print("Kiem tra khoang cach ly nghiem"); Tfafb := subs(x = a, f).subs(x = b, f); fafb := evalf(Tfafb); print("Dao ham cap 1:"); dh1 := diff(f, x); m := minimize(abs(dh1), x = a b); M := maximize(abs(dh1), x = a b); print("Dao ham cap 2:"); dh2 := diff(f, x$2); m1 := minimize(dh1, x = a b); M1 := maximize(dh2, x = a b); M−m hesosaiso := ; m print("Qua trinh lap:"); if subs( x = a, f ) > then x0 := b; fphu := evalf(subs(x = a, f)); sophu := a else x0 := a; fphu := evalf(subs(x = b, f)); sophu := b end if; k := 0; x[k] := x0; y[0] := x[0] eval f (subs( x = x[k], f )) x[k + 1] := x[k] − eval f ( x[k] − sophu) : y[1] := (eval f (subs( x = x[k], f )) − f phu) eval f ( x[1]); while hesosaiso.abs( x[k + 1] − x[k]) >err eval f (subs( x = x[k], f )) eval f ( x[k] − k := k + 1; x[k + 1] := x[k] − (eval f (subs( x = x[k], f )) − f phu) sophu); print( y[k + 1] = eval f ( x[k + 1])); M print(sai so = abs( x[k + 1] − x[k])) end do; 2m print("Nghiem xap xi cua phuong trinh la:"); print( x = x[k + 1]); Ta kết print("Xet ham so:"); f := x + 4x2 − 7; print("Khoang cach ly nghiem:"); a := 0.5; b := 1.5; print("Sai so"); 45 err := 0.00001; print("Kiem tra khoang cach ly nghiem"); f a f b := −22.142135603 "Dao ham cap 1:" dh1 := x ln(2) + 8x m:=4.980258143 M:=13.96051629 "Dao ham cap 2:" dh2 := x ln(2)2 + m1:=4.980258143 M1:=9.358926337 hesosaiso:=1.803171219 "Qua trinh lap:" y0 := 0.5 y1 := 0.9871130668 y2 = 1.083697184 sai so = 0.1353709088 y3 = 1.098894402 sai so = 0.02130020206 y4 = 1.101192177 sai so = 0.003220528374 y5 = 1.101537473 sai so = 0.0004839619046 y6 = 1.101589314 sai so = 0.00007265959960 y7 = 1.101597096 sai so = 0.00001090713922 y8 = 1.101598264 sai so = 0.000001637051992 "Nghiem xap xi cua phuong trinh la:" x = 1.101598264 2.2.4 Nhận xét Ưu điểm • Dễ dàng tính đạo hàm cấp 1, đạo hàm cấp hàm số 46 • Giúp tính nhanh giá trị min, max Nhược điểm • Việc xây dựng chương trình ban đầu cịn có nhiều khó khăn • Ở ví dụ cần nhập lại hàm số, khoảng cách li nghiệm sai số đồng thời phải ý kiểm tra xem m1,M1 có dương hay khơng, âm lại phải đổi phương trình thành -f(x)=0 nhập lại hàm để chạy lại chương trình 47 KẾT LUẬN Khóa luận hồn thành chương trình lập Maple để giải hai phương pháp giải gần phương trình phương pháp tiếp tuyến phương pháp dây cung trình bày giáo trình Giải tích số Khóa luận giúp hiểu rõ phương pháp học học phần Giải tích số, đồng thời giúp bước đầu làm quen với việc ứng dụng công nghệ thơng tin vào việc dạy học Tốn cách hiệu Do bước đầu làm quen với việc lập trình nên chương trình trình bày khóa luận cịn hồn thiện phát triển tốt hơn, hồn tồn viết để giải phương pháp khác học phần Giải tích số, kiến thức giảng dạy phổ thông 48 Tài liệu tham khảo [1] PGS.TS Trần Anh Bảo, TS Nguyễn Văn Khải, PGS.TS Phạm Văn Kiều, PGS.TS Ngô Xuân Sơn Giải tích số, NXB Đại học Sư Phạm, 2003 [2] Phạm Kỳ Anh, Giải tích số, NXB ĐHQG Hà Nội 2005 [3] Lê Trọng Vinh, Giáo trình Giải tích số, NXB Khoa học Kỹ thuật, 2007 [4] Dỗn Tam Hịe, Tốn học tính tốn, NXB Giáo dục, 2008 [5] Đặng Văn Liệt, Giải tích số, NXB Quốc Gia TP Hồ Chí Minh, 2004 [6] Trần Quốc Chiến, Giáo trình phần mềm toán học, Đại học Đà Nẵng, 2008 [7] Nguyễn Ngọc Trung, Giáo trình Maple tài liệu bồi dưỡng thường xuyên, ĐHSP Tp HCM [8] Trường Quốc Bảo, Bài giảng Ngơn ngữ lập trình Maple 49

Ngày đăng: 16/08/2023, 21:31

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

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

Tài liệu liên quan