1. Trang chủ
  2. » Giáo án - Bài giảng

Huong dan su dung Maple

133 187 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 133
Dung lượng 1,58 MB

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

Nội dung

1.1 Giới thiệu Maple•Maple là một hệ thống tính toán trên các biểu thức đại số và minh họa hình học mạnh mẽ của công ty Warterloo Maple Inc.. 1.1 Giới thiệu Maple• Các chức năng cơ bản c

Trang 1

Chương 1

Giao diện và môi trường

làm việc của Maple

Trang 2

1.1 Giới thiệu Maple

•Maple là một hệ thống tính toán trên các biểu thức đại số và minh họa hình học mạnh mẽ của công ty Warterloo Maple Inc.

•(http://www.maplesoft.com), ra đời năm 1991, đã phát triển đến phiên bản 1 8 (đến 2014) Maple chạy trên tất cả các hệ điều hành, có trình trợ giúp (Help) rất dễ sử dụng.

Trang 3

1.1 Giới thiệu Maple

 Từ phiên bản 7, Maple cung cấp ngày càng nhiề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.

Trang 4

1.1 Giới thiệu Maple

• Các chức năng cơ bản của Maple:

– Là một hệ thống 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ương trình toán đại học và sau đại học;

– Cung cấp các công cụ 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ác nhau;

Trang 5

1.1 Giới thiệu Maple

• Các chức năng cơ bản của Maple:

– Một ngôn ngữ lập trình đơn giản và mạnh mẽ, có khả năng tương tác với các ngôn ngữ lập trình khác; – Cho phép trích xuất ra các định dạng khác nhau như LaTex, Word, HTML,

– 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ác lớp học tương tác trực tiếp;

– .

Trang 6

Execution Group

1.2 Giao diện

Trang 7

1.3 Môi trường tính toán và các đối tượng trong trang làm việc

Cụm xử lí - Execution Group

• Cụm xử lí là khái niệm cơ bản của Maple [>

• Các lệnh của Maple đặt trong cụm xử lí và kết thúc bởidấu “;” hoặc dấu “:”

• Khi gõ Enter các lệnh trong cụm xử lí sẽ được thực thi vàtrả lại kết quả

• Có thể đặt nhiều lệnh trong cùng một cụm xử lí bằngcách nhấn Shift Enter

Trang 8

Chương 2

Thực hành tính toán

trên Maple

Trang 10

Tính toán với số (nguyên)

[>99! + 2^100;

2.1 Các phép toán của Maple

933262154439441526816992388562667004907159682 643816214685929638952175999932299156089414639 761565182862536979208272237582511853376819240 228229401496703205376

Trang 13

Phân tích một số ra tích các thừa số nguyên tố

Trang 14

Tìm số nguyên tố

Trước một số a cho trước

2.1 Các phép toán của Maple

Trước một số a cho trước

[> prevprime(a);

Sau một số a cho trước

[> nextprime(a);

Trang 15

Tìm thương và phần dư

Tìm phần dư nguyên

[> irem(m,n); hoặc irem(m,n,’q’);

2.1 Các phép toán của Maple

[> irem(m,n); hoặc irem(m,n,’q’);

Tìm thương nguyên

[> iquo(m,n); hoặc iquo(m,n,’r’);

Trang 17

Tính toán với số thập phân

Maple có thể tính toán các số thập phân với ñộ chính xáctùy ý

2.1 Các phép toán của Maple

tùy ý

Muốn tính chính xác ñại lượng P với ñộ chính xác m

[>evalf(P,m);

Trang 18

Tính e với ñộ chính xác 20 chữ số thập phân

[> evalf(exp(1.0), 20);

2.7182818284590452354

Trang 22

10

4 1

1 1

i

i i

=

+ +

1 1

i

i i

=

+ +

[> value(%);

51508056727594732913722 40626648938819200088497

1 1

i= + i

Trang 23

Tính 3

1

n k

Trang 24

2 1

6 π

Trang 27

Ví dụ

Tính

2 20

2 2

1

i

i i

2140

Công thức Euler

[> product(1-1/(4*n^2),n=1 infinity);

2 1

Trang 28

2.2 Tính toán với biểu thức ñại số

Maple cho phép tính toán với các biểu thức ñại số

Có thể khai triển, thu gọn, ñơn giản, phân tích, … mộtbiểu thức ñại số

Trang 29

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

Trang 31

Cú pháp:

ðơn giản biểu thức

2.2 Tính toán với biểu thức ñại số

[>simplify(expr);

Ví dụ: ðơn giản biểu thức

cos5(x) + sin4(x) + 2cos2(x) – 2sin2(x) – cos(2x)

[>simplify(cos(x)^5+sin(x)^4+2*cos(x)^2-2*sin(x)^2-cos(2*x));

4

cos( ) (cos( ) 1) x x +

Trang 32

Cú pháp:

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

2.2 Tính toán với biểu thức ñại số

Trang 34

Chuyển ñổi dạng của biểu thức

Trang 35

ðịnh nghĩa hàm số

Hàm số thông thường

2.2 Tính toán với biểu thức ñại số

– Maple cung cấp nhiều cách ñể ñịnh nghĩa hàm số ví dụ như cách dùng  , cách dùng lệnh unapply

– Sau khi ñịnh nghĩa hàm số có thể tính giá trị của nó

Hàm từng khúc

– Trong Maple có thể ñịnh nghĩa hàm từng khúc bằng piecewise

– Trong Maple có thể ñịnh nghĩa hàm từng khúc bằng piecewise

với cú pháp:

piecewise(cond1,func1,cond2,func2,…,condn,funcn,func)

Trang 38

Giải phương trình nghiệm nguyên

Cú pháp:

[>isolve(eqns,vars);

2.2 Tính toán với biểu thức ñại số

[>isolve(eqns,vars);

– Eqns: tập các phương trình cần giải

– Vars: tập các biến tự do Nếu không cung cấp thì Maple

tự ñộng tạo ra các biến tự do

Ví dụ:

Ví dụ:

[> isolve(3*x+4*y=13);

{x = −3 4 _ Z y1, = +1 3 _ Z1}

Trang 39

Trăm trâu ăn trăm bó cỏ

Trâu ñứng ăn năm

2.2 Tính toán với biểu thức ñại số

Trang 41

Giải phương trình & hệ phương trình

Trang 43

[>solve({eqn1,eqn2,eqn3},{a,b,c}); {a = 10,b = 9,c = 6}

Trang 44

Giải công thức truy hồi của dãy số

Trang 45

Giải công thức truy hồi của dãy số

Ví dụ: Tìm công thức tổng quát của dãy Fibonaci

Trang 46

Giải hệ 1

2.2 Tính toán với biểu thức ñại số

Giải công thức truy hồi của dãy số

{ f n ( ) = + n 1, ( ) y n = − + 1 2n}

Trang 47

Các phép toán trên vector và ma trận

Trước hết cần nạp gói công cụ linalg

Trang 48

Muốn tạo ma trận ta dùng một trong các lệnh sau:

2.3 Tính toán trong ñại số tuyến tính

Các phép toán trên vector và ma trận

> matrix(L); #L: bảng các danh sách, vector dòng

Trang 49

Ví dụ: Nhập ma trận

1 2

2.3 Tính toán trong ñại số tuyến tính

Các phép toán trên vector và ma trận

Trang 50

ðể nhập một ma trận gồm các phần tử giống nhau:

> B:= matrix(2,2,3);

2.3 Tính toán trong ñại số tuyến tính

Các phép toán trên vector và ma trận

Trang 54

Tính tích trong của ma trận và vector

Dùng lệnh innerprod ñể tính tích trong của một dãy các

Trang 55

Tích trực tiếp của hai vector

Tích trực tiếp của hai vector là một vector

Trang 56

Tích vô hướng của hai vector

Tích vô hướng của hai vector cho kết quả một số thựchoặc phức

2.3 Tính toán trong ñại số tuyến tính

hoặc phức

> dotprod(vector1, vector2);

> dotprod(vector1, vector2, ‘orthogonal’);

Trang 57

Tích vô hướng của hai vector

Trang 58

Tính giá trị riêng & vector riêng của ma trận

Trang 59

Xác ñịnh vector riêng bằng lệnh:

2.3 Tính toán trong ñại số tuyến tính

Tính giá trị riêng & vector riêng của ma trận

Trang 60

Xác ñịnh giá trị riêng:

2.3 Tính toán trong ñại số tuyến tính

Tính giá trị riêng & vector riêng của ma trận

Trang 62

Giải phương trình ñại số tuyến tính

Trang 63

Ví dụ:

>eqns := {x+2*y=3,3*x-5*y=0};

2.3 Tính toán trong ñại số tuyến tính

Giải phương trình ñại số tuyến tính

Trang 64

> eqns := {x+2*z=a,3*x-5*y=6-z};

eqns := {x + 2 z = a, 3 x - 5 y = 6 - z}

2.3 Tính toán trong ñại số tuyến tính

Giải phương trình ñại số tuyến tính

eqns := {x + 2 z = a, 3 x - 5 y = 6 - z}

> A := genmatrix(eqns, [x,y,z], flag);

>A := genmatrix(eqns, [x,y,z], 'b');

Trang 65

Giải phương trình: Ax=u

> linsolve(A,u);

2.3 Tính toán trong ñại số tuyến tính

Giải phương trình ñại số tuyến tính

Trang 66

Tìm cơ sở của không gian vector

Tìm các vector cơ sở của một họ vector bằng basis

Trang 67

Tìm cơ sở của không gian sinh bởi cột và hàng của ma trận

Trang 68

Tìm cơ sở của nhân

Trang 69

Tìm cơ sở trực chuẩn của không gian sinh bởi một họ các vector

> GramSchmidt(vects);

2.3 Tính toán trong ñại số tuyến tính

> GramSchmidt(vects);

vects : tập các vector

Trang 70

Các lệnh vẽ ñồ thị thường yêu cầu bộ nhớ lớn do ñó cầnlàm sạch bộ nhớ bằng lệnh

Trang 71

[Interactive, animate, animate3d, animatecurve, arrow, changecoords, complexplot,

complexplot3d, conformal, conformal3d, contourplot, contourplot3d, coordplot,

coordplot3d, cylinderplot, densityplot, display, display3d, fieldplot, fieldplot3d,

gradplot, gradplot3d, graphplot3d, implicitplot, implicitplot3d, inequal, interactive,

interactiveparams,

listcontplot, listcontplot3d, listdensityplot, listplot, listplot3d, loglogplot, logplot,

matrixplot, multiple, odeplot, pareto, plotcompare, pointplot, pointplot3d, polarplot,

polygonplot, polygonplot3d, polyhedra_supported, polyhedraplot, replot, rootlocus,

semilogplot, setoptions, setoptions3d, spacecurve, sparsematrixplot, sphereplot,

surfdata, textplot, textplot3d, tubeplot]

surfdata, textplot, textplot3d, tubeplot]

Warning, the assigned name arrow now has a global binding [arc, arrow, circle, cone, cuboid, curve, cutin, cutout, cylinder, disk, dodecahedron,

ellipse, ellipticArc, hemisphere, hexahedron, homothety, hyperbola, icosahedron, line,

octahedron, parallelepiped, pieslice, point, polygon, project, rectangle, reflect, rotate,

scale, semitorus, sphe stellate, tetrahedron, torus, transform, translate, vrml]

Trang 72

2.4 Vẽ ñồ thị và các vấn ñề liên quan

Có thể vẽ ñồ thị hàm y = f(x) bằng cú pháp

> plot (f(x), x=a b, y=c d, title=‘hello’);

Vẽ ñồ thị 2D

> plot (f(x), x=a b, y=c d, title=‘hello’);

ðồ thị hàm số sẽ ñược vẽ trong hình chữ nhật [a,b] x [c,d] Nếu không cung cấp c, d, Maple sẽ tự chọn

Trang 75

2.4 Vẽ ñồ thị và các vấn ñề liên quan

Hàm ẩn là hàm cho bởi công thức h(x,y)=0 Dưới một

số ñiều kiện nhất ñịnh ta có thể giải ñược y=f(x)

Trang 77

> plot([ sin(t), cos(t), t=0 2*Pi ]);

Cần phân biệt lệnh trên với:

> plot([ sin(t), cos(t)], t=0 2*Pi);

Trang 78

2.4 Vẽ ñồ thị và các vấn ñề liên quan

Các tùy chọn trong vẽ ñồ thị

Vẽ ñồ thị 2D

Cú pháp tổng quát ñể vẽ ñồ thị:

> plot (expr, range, options);

Range là tham số chỉ vùng vẽ ñồ thị Nếu bỏ qua tham

số range thì Maple sẽ mặc ñịnh lấy x=-10 10

Options là tập các thiết lập tùy chọn giúp cho việc vẽ ñồthị Các thiết lập này có dạng thuộc_tính = giá_trị

Trang 79

2.4 Vẽ ñồ thị và các vấn ñề liên quan

Các tùy chọn trong vẽ ñồ thị

Thiết lập hệ trục tọa ñộ thông qua axes với các giá trị none,

normal, boxed, frame.

Vẽ ñồ thị 2D

normal, boxed, frame.

Màu của ñồ thị ñược ấn ñịnh bằng thuộc tính color với các màu

red, green, blue…

Chọn loại ñường viền (liền hay ñứt ñoạn) thông qua linestyle với

giá trị 0, 1, 2…Trong trường hợp ñường viền là chấm, tiếp tục tùy

cross, box và diamond.

cross, box và diamond.

Chọn số ñiểm ñể vẽ ñồ thị thông qua numpoints Mặc ñịnh, numpoints bằng 50.

Tỉ lệ co giãn ñược thiết lập thông qua scaling với uncontrained và

constrained.

Chọn hệ trục ñể vẽ ñồ thị thông qua coords

Trang 83

Ví dụ: Vẽ ñường ống

[x(t), y(t), z(t)] = [10cost, 10sint, 0]

[x(t), y(t), z(t)] = [10cost, 10sint, 0]

r(t) = 2 + cos6t

>tubeplot([10*cos(t),10*sin(t),0,t=0 2*Pi,radius= 2+cos(6*t),numpoints=200,tubepoints=50]);

Trang 84

Có thể animate trong không gian 3D.

>animate3d(cos(t*x)*cos(t*y), x=-Pi Pi, y=-Pi Pi, t=1 2);

Trang 87

Giới hạn bên trái – bên phải

Giới hạn bên trái:

> limit(f(x), x=a, left);

2.5 Phép tính vi phân và tích phân

> limit(f(x), x=a, left);

Giới hạn bên phải:

> limit(f(x), x=a, right);

Trang 88

> limit(f(x),x=2,left)-limit(f(x),x=2,right);

0

2 ( 2, 2, 3 4)

Trang 90

> evalf(%);

0.2938933330

1 ln(3) ln(5)

2

Trang 94

Trang 96

Khai triển hàm số thành chuỗi số

Maple có thể xấp xỉ một hàm số bởi phần chính chuỗiTaylor khá hoàn hảo

2.5 Phép tính vi phân và tích phân

Taylor khá hoàn hảo

> approx:= series(expr, x=a);

> poly:= convert(approx,polynom);

Trang 97

Ví dụ: Khai triển y=sin(2x).cos(x) tại x=0.

Trang 98

Chương 3

Lập trình trên Maple

Trang 99

2 Lập trình tính toán

3.1 Các khái niệm cơ bản

Tên (name) và chuỗi ký tự

ƒTên là một chuỗi các chữ cái (string of letters) được dùng

như một chỉ mục hay một nhãn để đại diện cho các đối tượng trong Maple có thể thay đổi được như: biến, ký hiệu toán học, các biểu thức, mà ta có thể gán cho nó.

ƒChiều dài tối đa của tên phụ thuộc hệ máy tính mà Maple chạy trên đó (máy 32-bit thì chiều dài tối đa của tên là 524275).

ƒTên bắt đầu với một dấu gạch dưới ( _ ) được sử dụng làm biến toàn cục.

Trang 100

3 Lập trình tính toán

3.1 Các khái niệm cơ bản

Tên (name) và chuỗi ký tự

ƒChuỗi ký tự (string of characters) có thể không phải là

một chuỗi các chữ cái (vì có chứa các ký tự đặc biệt như: khoảng trống, dấu chấm than, ) và do đó không phải là một tên hợp lệ.

ƒMaple cho phép tạo một tên từ một chuỗi ký tự bằng

cách cho nó vào trong cặp dấu nháy đơn ( ` ).

VD: `a variable!`:=10

ƒx hay `x` cùng chỉ đến một tên.

Trang 101

4 Lập trình tính toán

3.1 Các khái niệm cơ bản

Biến trong Maple

ƒBiến trong Maple là những tên được dùng để thay thế cho

một đối tượng nào đó, thông thường là các giá trị cần thay đổi, hoặc các biểu thức tính toán cần cho giá trị Có hai

loại biến trong Maple: Biến lập trình và biến toán học.

ƒBiến lập trình là những biến có thể gán bởi một giá trị nào

đó và giá trị đó được lưu trữ cho đến tận lúc nó thực sự bị thay đổi.

ƒMột biến toán học thể hiện cho ẩn số trong toán học,

không thể gán giá trị, không thể dùng nó như là một biến lập trình.

Trang 102

5 Lập trình tính toán

3.1 Các khái niệm cơ bản

Biến trong Maple

Trang 104

7 Lập trình tính toán

3.1 Các khái niệm cơ bản

Sự định giá

Ví dụ:

>i:=5;

sum(i 2 , i=1 4);

Trang 105

8 Lập trình tính toán

3.1 Các khái niệm cơ bản

Trang 106

9 Lập trình tính toán

3.2 Các hàm thường dùng trong Maple

-Tìm giá trị lớn nhất, nhỏ nhất: max, min

(Tham khảo thêm trong sách)

Trang 107

10 Lập trình tính toán

3.3 Cách tạo lập hàm trong Maple

Sử dụng chu trình proc( )… end

Trang 108

11 Lập trình tính toán

3.3 Cách tạo lập hàm trong Maple

Sử dụng chu trình proc( )… end

ƒParameter_sequence:

– Một dãy các kí hiệu ngăn cách bởi dấu phẩy.

– Tên các tham biến truyền cho chương trình.

Trang 109

12 Lập trình tính toán

3.3 Cách tạo lập hàm trong Maple

Sử dụng chu trình proc( )… end

Trang 110

13 Lập trình tính toán

3.3 Cách tạo lập hàm trong Maple

Sử dụng chu trình proc( )… end

Trang 111

14 Lập trình tính toán

3.3 Cách tạo lập hàm trong Maple

Sử dụng chu trình proc( )… end

ƒGlobal_sequence:

– Là một dãy gồm các biến toàn cục.

– Các biến toàn cục có thể sử dụng bên ngoài thủ

tục.

Trang 112

15 Lập trình tính toán

3.3 Cách tạo lập hàm trong Maple

Sử dụng chu trình proc( )… end

myProc(); #goi thu tuc myProc

printf("Gia tri cua a ben ngoai myProc: %d", a);

Trang 113

16 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

Dãy

- Là một nhóm các đối tượng được sắp xếp theo thứ

tự và ngăn cách nhau bởi dấu phẩy.

- Dãy có thể được gán cho 1 biến.

VD: x:=a, b, c, d.

- Kí hiệu NULL dùng để thay thế cho một dãy trống.

Trang 114

17 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

Trang 115

18 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

– Expression có thể là một tập hợp,danh sách hoặc một biểu thức dạng tổng tích.

Trang 116

19 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

3 n + − 2 n + 6 n 6

Trang 117

20 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

2 2 4 2 7 2 9

⎜ ⎟ ⎜ ⎟

⎝ ⎠ ⎝ ⎠

Trang 118

21 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

Trang 119

22 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

Tập hợp

ƒVí dụ:

>set3:=set1 union set2; set3:={x,y,z,a,b};

>set5:= set1 intersect set2; set5:={x,z}

Trang 120

23 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

> x:= [a,b],[c,d] #dãy gồm 2 list

> x:=(a,b),(c,d) #dãy a,b,c,d

Trang 121

24 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

Danh sách

ƒCó thể dùng lệnh op để truy cập phần tử trong danh

sách.

ƒHoặc dùng listname[index] Với cách này ta có thể

thay đổi phần tử của danh sách.

Trang 122

25 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

Trang 123

26 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

Trang 124

27 Lập trình tính toán

3.4 Các cấu trúc dữ liệu cơ bản

Trang 125

28 Lập trình tính toán

Trong khi điều_kiện đúng, thực thi công việc.

Dùng các câu lệnh như RETURN, break, quit để thoát ra giữa vòng lặp.

Phải là kiểu Boolean

Trang 126

29 Lập trình tính toán

r := x mod y

x:=y y:=r

In ra x

Trang 127

30 Lập trình tính toán

Trang 128

31 Lập trình tính toán

n:=n+1:

od:

seq(F(k),k=10 20);

Trang 130

33 Lập trình tính toán

Trang 131

34 Lập trình tính toán

Trang 132

35 Lập trình tính toán

Trang 133

tam:=a[i]; a[i]:=a[j]; a[j]:=tam;

fi; od; od;

Ngày đăng: 23/10/2017, 22:43

TỪ KHÓA LIÊN QUAN

w