Đề 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

