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

ỨNG DỤNG MAPLE GIẢI VÀ BIỆN LUẬN HỆ PHƯƠNG TRÌNH BẬC NHẤT HAI ẨN

23 2,3K 13

Đ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 23
Dung lượng 792,8 KB

Nội dung

- Thiết kế các đối tượng 3 chiều…..v….v… Ngoài ra, ngoài khả năng tính toán mạnh, Maple còn là ngôn ngữ lập trình hướng thủ tục Thủ tục trong Maple là một dãy các lệnh của Maple theo thứ

Trang 1

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINHTRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN

Trang 2

Mục lục

Lời nói đầu 3

CHƯƠNG I: GIỚI THIỆU TỔNG QUAN VỀ MAPLE 5

I Giới thiệu về Maple 5

II Chức năng chính của Maple 5

III Cấu trức dữ liệu 6

1 Dãy biểu thức ( Expression Sequence) 6

2 Danh sách (List) 6

3 Tập hợp (Set) 6

4 Mảng 7

5 Bảng (Table) 7

IV Một số hàm thông dụng trên cấu trúc dữ liệu 8

1 Hàm phát sinh số ngẫu nhiên 8

2 Hàm tìm max,min một dãy 8

3 Hàm map 8

4 Hàm add,mul 8

5 Hàm subsop 9

6 Các tính toán số học thông dụng 9

7 Tính toán với độ chính xác theo yêu cầu 9

8 Các thao tác với số nguyên tố 9

9 Giải phương trình 10

10 Khái niệm hằng số, biến số 10

11 Tính tổng và tích 11

12 Khai triển biểu thức đại số 11

13 Phân tích đa thức thành nhân tử 11

14 Đơn giản biểu thức đại số 11

15 Tối giản phân thức 11

16 Thay giá trị cho biến trong biểu thức 12

17 Chuyển đổi dạng biểu thức 12

V Cấu trúc vòng lặp 12

1 Vòng lặp While 12

Trang 3

2 Vòng lặp for 13

3 Lệnh điều kiện if 14

4 Lệnh break 14

5 Lệnh next 15

6 Sử dụng các hàm RETURN, ERROR 15

VI Thiết lập chu trình trong Maple 15

1 Khai báo chu trình 16

2 Giải thích các khai báo 16

3 Tham biến 17

4 Phạm vi các biến (biến toàn cục, biến cục bộ và tham biến) 17

CHƯƠNG II: BÀI TOÁN ỨNG DỤNG MAPLE 19

1 Phân tích yêu cầu bài toán: 19

2 Cấu trúc dữ liệu: 19

3 Thuật giải: 19

Kiểm tra a 2 + b 2 <>0 19

4 Triển khai trong Maple 19

Kết luận 22

Tài liệu tham khảo 23

Trang 4

Lời nói đầu

Maple là phần mềm tính toán khá mạnh mẽ Với phần mềm Maple ta có thể :

- Thực hiện tính toán với khối lượng lớn, với độ chính xác cao Tránh được những sai lầm trong khi tính toán

- Sử dụng các gói chuyên dụng của Maple để giải quyết các bài toán cụ thể như: vẽ

đồ thị (gói plot), hình học giải tích (gói geometry), đại số tuyến tính (gói linalg),

- Thiết kế các đối tượng 3 chiều… v….v…

Ngoài ra, ngoài khả năng tính toán mạnh, Maple còn là ngôn ngữ lập trình hướng thủ tục

Thủ tục trong Maple là một dãy các lệnh của Maple theo thứ tự mà người lập trình đã định sẵn để giải quyết một công việc cụ thể nào đó Maple sẽ tự động thức hiện tuần tự các lệnh trong thủ tục rồi trả về kết quả sau cùng

Để hiểu rõ hơn những tính năng mạnh mẽ của maple, trong phần báo cáo này, tôi xin trình bày ứng dụng của Maple trong việc giải hệ phương trình bậc nhất hai ẩn

Tôi xin chân thành cảm ơn PGS TS Đỗ Văn Nhơn đã truyền đạt cho tôi những kiến thức về Maple

Chân thành cảm ơn!

Trang 5

CHƯƠNG I: GIỚI THIỆU TỔNG QUAN

VỀ MAPLE

I Giới thiệu về Maple.

Maple là một phần mềm Toán học do Đại Học Tổng HợpWaterloo(Canada) xây dựng

và đưa vào sử dụng năm 1985 Sau nhiềulần cải tiến và phát triển qua nhiều phiên bản khác nhau và ngày càngđược hoàn thiện Maple chạy trên tất cả các hệ điều hành, có trìnhtrợ giúp (Help) rất dễ sử dụng Từ phiên bản 7, Maple cung cấp ngày càngnhiều các công

cụ trực quan, các gói lệnh tự học gắn liền với toán phổthông và đại học

Công cụ tính toán như Maple giúp chúng ta được giải phóng khỏi những những tính toán phức tạp vốn mất nhiều thời gian và đặc biệt là tránh được nhầm lẫn, sai sót khi tính toán

Ưu điểm đó khiến ngày càng có nhiều nước trên thếgiới lựa chọn sử dụng Maple trong dạy-học toán tương tác trước đòi hỏicủa thực tiễn và sự phát triển của giáo dục

II Chức năng chính của Maple.

Thực hiện các tính toán với khối lượng lớn, với thời gian nhanh và độchính xác cao

Sử dụng các gói chuyên dụng của Maple để giải quyết các bài toán cụthể như: vẽ đồ thị (gói plots), hình học giải tích (gói geometry), đại sốtuyến tính (gói linalg), Giải tích (gói student), phương trình vi phân(gói DEtools), lý thuyết số (gói numtheory), Dữ liệu rời rạc(góiDiscreteTransforms),

Thiết kế các đối tượng 3 chiều

Minh họa hình học thuận tiện gồm: vẽ đồ thị tĩnh và động của cácđường và mặt được cho bởi các hàm tùy ý trong nhiều hệ tọa độ khácnhau;

Tính toán trên các biểu thức đại số;

Có thể thực hiệc được hầu hết các phép toán cơ bản trong chươngtrình toán đại học vàsau đại học;

Trang 6

Ngôn ngữ lập trình đơn giản và mạnh mẽ, có khả năng tương tác vớicác ngôn ngữ lập trình khác;

Một công cụ biên soạn giáo án và bài giảng điện tử, thích hợp với cáclớp học tương tác trực tiếp;

Một công cụ hữu ích cho học sinh và sinh viên trong việc tự học……

III Cấu trức dữ liệu.

1 Dãy biểu thức ( Expression Sequence)

Dãy là một cấu trúc dữ liệu gồm:

- Các phần tử ngăn cách nhau bởi dấu ,

Tìm số phần tử của list bằng nops(L);

Truy cập các phần tử của list

>

Hàm op(L) trả về dãy tương ứng với danh sách => dùng để nối hai danh sách

3 Tập hợp (Set)

Tập hợp là dãy được bao trong cặp dấu ngoặc nhọn

Trong tập hợp thứ tự các phần tử không quan trọng

Trang 7

Các phép toán trên tập hợp như union(hợp),intersect(giao),minus(trừ).

Xem kiểu whattype() Ví dụ xem kiểu của tập hợp Whattype(th)

4 Mảng

Mảng là cấu trúc dữ liệu bao gồm

Một hay nhiều chiều

Miền chỉ mục của các chiều phải là khỏang số nguyên

Các phần tử của mảng có thể là mọi thứ

Cú pháp : > array(indexfcn , bounds ,list);

- indexfcn (tùy chọn) : hàm chỉ số

- bounds (tùy chọn) : dãy của các khỏang

- list (tùy chọn) : danh sách các giá trị khởi đầu

5 Bảng (Table)

Bảng là cấu trúc dữ liệu trong đó các chỉ mục có thể là bất cứ gì

Cú pháp: > table (F,L);

* F (tùy chọn): hàm chỉ số

* L (tùy chọn): dãy hay tập hợp gồm các phần tử của bảng

Nếu L có dạng danh sách hay tập hợp các đẳng thức thì các vế trái sẽ là các chỉ số củamảng ; các phần tử vế phải sẽ là các phần tử của bảng

Trái lại, các chỉ số là các số nguyên 1,2,3

indices(bang) : trả về dãy chỉ số

entries(bang) : tra về dãy các phần tử của bảng

Trang 8

IV Một số hàm thông dụng trên cấu trúc dữ liệu

1 Hàm phát sinh số ngẫu nhiên

rand(m n)sẽ trả về thủ tục nếu gọi có thể sinh số nguyên ngẫu nhiên trong khỏang m n

rand(m n)( ): sinh số nguyên ngẫu nhiên trong khỏang m n

rand( ): sinh số nguyên ngẫu nhiên không âm có 12 chữ số

randomize( ): gieo giống lại bộ sinh số

add dùng để cộng dãy các giá trị

mul dùng để nhân dãy các giá trị

Cú pháp: add(f, i = m n) add(f, i = x) add(f, i

in x) mul(f, i = m n) mul(f, i = x) mul(f, i in x)

Trang 9

Lũy thừa: ^, giai thừa: x!

Logarit: ln(x), log[a](b), exp(x)

Các hàm lượng giác: sin(x), cos(x), tan(x), cot(x),

Một số hàm khác: abs(x) - |x|, sqrt(x) - căn bậc 2 của x

7 Tính toán với độ chính xác theo yêu cầu

8 Các thao tác với số nguyên tố

Phân tích một số n thành thừa số nguyên tố: lệnh ifactor(n);

Kiểm tra một số n có phải là số nguyên tố không?: lệnh isprime(n);

Tìm số nguyên tố đứng sau một số n cho trước: lệnh nextprime(n);

Tìm số nguyên tố đứng trước một số n cho trước: lệnh prevprime(n);

Trang 10

Tìm ước số chung lớn nhất của 2 số nguyên dương a, b: lệnh gcd(a,b);

Tìm bội số chung nhỏ nhất của 2 số nguyên dương a, b: lệnh lcm(a,b);

Tìm số dư khi chia a cho b: lệnh irem(a,b);

Tìm thương nguyên khi chia a cho b: lệnh iquo(a,b);

10 Khái niệm hằng số, biến số.

Trong Maple, biến số được sử dụng thoải mái mà không cần khai báo, định nghĩa trước

Biến số, hằng số được đặt tên thỏa mãn một số quy tắc sau:

+ Không bắt đầu bằng chữ số

+ Không chứa khoảng trắng và một số ký tự đặc biệt như: %,^,&,*,$,#,

+ Không được trùng với tên một số hàm và lệnh của Maple: sin, cos, ln, min, max,

Một biến số sẽ trở thành hằng số ngay khi nó được gán cho một giá trị nào đó

Nếu muốn biến một hằng số trở lại biến số, ta dùng phép gán: ten_bien:='ten_bien';

Trang 11

11 Tính tổng và tích

Tính tổng: sử dụng lệnh sum (tính trực tiếp ra kết quả) hoặc Sum(biểu diễn dạng công

thức)

Cú pháp: sum(bieu_thuc_trong_tong, bien :=gia_tri_dau gia_tri_cuoi);

Sum(bieu_thuc_trong_tong, bien :=gia_tri_dau gia_tri_cuoi);

Tính tích: sử dụng lệnh product (tính trực tiếp ra kết quả) hoặc Product (biểu diễn

dạng công thức)

Cú pháp: product(bieu_thuc_trong_tong, bien :=gia_tri_dau gia_tri_cuoi);

Product(bieu_thuc_trong_tong, bien :=gia_tri_dau gia_tri_cuoi);

Lưu ý: giá trị vô cực được biểu diễn bằng từ khóa infinity

12 Khai triển biểu thức đại số

Trang 12

> tu := x^3-y^3:

> mau := x^2+x-y-y^2:

> phanthuc := tu/mau:

> normal(phanthuc):

16 Thay giá trị cho biến trong biểu thức

Cú pháp: subs(bien = gia_tri , bieu_thuc);

Trang 13

Vòng lặp while cho phép lặp chuỗi các câu lệnh giữa do và od khi mà điều kiệncondition vẫn còn đúng (tức là biểu thức điều kiện cho giá trị true) Điều kiện conditionđược kiểm tra ngay tại đầu mỗi vòng lặp, nếu nó thỏa mãn (giá trị của nó là đúng) thì cáccâu lệnh bên trong được thực hiện, sau đó lại tiếp tục kiểm tra điều kiện condition chođến khi điều kiện không còn thỏa mãn nữa.Vòng lặp while thường được sử dụng khi sốlần lặp một hay một chuỗi biểu thức là không xác định rõ, đồng thời ta muốn các biểuthức đó cần được lặp trong khi một điều kiện nào đó còn được thỏa mãn.

Điều kiện condition trong vòng lặp phải là một biểu thức boolean, tức là giá trị của nóchỉ có thể là đúng hoặc sai, nếu không thì sẽ sinh ra lỗi

Trong trường hợp muốn thoát ra khỏi vòng lặp ngay từ trong giữa vòng lặp, ta có thểthực hiện bằng cách dùng câu lệnh RETURN, break hoặc quit

Hoặc dạng phát biểu khác:

for name in expression

do

statement sequenceod;

Trang 14

Chức năng:

Vòng lặp for được dùng để lặp một chuỗi các biểu thức được đặt giữa do và od, mỗilần lặp tưng ứng với một giá trị phân biệt của biến chỉ số name đứng sau từ khoá for Banđầu, giá trị start được gán cho biến chỉ số Nếu giá trị của biến name nhỏ hơn hay bằnggiá trị finish thì chuỗi lệnh nằm giữa do và od được thực hiện, sau đó biến name được gángiá trị tiếp theo bằng cách cộng thêm vào nó giá trị change (name:=name+change) Sau

đó, biến name được so sánh với finish để quyết định xem việc thực hiện chuỗi lệnh cóđược tiếp tục nữa không Quá trình so sánh biến chỉ số name và thực hiện chuỗi lệnhđược lặp liên tiếp cho đến khi giá trị của biến name lớn hơn giá trị finish Giá trị cuốicùng của biến name sẽ là giá trị vượt quá finish đầu tiên

Trong trường hợp muốn thoát khỏi từ giữa vòng lặp, ta có thể dùng các câu lệnhbreak, quit, RETURN giống như trong vòng lặp while

3 Lệnh điều kiện if

Cấu trúc cú pháp:

if condition then

statement sequence

| elif condition then statement sequence |

| else statement sequence |

Trang 15

Nếu trong vòng lặp lệnh break được gọi thì chương trình sẽ thoát ra khỏi vòng lặpngay.

6 Sử dụng các hàm RETURN, ERROR

Hàm RETURN được sử dụng để cho giá trị hàm trước khi thoát khỏi chu trình Nếukhông có lệnh RETURN, chu trình tự động cho kết quả của phép tính cuối cùng trongchu trình

Hàm ERROR được sử dụng để đưa thông điệp lỗi ra màn hình từ bên trong chu trình

VI Thiết lập chu trình trong Maple.

Maple là một ngôn ngữ lập trình hướng chu trình (procedure) Chúng ta có thể làmviệc với Maple bằng hai chế độ khác nhau: Chế độ tương tác trực tiếp thông qua việcnhập từng lệnh đơn lẻ ngay tại dấu nhắc lệnh của Maple và nhận được ngay kết quả củalệnh đó Chế độ chu trình được thực hiện bằng cách đóng gói một dãy các lệnh xử lí cùngmột công việc vào trong một chu trình (procedure) duy nhất, sau đó ta chỉ cần gọi chutrình này và Maple tự động thực hiện các lệnh có trong chu trình đó một cách tuần tự vàsau đó trả lại kết quả cuối cùng

Maple chứa một lượng rất lớn các hàm tạo sẵn đáp ứng cho những yêu cầu tính toánkhác nhau trong nhiều lĩnh vực Các hàm này được lưu trữ trong các gói chu trình(package) và người sử dụng có thể dễ dàng gọi đến mỗi khi cần thiết Tuy nhiên, người

Trang 16

dùng Maple có thể tự tạo cho riêng mình những gói chu trình cũng như có thể trao đổidùng chung những gói chu trình nào đấy, phục vụ cho công việc mang tính đặc thù riêngcủa mình.

Các khái niệm cơ bản cần phải nắm vững để tạo ra một chu trình (procedure) là: Cấu trúc proc() end; cùng với các khai báo trong cấu trúc này (global, local,option, )

Các cấu trúc dữ liệu và các hàm có liên quan (dãy-sequence, tập hợp-set, danhsách-list, mảng-array, bảng-table)

Các hàm lập trình cơ bản (đã nêu ở trên) và các hàm liên quan đến việc xử lí dữliệu (eval, evalf, subs, map, convert, )

1 Khai báo chu trình

Lời gọi khai báo một chu trình:

2 Giải thích các khai báo

parameter_name: Là một dãy các kí hiệu, ngăn cách nhau bởi các dấu phẩy, chứa têncác tham biến truyền cho chu trình

Trang 17

local_sequence: Là một dãy các tên được khai báo là biến cục bộ trong chu trình, nóchỉ có giá trị sử dụng trong phạm vi chu trình đang xét (local được sử dụng để khai báocho các biến chỉ sử dụng bên trong một chu trình).

global_sequen: Dãy các tên biến toàn cục có giá trị sử dụng ngay cả bên ngoài chutrình

options_sequence: Dãy các tuỳ chọn cho một chu trình

statements_sequence: Dãy các câu lệnh do người lập trình đưa vào

Tham biến có tính cục bộ: chúng chỉ được sử dụng bên trong chu trình đã được khaibáo, bên ngoài chu trình này chúng không mang ý nghĩa gì

Kiểu của tham biến có thể được khai báo trực tiếp

4 Phạm vi các biến (biến toàn cục, biến cục bộ và tham biến)

a Biến toàn cục:

Biến toàn cục được khai báo sau từ khoá global trong khai báo chu trình

Biến toàn cục được khai báo bên trong một chu trình, nhưng có phạm vi giá trị trongtoàn bộ chương trình, tức là bên ngoài phạm vi của chu trình mà nó được khai báo trongđó

Trang 18

b Biến cục bộ:

Biến cục bộ được khai báo sau từ khoá local trong khai báo chu trình

Biến cục bộ chỉ có giá trị bên trong chu trình mà nó được khai báo Ngoài chu trìnhnày nó không mang ý nghĩa gì

Trang 19

CHƯƠNG II: BÀI TOÁN ỨNG DỤNG

MAPLE

Chương trình Maple cho phép ta tính định thức ma trận, giải hệ phương trình, phươngtrình, bất phương trình,….Ngoài ra, Maple còn cho phép ta tìm ra giá trị riêng, vectơriêng, đa thức đặc trưng, tìm dạng chính tắc của ma trận …

Trong phạm vi bài này sẽ ứng dụng Maple giải hệ phương trình bậc nhất hai ẩn

1 Phân tích yêu cầu bài toán:

Input: hệ phương trình bậc nhất hai ẩn có tham số m theo đúng dạng chuẩn và tham số

- Dx=Dy =0 và D =0 hpt vô nghiệm

- D=0 và Dx <> 0 hoặc D=0 và Dy <>0 hpt vô số nghiệm

4 Triển khai trong Maple.

Trang 23

Tài liệu tham khảo

[1] Nguyễn Chánh Tú – Sử dụng Maple để dạy và học toán trong môi trường tương tác

[2] Tailieu.vn

[3] Thư viện của Maple

Và các tài liệu khác trên Web

Ngày đăng: 10/04/2015, 01:35

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w