Đề Tài: MATHEMATICA

• Nhóm:11 • Thành Viên: 1. Lương Nguyễn Trung Hiếu 2.Nguyễn Trọng Hiếu 3.Phạm Đăng Hưng 4.Lê Hồng Hải

I.Giới Thiệu Chung Về Mathematica

• Mathematica là môi trường ngôn ngữ tích hợp

đầy đủ nhất cho các tính toán kỹ thuật.

• Được sử dụng trong khoa học, kỹ thuật, toán

học và các lĩnh vực khác của kỹ thuật máy tính. • Mathe là thế hệ thứ 3 của dạng ngôn ngữ dựa trên nguyên lý xử lý các dữ liệu tượng trưng. • Nó là ý tưởng của Stephen Wolfram và được phát triển tại trung tâm nghiên cứu Wolfram • Phiên bản đầu tiên Mathe(ver 1.0) phát hành

ngày 26/6/1988.

II.Cấu trúc của Mathematica • Phần lớn trên C+ (500.000 dòng lệnh) • 80.000 dòng lệnh khác được viết trên

chính Mathe gồm – Các thuật toán riêng của Mathe

• Slove • Eigenvalue • Plot, Plot3D • Factor • …

– Các gói phụ kiện tăng cường

III. Tính Năng và Đặc Trưng • Các thư viện chuẩn và các tính năng tính

toán nâng cao

• Mô phỏng dữ liệu 2D-3D, tính năng ảo

hoá, Công Cụ xử lý hình ảnh, phân tích đồ thị

2

1

10

20

30

40

- 1

- 2

• Ma trận và thao tác dữ liệu • Giải pháp cho các hệ thống tính toán phức tạp (đạo hàm, tích phân,…), các bài toán quan hệ • Đại số và cho phép gộp, tách các phép toán • Đa số liệu thống kê thư viện • Một NNLT hướng đối tượng, có tính xây dựng,

kết nối với SQL, Java, Http, .Net, C

• Công Cụ xử lý hình ảnh, mô phỏng, phân tích đồ

thị

• Kỹ thuật xử lý bao gồm cả công thức chỉnh sửa

và tự động tạo ra các báo cáo

• Một tập hợp cơ sở dữ liệu của toán học, khoa

học, và kinh tế-xã hội thông tin

• Hỗ trợ cho các số phức, chính xác biến tượng

trưng và máy tính hoá các công thức.

HƯỚNG DẪN THỰC HƯỚNG DẪN THỰC HÀNH CƠ BẢN HÀNH CƠ BẢN MATHEMATICA MATHEMATICA

I/Cách khai báo các hàm số thông dụng cơ bản (có sẵn)

f[x_]:=Abs[x] (giá trị tuyệt đối)

f[x_]:=Sqrt[x] hoặc f[x_]:=x^(1/2) (căn)

f[x_]:=Sin[x]

f[x_]:=Cos[x]

f[x_]:=Tan[x]

f[x_]:=Cot[x]

f[x_]:=Sec[x] ( 1 / sin(x))

f[x_]:=Csc[x] ( 1 / cos(x))

f[x_]:=ArcSin[x]

f[x_]:=ArcCos[x]

f[x_]:=Log[a,x]

f[x_]:=Log[10,x]

f[x_]:=Log[E,x]

II/ Các phép toán số học

+, -, *, /, ^

III/Cách khai báo một hàm số mới

1/ Khai báo hàm giá trị thực, biến thực .x

3 x sinx ln x e cosx .

f x ( )

.

• VD:

f[x_]:=x*Sin[x]+(Log[x]^3)*(E^x)*Cos[x]

2

f x y ( , )

x y .

2 y sin x .

• VD2:

f[x_,y_]:= x*y^2+y*(Sin[x])^2

2/Khai báo hàm thực biến và hàm giá trị của

véctơ (ma trận) • VD: cho ma trận

.Khi đó hàm

ij m n

 A

)

a ij

Max (  i {1,...,m}

được

n  j  1

  A a chuẩn của ma trận khai báo như sau

f[A_]:=Max[ Table[ Sum[Abs[A[[i,j]]],{j,1,n}],

{i,1,m}] ]

x z .

F( ,y,z)=

x

• VD:Khai báo hàm

 x y y z . x e . x siny .

y cosz

.

f f f

1 2 3

   

    

   

   

F[x_,y_,z_]:={ x+y+z , x*E^(y*z) , x*Sin[y]+y*Cos[z]}

1.1/ Vẽ đồ thị hàm số trong mặt phẳng

• Vẽ đồ thị hàm một biến(y=f(x)):

IV/Giải toán bằng Mathematica 1/ Giải toán đại số và giải tích

Plot[ f[x] , {x,a,b} ]

• Vẽ trên cùng một hệ trục tọa độ đồ thị của hai hàm

số:

Plot[ {f[x],g[x]} , {x,a,b} ]

• Vẽ đồ thị của hàm cho bởi phương trình tham

 [a,b] t

số

 x xt () ,  y y y ( ) ParametricPlot[ {x[t],y[t]} , {t,a,b} ]

Để vẽ trong không gian 3D ta dùng các hàm:

• Plot3D • ParametricPlot3D

1.3/ Các giới hạn – Limit[f[x],x->a] – Limit[f[x],x->a, Direction->-1] – Limit[f[x],x->a, Direction->1] – Limit[f[x],x->Infinity] – Limit[f[x],x-> -Infinity] Trong đó infinity để chỉ vô cùng

1.4/ Tính đạo hàm cấp n của hàm f theo biến x

D[ f , {x,n} ] Chú ý : Nếu tính đạo hàm cấp 1 có thể dùng lệnh D[ f ,x]

1.5/ Tính nguyên hàm của hàm f(x) theo

biến x bằng lệnh

Integrate[ f[x] , x]

1.6/ Tính tích phân của hàm f(x), trên đoạn

[a,b] (kết quả là số thập phân) bằng lệnh

NIntegrate[ f[x] , {x,a,b} ]

2/ Giải toán đại số tuyến tính

2.1/ Khai báo các ma trận biết trước các

1 2 4

A

5 2 4

phần tử

2 1 7

    

    

A={{1,2,4},{5,2,4}, {2,1,7}};

Muốn lấy phần tử hàng i cột j của ma trận A ta dùng lệnh

VD: Cho ma trận

A[[i,j]]

• Chuyển vị của ma trận A: Transpose[A] • Ma trận ngịch đảo của A: Inverse[A] • Tính định thức của ma trận A: Det[A]

2.2/ Các phép toán ma trận

2.3/ Lệnh giải hệ phương trình A.X=B sau khi đã nhập

hai ma trận A và B

LinearSolve[A,B] Lỗi thường gặp khi gõ các công thức trên

Gõ sai

Gõ đúng

e^(x+1)

E^(x+1)

E^x+1

E^(x+1)

E^[x+1]

E^(x+1) hoặc Exp[x+1]

Sin^3[x]

(Sin[x])^3 hoặc Sin[x]^3

Sin(x)^3

Sin[x]^3

sin[x]^3

Sin[x]^3

Ln(x)

Log[x] hoặc

ln[x]

Log[x]

Log^2[x]

Log[x]^2

lg[x]

Log[10,x]

V/ Lập trình đơn giản hỗ trợ môn phương pháp

tính

1/ Muốn lặp lại các công việc “việc 1, việc 2, …, việc k” n lần ta dùng lệnh Do như sau

Do[việc 1;việc 2;…; việc k, {n}]

2/ Chừng nào biểu thức lôgic “bt” còn có giá trị đúng thì ta còn thực hiện lặp lại các công việc “việc 1, việc 2, …, việc k” . Khi đó ta sẽ dùng lệnh While để lập trình như sau

While[bt ,việc 1;việc 2;…; việc k]

3/ Trong mỗi bươc lặp đôi khi ta cần tăng giá trị của biến nguyên n thêm p đơn vị ta dùng lệnh sau

n+=p

4/ Để in ra màn hình gia trị của một biến x ta dùng lệnh Print như sau

Print[x]

THE END THE END