1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng chương trình ExamMaker

63 704 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 63
Dung lượng 1,32 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Sau năm năm học tập, em sắp phải xa mái trường Bách Khoa thân yêu, xathầy cô không quản vất vả cho em những kiến thức để vững chắc bước vào đời.Với những tình cảm sâu sắc mà các thầy cô

Trang 1

Lời nói đầu

Trong quá trình giảng dạy, ngoài việc chuẩn bị giáo án, lên bục giảng thìviệc ra đề thi, ra bài tập cho sinh viên luyện tập là việc làm không thể thiếu đối vớimỗi thầy cô Và công việc của các thầy cô còn vất vả hơn gấp bội khi phải ranhững đề đòi hỏi khối lượng tính toán lớn, đòi hỏi độ chính xác đến 6-7 số lẻ saudấu phảy Mặc dù hiện nay các thầy cô có máy tính điện tử cùng các chương trìnhphần mềm tính toán rất mạnh hỗ trợ như: Mathematica, Maple, Mathlap Nhưngcác chương trình này chỉ hỗ trợ tính toán ra kết quả cuối cùng trong khi đó đáp áncủa một đề thi thì lại đòi hỏi giải theo từng bước Do đó các thầy cô lại phải tínhtay vật lộn với những con số, và mồ hôi lại tiếp tục lăn dài mỗi khi mùa thi tới

Sau năm năm học tập, em sắp phải xa mái trường Bách Khoa thân yêu, xathầy cô không quản vất vả cho em những kiến thức để vững chắc bước vào đời.Với những tình cảm sâu sắc mà các thầy cô giành cho em, đã giúp em vượt qua rấtnhiều khó khăn để hoàn thành đồ án tốt nghiệp với chương trình: “Trợ giúp ra đề

phương pháp tính ExamMaker (Examination Maker) Đề tài này chính là món

quà nhỏ em dành tặng các thầy cô giúp các thầy cô vơi đi nỗi vất vả trong côngviệc ra đề thi, ra bài tập Chương trình có thể trợ giúp các thầy cô ra đề tự động,tạo đáp án đầy đủ…

Do thời gian làm đồ án có hạn nên em không thể tạo hệ thống trợ giúp ra đềcho tất cả các môn học Nhưng em cũng đã xây dựng được một mô hình ra đề cótính mở cho phép ra đề bất cứ môn học nào bằng việc viết thêm các môdun chomôn học đó Hệ thống sẽ tự động cập nhật môdun đó vào Sở dĩ em chọn mônphương pháp tính để ứng dụng mô hình trên vì: việc ra đề phương pháp tính có lẽ

là vất vả nhất trong tất cả các môn vì phải tính toán rất nhiều với những con số dài,hơn thế nữa việc tính toán còn đòi hỏi độ chính xác cao Mặt khác môn phươngpháp tính là môn học cơ sở mà tất cả sinh viên trường kỹ thuật nào cũng phải học

Do đó cần một khối lượng lớn đề thi và bài tập cho sinh viên luyện tập và thi Nhvậy yêu cầu có một chương trình trợ giúp ra đề phương pháp tính là hết sức cầnthiết và cấp bách

Qua đồ án tốt nghiệp này, em cũng đã được nghiên cứu, học tập và thử sứcmình với một đề tài thực tế, với rất nhiều kỹ thuật khó Trong báo cáo này

em xin trình bày năm phần lớn sau:

Trang 2

Phần 1 Tổng quan: phần này giới thiệu một cách tổng quan đồ án tốt nghiệp.Tổng quan về chương trình trợ giúp ra đề phương pháp tính, về các kỹ thuật đặcbiệt mà em đã sử dụng để tạo ra chương trình.

Phần 2 Cơ sở toán học : phần này cung cấp cơ sở toán vững chắc cho đồ án tốtnghiệp, đồng thời cung cấp các thuật toán(dưới dạng sơ đồ khối) cho chương trình.Phần 3 Khảo xát và xác lập giải pháp : phần này sẽ trình bày về những nghiên cứu

về mô hình ra đề hiện tại, khảo xát thực tế Và từ đó đưa ra những giải pháp chochương trình

Phần 4 Phân tích thiết kế: phần này sẽ trình bày chi tiết về việc phân tích và thiết

Em xin chân thành cảm ơn!

Hà nội tháng 5 năm 2005

Trang 3

Lời cảm ơn

Sau mười bảy năm ăn học chuẩn bị đầy đủ hành trang bước vào đời, em đãtừng bước qua rất nhiều những nấc thang để tiến tới thành công Và người đã dìudắt em lên những bậc thang đó không ai khác chính là tất cả những thầy cô đã dạy

em trong nhiều năm qua Em xin gửi lời cảm ơn chân thành nhất tới tất cả các thầycô!

Em xin được bày tỏ lòng biết ơn sâu sắc tới cô giáo hướng dẫn của em côPhạm Huyền Linh!!! Cô là người đã dìu dắt em bước lên nấc thang quan trọngnhất của cuộc đời Cô đã đưa em đến với đề tài này, tiếp cận với những vấn đềthực tế và nhiệt tình dẫn dắt em trong suốt quá trình làm đồ án, ngay cả khi sứckhoẻ cô không được tốt Cô chính là chỗ dựa tinh thần và kiến thức vững chắcnhất cho em hoàn thành đồ này

Bên cạnh đó em còng xin cảm ơn tất cả các thầy cô giáo trong khoa Tin đã đóng góp ý kiến và động viên em trong những ngày tháng em học ở khoa

Toán-Để cho em được nh ngày hôm nay là cả một sự tảo tần, hy sinh của mẹ Emxin được gửi lời cảm ơn sâu sắc tới mẹ của em! Và em xin hứa sẽ đạt kết quả caotrong học tập để mẹ vui lòng

Cuối cùng em xin gửi lời cảm ơn chân thành tới các anh chị, bạn bè đã luôn

ở bên cạnh động viên, giúp đỡ em trong những lúc khó khăn Cảm ơn các anh chị

ở nhóm Yapi, líp Tin quản lý K44 đã cung cấp cho em những kinh nghiệm quýbáu của những người đi trước Cảm ơn bạn Phạm Quang Huy! bạn đã luôn độngviên giúp đỡ em trong việc nghiên cứu các kỹ thuật lập trình khó

Đồ án tốt nghiệp của em chính là món quà em giành tặng cho thầy cô, mẹ,anh chị và bạn bè Một lần nữa em xin cảm ơn tất cả!!

Trang 4

Sơ đồ tóm tắt đồ án tốt nghiệp

Trang 5

Mục lục

L i nói uờ đầ 1

L i c m nờ ả ơ 3

S tóm t t án t t nghi pơđồ ắ đồ ố ệ 4

M c l cụ ụ 5

T ng quanổ 6

C s toán h c cho chơ ơ ọ ương trình ExamMaker 12

Xây d ng chự ương trình ExamMaker 51

K t lu nế ậ 62

T i li u tham kh oà ệ ả 63

Trang 6

Tổng quan

Trang 7

Ch¬ng 1 Tổng quan về chương trình ExamMaker

Chương trình ExamMaker là một chương trình trợ giúp ra đề, ra bài tập chomôn phương pháp tính Ý tưởng của ExamMaker là tạo ra một chương trình có thểtrợ giúp thầy cô ra đề thi, hoặc ra bài tập, tạo một đáp án đầy đủ với lời giải cụ thểtheo từng bước của bài toán Đồng thời chương trình còn có khả năng quản lýngân hàng đề

1.1 Những điểm nổi bật của chương trình ExamMaker

Nhìn một cách tổng quan, chương trình ExamMaker có các điểm nổi bật sau:

ThiÕt kÕ theo c«ng nghÖ COM

TÝch hîp nhiÒu kü thuËt khã

Trang 8

1.1.1 ExamMaker cho phép tạo đề một cách tự động.

Môn phương pháp tính là một môn cơ sở bắt buộc đối với sinh viên kỹthuật, là môn giúp sinh viên rèn luyện các phương pháp và kỹ năng tính toán chínhxác Do đó khối lượng bài tập giao cho sinh viên luyện tập và đề thi là rất lớn Đểgiảm tối thiểu thời gian ra đề, các thầy cô có thể nhờ chương trình sinh ngẫu nhiên

đề bài

Do đặc trưng của môn phương pháp tính có rất nhiều dạng bài, và mỗi mộtdạng bài có nhiều phương pháp tính khác nhau Ví dụ các dạng bài nh: Tính gầnđúng nghiệm thực của phương trình đại số và siêu việt; Giải hệ phương trình đại

số tuyến tính…Như vậy với mỗi dạng bài ExamMaker phải có cách sinh ngẫunhiên khác nhau Nhưng sinh ngẫu nhiên mà vẫn đảm bảo tính hợp lý của đề bàiquả thật là việc vô cùng phức tạp

Trong trường hợp đề bài được sinh tự động không vừa ý các thầy cô cácthầy cô có thể chuyển sang phần ra đề bán tự động

1.1.2 ExamMaker cho phép tạo đề bán tự động.

ExamMaker cho phép các thầy cô tạo đề bán tự động bằng các cách nh sau:

Cho trước một vài tham sè sau đó nhờ chương trình tìm nốt các tham số còn lạivới điều kiện nào đó

Ví dô nh trong trường hợp giải gần đúng hệ phương trình đại số tuyến tínhAx=b: các thầy cô cho hệ số ma trận A, véctơ b, yêu cầu sai số giả sử là4

10− Các thầy cô có thể nhờ chương trình xác định được x(0) sao cho sốbước lặp chỉ là 3

Trợ giúp xác định khoảng phân ly bằng đồ thị hàm số đối với dạng bài Tính gầnđúng nghiệm thực của phương trình đại số và siêu việt

Trợ giúp ra đề từ đề đã có sẵn bằng việc thay đổi một số hệ số

1.1.3 ExamMaker có khả năng tự động giải đề theo từng bước.

Khi đề bài đã được tạo, các thầy cô sẽ nhờ ExamMaker tự động giải bàitoán đó Đây là một chức năng rất độc đáo của chương trình vì các phần mềm tínhtoán hiện nay hầu như chỉ đưa ra được kết quả cuối cùng mà không trình bày đượcnhững kết quả trung gian ở từng bước giải của bài toán Dưới đây là những khả

Trang 9

ExamMaker hỗ trợ giải bài toán một cách đầy đủ theo từng bước một, giống nhlàm thủ công.

Chương trình cũng trợ giúp chức năng tạo đáp án cho một đề thi hoàn chỉnh

ExamMaker còn hỗ trợ giải lấy kết quả ngay trong trường hợp các thầy cô chỉmuốn xem kết quả để điều chỉnh đề bài

1.1.4 ExamMaker cho phép quản lý ngân hàng đề.

ExamMaker hỗ trợ cơ chế bảo mật, lưu trữ, tìm kiếm , sắp xếp đề một cáchkhoa học Cho nên nó giúp cho các thầy cô quản lý ngân hàng đề một cách an toàn

và dễ dàng Chương trình còn cho phép kết hợp các ngân hàng đề cá nhân thànhmột kho đề chung cho khoa

1.1.5 ExamMaker được thiết kế theo công nghệ COM.

Để tiện cho việc nâng cấp, thích ứng với nhiều loại dạng bài, nhiều thuậttoán giải, có thể tổng hợp các dạng bài khác nhau thành một đề hoàn chỉnh,chương trình đã được thiết kế theo công nghệ COM (Component Object ModelTechnologies) của Microsoft Theo công nghệ này thì ExamMaker được cấu thành

từ nhiều modun Các modun này có chung mét interface để tương tác với chươngtrình ExamMaker và tương tác với nhau ExamMaker tự động thêm một modunnào đó nếu nó được cài Do đó chương trình ExamMaker hết sức linh động

1.1.6 ExamMaker tích hợp nhiều kỹ thuật khó.

Việc xây dựng chương trình ExamMaker đòi hỏi em phải sử dụng rất nhiềucông nghệ khó thì mới đáp ứng được với những yêu cầu mà bài toán đặt ra Ví dụnh: Kỹ thuật lập trình COM, kỹ thuật liên kết giữa Net với Mathematica, kỹ thuậtlập trình Mathematica, kỹ thuật trình VBA(Visual Basic for Application)…

1.1.7 ExamMaker có giao diện đẹp, tiện dùng.

Việc thiết kế giao diện cho chương trình ExamMaker sao cho tiện dùng,đẹp quả là khó Vì môn phương pháp tính có rất nhiều công thức toán học, việctrình bày đề gặp phải rất nhều khó khăn Tuy nhiên với việc kết hợp các côngnghệ, các control giao diện mạnh như bộ Developer Express Inc.NET, em đã xâydựng được một hệ thống tương tác với người dùng hết sức thân thiện và bắt mắt

Trang 10

1.2 Ứng dụng của ExamMaker

ExamMaker sẽ là một công cụ mạnh giúp các thầy cô ra đề, ra bài tậpphương pháp tính Thông qua đó nó sẽ góp phần làm tăng chất lượng dạy và học.Các thầy cô sẽ nhàn hơn trong công việc ra đề, và sinh viên sẽ có nhiều bài tậphơn để luyện tập Với tính thiết thực của chương trình, em hy vọng ExamMaker sẽđược ứng dụng rộng rãi trong các trường đại học kỹ thuật

1.3 Mục tiêu của ExamMaker

Mục tiêu thứ nhất của chương trình là tạo ra một hệ thống ra đề thi phươngpháp tính trợ giúp được các thầy cô trong việc ra đề

Mục tiêu quan trọng nhất của chương trình ExamMaker, là đã cho em cơhội học tập phương pháp làm việc khoa học để giải quyết một vấn đề thực tế.Ngoài ra sau khi hoàn thành chương trình ExamMaker em cũng đã nắm bắt đượcrất nhiều kỹ thuật thiết kế, lập trình khó, và cũng đã rót ra được nhiều kinh nghiệmcho bản thân

1.4 Hướng phát triển của ExamMaker

Chương trình ExamMaker là một chương trình mở Do đó việc phát triểnchương trình rất dễ dàng, bằng việc viết thêm modun (các modun này được viếtđộc lập với chương trình), chương trình sẽ tự động cập nhật modun trên

Chương trình ExamMaker được thiết kế thành một mô hình ra đề hoànthiện Nếu áp dụng mô hình này, thì ta có thể tạo được chương trình ra đề cho bất

kỳ một môn nào đó chứ không chỉ riêng môn phương pháp tính Trong tương laikhông xa, ExamMaker sẽ trở thành chương trình mà có thể ra đề bất cứ môn họcnào

Trang 11

Ch¬ng 2 Những kỹ thuật đặc biệt dùng trong chương

Trang 12

Cơ sơ toán học cho chương trình ExamMaker

Trang 13

Cơ sở toán học cho chươngtrình ExamMaker chính là lý thuyết mônphương pháp tính Nó cung cấp rất nhiều định nghĩa, định lý, phương pháp tínhđảm bảo cho việc xây dựng các thuật toán trên máy tính.

Lý thuyết môn phương pháp tính đã được trình bày chi tiết ở các sách giáotrình Ở đây em chỉ nêu lên các khái niệm, định lý, công thức tính và công thức sai

sè [1] nhằm xây dựng sơ đồ khối của thuật toán mà không đi sâu vào việc chứngminh

Ch¬ng 3 Sai số_số xấp xỉ

Chương này sẽ giới thiệu cho chóng ta các khái niệm về sai số, số xấp xỉ.Bởi môn phương pháp tính cung cấp các công cụ tính toán gần đúng nên việc xemxét sai số, số xấp xỉ là vô cùng quan trọng

3.1 Khái niệm số xấp xỉ, sai số tuyệt đối và tương đối.

3.1.1 Số xấp xỉ

Trong thực tế chúng ta làm việc chủ yếu với số xấp xỉ

được dùng thay cho A trong tính toán.

Nếu a<A thì a gọi là xấp xỉ thiếu của A Nếu a>A thì a gọi là xấp xỉ thưa của A.

a = −

=

gọi là sai số tuyệt đối của số xấp xỉ a.

Trong thực tế, ta không thể xác định được số đúng A, do vậy mà ta cũng

không thể có được sai số tuyệt đối của số xấp xỉ a Vì vậy, cùng với khái niệm sai

số tuyệt đối người ta thêm vào khái niệm sai số tuyệt đối giới hạn.

Trang 14

Sai số tuyệt đối giới hạn của một số xấp xỉ a là số không nhỏ hơn sai số tuyệt đối của số xấp xỉ a.

Do đó, nếu gọi ∆a là sai số tuyệt đối giới hạn của số xấp xỉ a thì :

A = ± ∆

Trong thực hành, người ta thường chọn ∆alà sè nhỏ nhất có thể được, thoả mãn(*)

3.1.3 Sai số tương đối

Trong một số trường hợp sai số tuyệt đối, sai số tuyệt đối giới hạn khôngthể hiện được mức độ chính xác của phép đo hoặc tính toán Do đó người ta đưavào những khái niệm sau:

A

a A A

=

= δ

số tương đối của số xấp xỉ a Do đó:

Trong thực hành, người ta thường sử dụng sai số tương đối và sai số tương

Trang 15

Phép đo thứ nhất có a1=10m , ∆1 =0.02 suy ra δ1= 0 002

10

02 0

Phép đo thứ hai có a2=2m , ∆2 =0.02 suy ra δ2= 0 01

2

02 0

10 10

m m

m m

m m

110 2

Rõ ràng nếu αmn+1 là chữ số đáng tin thì những chữ số ở bên trái nó cũng

là những chữ số đáng tin, nếu αmn+1 là chữ số nghi ngờ thì những chữ số ở bênphải nó cũng là những số nghi ngờ

Trang 16

Ví dô: 50.25 thì ∆ ≤a (1/2).10-2

Cách này thường dùng trong các bảng số nh bảng các hàm số lượng giác, bảnglôgarit…

3.3 Sù quy tròn số và sai sè quy tròn.

3.3.1 Khái niệm về sự quy tròn và sai sè quy tròn

Sù quy tròn: trong trường hợp số a có quá nhiều chữ số làm cho việc tính toán, ghichép trở nên khó khăn, ngưòi ta phải ngắt bỏ đi một vài chữ số ở cuối và nhậnđược số a1 Việc làm đó được gọi là sự quy tròn số

Sai sè quy tròn tuyệt đối : chính là trị tuyệt đối của hiệu a1-a, ký hiệu là θ 1

a a

a1= 1− θ

Sai sè quy tròn tuyệt đối giới hạn của số đã quy tròn a1, ký hiệu ∆ 1

Trang 17

Ví dô: quy tròn số 3=1.732050875688…đến chữ số có nghĩa thứ 6, thứ

∆ …, và sai số tương đối giới hạn là δx1, δx2, δx3,…

3.4.1 Sai số của một tổng, hiệu

Xét tổng(hiệu) sau: u = ± xx2 ± x

Sai số tuyệt đối giới hạn của tổng(hiệu) trên là : ∆u = ∆x1+ ∆x2 + ∆x3+

Sai số tương đối giới hạn của tổng(hiệu) trên là : u

3.4.2 Sai số của một tích

Xét tích sau: u = x1 x2 x3

Sai số tương đối giới hạn của tích trên là :δu = δx1+ δx2 + δx3 +

Sai số tuyệt đối giới hạn của tích trên là : ∆u = u δu

3.4.3 Sai số của một thương

Sai số tương đối giới hạn của thương trên là :δu = δx1+ δx2

Sai số tuyệt đối giới hạn của thương trên là : ∆u = u δu

3.4.4 Tổng quát

Xét trường hợp tổng quát : u=f(x1, x2, x3,…,xn) trong đó f liên tục, khả vi theocác biến xi

Trang 18

Sai số tuyệt đối giới hạn của u là : x i

3.5 Sai số phương pháp_sai số tính toán.

Sai số phương pháp sinh ra do dùng phương pháp gần đúng Sai số tínhtoán sinh ra do quá tình tính phải làm tròn số Sai số của bài toán là tổng hai sai sốtrên

Ví dụ: tính chuỗi đan dấu B =∑∞

n

nn

Tính BN bá RN thì bài toán có sai số phương pháp

Trong khi tính BN ta làm tròn số có sai số tính toán

Sai số cuẩ bài toán trên là tổng sai số phương pháp và sai số tính toán

Trang 19

Ch¬ng 4 Tính gần đúng nghiệm thực của phương

trình đại số và siêu việt

4.1 Đặt vấn đề

Bài toán tìm nghiệm của phương trình f(x)=0, trong đó f là hàm số đại sốhoặc hàm số siêu việt bất kỳ, đóng một vai trò quan trọng trong khoa học kỹ thuật.Tuy nhiên việc giải chính xác nghiệm của phương trình lại không hề đơn giản, haykhông giải được đối với phương trình đại số bậc cao, hoặc siêu việt Mặt khác cácthông số trong kỹ thuật cũng chỉ là số xấp xỉ Nh vậy việc giải chính xác nghiệmcũng không còn ý nghĩa Do đó việc giải gần đúng nghiệm và đánh giá sai số của

nó là việc vô cùng quan trọng

Chóng ta hãy cùng xem xét về khoảng phân ly nghiệm và các phương phápgiải gần đúng nghiệm trong chương này Đồng thời em cũng đã xây dựng được sơ

đồ khối cho mỗi phương pháp nhằm cung cấp thuật toán cho việc lập trình

4.2 Khoảng phân ly nghiệm.

Khoảng [a,b] được gọi là khoảng phân ly nghiệm nếu nó chỉ chứa một nghiệm của phương trình

Ví dô: cho phương trình :x3-x-1=0

Đồ thị hàm số là:

Từ đồ thị hàm số ta có khoảng phân ly nghiệm của phương trình trên là (1, 2)

-2.5 -2 -1.5 -1 -0.5 0.5

Trang 20

Định lý sau cho ta cách xác định khoảng phân ly nghiệm của phương trình.

//Định lý: Cho y=f(x) liên tục trong (a,b) có đạo hàm f’(x)

Nếu + f(a), f(b) trái dấu ((f(a).f(b)<0)

+f’(x) không đổi dấu trên khoảng (a,b)

thì (a,b) là khoảng phân ly nghiệm của phương trình

Có hai cách xác định khoảng phân ly nghiệm:

4.3.1 Phương pháp chia đôi

4.3.1.1 Nội dung phương pháp

Ta chia đôi khoảng (a, b) :

Ta lại chia đôi khoảng (a1, b1) và tiếp tục làm nh trên…

4.3.1.2 Sự hội tụ của phương pháp.

Dễ dàng thấy phương pháp chia đôi hội tụ khi ta thực hiện vô hạn lần việcchia đôi liên tiếp khoảng phân ly (a, b)

4.3.1.3 Sai số của nghiệm gần đúng

Trang 21

Trong thực hành ta không thể thực hiện phương pháp chia đôi vô hạn lần,

mà ta chỉ có thể thực hiện được n phép chia đôi và lấy nghiệm gần đúng mà thôi(n nguyên dương và hưu hạn) Khi đó : an ≤ ξ ≤ bn và ( )

2

1

a b a

bnn = n

Ta có thể lấy nghiệm gần đúng nh sau:

x≈an khi đó sai số của nghiệm gần đúng là:

) ( 2

1

a b a

b

an − ξ ≤ nn = n

x≈bn khi đó sai số của nghiệm gần đúng là:

) ( 2

1

a b a

1 ) (

n n

Trang 22

Lưu đồ thuật toán tìm nghiệm gần đúng bằng phương pháp chia đôi

4.3.1.5 Ưu nhược điểm của phương pháp

Ưu điểm: phương pháp chia đôi là đơn giản, dễ cài đặt trên máy tính, vì mỗi lần áp

dụng phương pháp chia đôi ta chỉ phải tính một giá trị của hàm số tại điểm giữa

của khoảng

Nhược điểm: Phương pháp chia đôi có tốc độ hội tụ chậm

4.3.2 Phương pháp lặp

Phương pháp là một trong những phương pháp quan trọng để giải gần đúng

nghiệm của phương trình f(x)=0, có khoảng phân ly nghiệm (a, b)

4.3.2.1 Nội dung phương pháp

-

Trang 23

+-Bước 2: chọn x0 ∈[a, b] làm nghiệm gần đúng ban đầu Thay x=x0 vào phươngtrình x=ϕ (x ), ta nhận được nghiệm gần đúng thứ nhất: x1 =ϕ ( x0).

Bước 3: Từ bước hai ta có x1, thay x=x1 vào phương trình x=ϕ (x ) ta được nghiệmgần đúng thứ hai là x2=ϕ ( x1)

Lặp lại nhiều lần bước 3, ta nhận được các nghiệm gần đúng:

) (

→ +∞

n

n n

n n

x x

Hay : ξ = ϕ ( ξ )

4.3.2.2 Sự hội tụ của phương pháp lặp.

Sự hội tụ của phương pháp lặp phụ thuộc vào cách chọn hàm số ϕ (x ).Định lý sau đây sẽ cho ta cách chọn ϕ (x ) để dãy{xn}, n=1,2, hội tụ về nghiệmđúng ξ

//Định lý : Giả sử (a, b) là khoảng phân ly nghiệm của phương trình f(x)=0; ϕ (x )

và ϕ ' x ( ) là những hàm số liên tục trong (a, b), với ϕ (x )được xác định bởiphương trình x= ϕ (x ), tương đương với phương trình f(x)=0 Nếu ϕ ' ( x ) ≤ q < 1

đối với ∀ x ∈ [ a , b ], x0∈ [ a , b ] thì dãy {xn}, n=1,2,3…nhận được từ (*) hội tụ vềnghiệm đúng ξ

4.3.2.3 Sai số của nghiệm gần đúng

Để đánh giá độ lệch giữa nghiệm gần đúng xn, nhận được bằng phươngpháp lặp, và nghiệm đúng ξ ta có các công thức sau:

Công thức thứ nhất:

Trang 24

Công thức thứ hai: công thức này cho phép ta xác định được số bước lặp cần thiết

để có được xn với sai sè mong muốn

0 1

Hàm ϕ(x) của phương trình x=ϕ(x) là dạng thay thế của phương trình f(x)=0

Nghiệm gần đúng ban đầu x0

x1=ϕ(x)

Trang 25

Ưu điểm : tốc độ hội tụ nhanh, dễ cài đặt trên máy tính.

Nhược điểm: Tính toán phức tạp hơn phương pháp chia dôi

4.3.3 Phương pháp dây cung (còn gọi là phương pháp cát tuyến)

4.3.3.1 Nội dung phương pháp

Cho f(x)=0 và khoảng phân ly nghiệm (a, b):

Để dễ cho việc tính toán ta thêm điều kiện f’(x), f”(x) không đổi dấu trên khoảngphân ly (a, b)

Bước 1: Chọn x0=a và d=b nếu f(b) cùng dấu với f”(x) ( chọn x0=b và d=a nếuf(a) cùng dấu với f”(x))

Bước 2: Cát tuyến nối điểm (x0, f(x0)) và (d, f(d)) cắt Ox tại x1 (nh hình vẽ trên).Bước 3 : Lại nối tiếp các điểm (x1, f(x1)) và (d, f(d)) cắt Ox tại x2

Bước n : Cát tuyến nối (xn-1, f(xn-1) và (d, f(d)) cắt Ox tại xn

Dãy {xn} n=1,2,3… là nghiệm gần đúng của phương trình f(x)=0

Công thức tính xn: Từ phương trình cát tuyến nối (xn-1, f(xn-1) và (d, f(d)) ta có côngthức tính xn là:

Trang 26

))(

(

1

1 1

n

x d x f x x

4.3.3.2 Sự hội tụ của phương pháp dây cung.

Nếu f(x) có f’(x), f’’(x) không đổi dấu trên khoảng phân ly (a, b), nếu chọnx0 sao cho f(x0) khác dấu với f”(x) thì phương pháp dây cung hội tụ về nghiệmđúng ξ

4.3.3.3 Sai số của nghiệm gần đúng

Để đánh giá độ lệch giữa nghiệm gần đúng xn, nhận được bằng phươngpháp dây cung và nghiệm đúng ξ ta có các công thức sau:

1) Nếu f ' ( x ) ≥ m > 0 với ∀ x( b a , ) thì ta có công thức tính sai

sè sau:

m

x f

Trang 27

Lưu đồ thuật toán tìm nghiệm gần đúng bằng phương pháp dây cung

4.3.3.5 Ưu nhược điểm của phương pháp

Ưu điểm : Số lương tính toán Ýt ( khi đã biết xn để tính xn+1 ta chỉ phải tính mộtgiá trị của hàm f tại điểm xn với n>0 )

Nhược điểm : Tốc độ hội tụ chậm chỉ hội tụ tuyến tính

4.3.4 Phương pháp tiếp tuyến(còn gọi là phương pháp Niutơn)

4.3.4.1 Nội dung phương pháp

Cho f(x)=0 và khoảng phân ly nghiệm (a, b): chọn x

Tiếp tuyến tại (x0, f(x0)) cắt Ox tại x1

Tiếp tuyến tại (x1, f(x1)) cắt Ox tại x2

Tiếp tuyến tại (xn-1, f(xn-1)) cắt Ox tại xn

Dãy {xn} n=1,2,3… là nghiệm gần đúng của phương trình f(x)=0

+ -

f(b)*f’(x)

>0x=a

Trang 28

Công thức tính xn: Từ phương trình tiếp tuyến tại (xn-1, f(xn-1) ta có công thức tính

xn là:

)('

)(

1

1 1

x f x x

Quá trình dừng lại khi nhận được nghiệm gần đúng đạt độ chính xác yêu cầu

4.3.4.2 Sự hội tụ của phương pháp tiếp tuyến.

Nếu f(x) có f’(x), f’’(x) không đổi dấu trên khoảng phân ly (a, b), nếu chọnx0 sao cho f(x0) cùng dấu với f”(x) thì phương pháp dây cung hội tụ về nghiệmđúng ξ

4.3.4.3 Sai số của nghiệm gần đúng

Để đánh giá độ lệch giữa nghiệm gần đúng xn, nhận được bằng phươngpháp tiếp tuyến và nghiệm đúng ξ ta có các công thức sau:

1) Nếu f ' ( x ) ≥ m > 0 với ∀ x( b a , ) thì ta có công thức tính sai

sè sau:

m

x f

xn− ξ ≤ ( n)

2) Nếu f ' ( x ) ≥ m > 0 với ∀ x( b a , ) và nếu f"(x) ≤M với

) ,

( b a

x

∀ thì ta có công thức tính sai sè sau:

2 1

Trang 29

Lưu đồ:

Lưu đồ thuật toán tìm nghiệm gần đúng bằng phương pháp tiếp tuyến

4.3.4.5 Ưu nhược điểm của phương pháp

Ưu điểm : của phương pháp tiếp tuyến là tốc độ hội tụ nhanh

Nhược điểm: Tính toán phức tạp ( vì biết xn-1, để tính xn ta phải tính một giá trị củahàm f và một giá trị của đạo hàm f’ tại điểm xn-1

B¾t ®Çu

f(x)<=

ξ

KÕt thócNghiÖm lµ x

+ -

x=x

0

Trang 30

Ch¬ng 5 Giải hệ phương trình đại số tuyến tính

5.1 Đặt vấn đề

Ở chương này, chúng ta cùng xem xét việc giải hệ phương trình đại sốtuyến tính với n phương trình, n Èn:

Ax=bTrong đó ma trận A=(aij) , (i,j =1,n ) là ma trận hệ số của hệ phương trình

2 1

và viectơ Èn số của hệ phương trình là

2 1

Ta có thể sử dụng các phương pháp đại số để giải hệ trên Song khối lượngtính toán là rất lớn Nh là dùng phương pháp Crame, số phép tính phải thực hiện làSn=n! phép tính Hay dùng phương pháp Gauss thì ta cần thực hiện n3 phép tính

Do đó ta có thể giải hệ trên bằng phương pháp gần đúng, số lượng phép tính giảm

đi đáng kể, và kết quả tương đối chính xác

5.2 Các phương pháp tính gần đúng nghiệm

5.2.1 Phương pháp lặp đơn.

5.2.1.1 Nội dung phương pháp

Bước 1: Đưa hệ phương trình Ax=b về dạng tương đương sau:

β

α +

= x x

n

n n

αα

α

αα

α

αα

αα

2 22

21

1 12

2 1

Bước 2: Chọn viectơ xấp xỉ đầu x(0) ( thường chọn x(0) = β), rồi tính dần x(k) theocông thức sau:

Trang 31

) (

*lim k k

x x

+∞

=

thì giới hạn đó chính là nghiệm đúng của hệ phương trình Ax=b

5.2.1.2 Sự hội tụ của phương pháp lặp đơn.

Quá trình lặp đơn hội tụ đến nghiệm duy nhất của hệ phương trình Ax=bkhi :

1

<

p

α

mà không phụ thuộc vào việc chọn viectơ xấp xỉ đầu x(0)

5.2.1.3 Sai số của nghiệm gần đúng

Để đánh giá độ lệch giữa nghiệm gần đúng x(k), nhận được bằng phươngpháp lặp đơn và nghiệm đúng x* ta có các công thức sau:

r

r x

Ngày đăng: 22/04/2015, 15:41

HÌNH ẢNH LIÊN QUAN

Bảng tỷ hiệu - Xây dựng chương trình ExamMaker
Bảng t ỷ hiệu (Trang 38)
Sơ đồ khối của đa thức nội suy Niutơn lùi Vào: - Xây dựng chương trình ExamMaker
Sơ đồ kh ối của đa thức nội suy Niutơn lùi Vào: (Trang 41)
Sơ đồ khối của đa thức nội suy Niutơn tiến mốc cách đều Vào: - Xây dựng chương trình ExamMaker
Sơ đồ kh ối của đa thức nội suy Niutơn tiến mốc cách đều Vào: (Trang 42)
Sơ đồ khối của đa thức nội suy Niutơn lùi mốc cách đều Vào: - Xây dựng chương trình ExamMaker
Sơ đồ kh ối của đa thức nội suy Niutơn lùi mốc cách đều Vào: (Trang 43)
1) Bảng người dùng (tblUser) - Xây dựng chương trình ExamMaker
1 Bảng người dùng (tblUser) (Trang 60)
5) Bảng chi tiết đề (tblCT_de) - Xây dựng chương trình ExamMaker
5 Bảng chi tiết đề (tblCT_de) (Trang 61)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w