Tải bản đầy đủ (.docx) (44 trang)

ĐỀ TÀI NGHIÊM CỨU KHOA HỌC CHỦ ĐỀ MATLAB VÀ SIMULINK

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.71 MB, 44 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC SƯ PHẠM

BÁO CÁO TỔNG KẾT ĐỀ TÀI
NGHIÊN CỨU KHOA HỌC SINH VIÊN
NĂM HỌC 2019-2020

ỨNG DỤNG PHẦN MỀM MATLAB VÀ PHẦN MỀM
MATHEMATICA THIẾT KẾ MỘT SỐ BỘ THÍ NGHIỆM ẢO
HỖ TRỢ Q TRÌNH DẠY HỌC VẬT LÝ Ở TRƯỜNG THPT

Sinh viên thực hiện: Nguyễn Hữu Huy, Vankham Boudthaly
Người hướng dẫn khoa học: ThS. Giáp Thị Thùy Trang

Thái Nguyên,

tháng 6 năm 2020
Ii


ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC SƯ PHẠM

BÁO CÁO TỔNG KẾT ĐỀ TÀI
NGHIÊN CỨU KHOA HỌC SINH VIÊN
NĂM HỌC 2019 - 2020

ỨNG DỤNG PHẦN MỀM MATLAB VÀ PHẦN MỀM
MATHEMATICA THIẾT KẾ MỘT SỐ BỘ THÍ NGHIỆM ẢO
HỖ TRỢ Q TRÌNH DẠY HỌC VẬT LÝ Ở TRƯỜNG THPT


Xác nhận của người hướng dẫn
(ký, họ tên)

Sinh viên thực hiện
(ký, họ tên)

ThS. Giáp Thị Thùy Trang

Thái Nguyên,

Nguyễn Hữu Huy
Vankham Boudthaly

tháng 6 năm 2020
Ii


LỜI CẢM ƠN
Để hoàn thành được đề tài NCKH này, em xin bày tỏ lòng biết ơn chân thành và
sâu sắc nhất đến Cô giáo Giáp Thị Thùy Trang, người đã nhiệt tình và tận tâm chỉ bảo,
hướng dẫn em trong suốt thời gian thực hiện đề tài.
Em xin chân thành gửi lời cảm ơn tới các thầy cô giáo trong tổ bộ môn phương
pháp giảng dạy môn Vật Lý của Khoa Vật Lý và các thầy cô trong Khoa đã hết lòng
dạy bảo khóa 52 chúng em trong suốt quá trình học tập và nghiên cứu tại trường.
Xin gửi lời tri ân sâu sắc đến gia đình, bạn bè đã luôn động viên khích lệ, giúp đơ
em trong thời gian học tập và nghiên cứu.
Do khả năng và thời gian có hạn, mặc dù đã cố gắng rất nhiều song bản NCKH này
chắc chắn không tránh khỏi thiếu sót. Em rất mong tiếp tục nhận được sự chỉ dẫn, góp
ý của các nhà khoa học, các thầy cô giáo.
Em xin chân thành cảm ơn!

Thái Nguyên, tháng 6 năm 2020
Tác giả

Nguyễn Hữu Huy
Vankham Boudthaly

Ii


MỤC LỤC

LỜI CẢM ƠN...............................................................................................................i
MỤC LỤC....................................................................................................................ii
DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT..................................................i
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ......................................................................ii
DANH MỤC BẢNG....................................................................................................iv
MỞ ĐẦU....................................................................................................................... 1
1. Lý do chọn đề tài......................................................................................................1
2. Mục đích đề tài.........................................................................................................2
3. Đối tượng nghiên cứu..............................................................................................2
4. Phương pháp nghiên cứu........................................................................................2
5. Bố cục đề tài.............................................................................................................3
CHƯƠNG 1. TỔNG QUAN VỀ PHẦN MỀM MATHEMATICA..........................4
1.1.

Giới thiệu về phần mềm Mathematica.............................................................4

1.2.

Các cơng cụ của Mathematica..........................................................................6


1.2.1.

Tính tốn với các biến hằng số...................................................................6

1.2.2.

Ma trận........................................................................................................8

1.2.3.

Mợt số phéo tốn trên ma trận, vect..........................................................9

1.2.4.

Giải ma trận tiếp tuyến...............................................................................9

1.2.5.

Khả năng tính đạo hàm của hàm số........................................................10

1.2.6.

Giới hạn của hàm số..................................................................................10

1.2.7.

Tính tích phân...........................................................................................10

1.2.8.


Xây dựng hàm riêng..................................................................................11

1.2.9.

Khả năng vẽ đồ họa 2D, 3D của Mathematica........................................12

1.3. Giới thiểu tổng quan về phần mềm Matlab/Simulink......................................15
1.3.1. Cách sử dụng Matlab...................................................................................16
1.3.2. Tổng quan về thư viện Simulink và cách sử dụng Simulink.....................19
1.4. Thí nghiệm trong nghiên cứu và dạy học vật lý................................................28
1.4.1. Vai trò của thí nghiệm trong nghiên cứu và dạy học vật lý.......................28
Ii


1.4.2. Các loại thí nghiệm thường dùng trong nghiên cứu và dạy học vật lý.....29
CHƯƠNG II. KẾT QUẢ MÔ PHỎNG CÁC THÍ NGHIỆM VÀ THẢO LUẬN.31
2.1. Thí nghiệm nghiên cứu mạch cầu điện trở.......................................................31
2.1.1. Mục đích thí nghiệm.......................................................................................31
2.1.2. Cơ sở lý thuyết và sơ đồ thí nghiệm ảo...........................................................31
2.1.3. Tiến hành thí nghiệm ảo và in kết quả..............................................................1
2.1.4. Câu hỏi kiểm tra...............................................................................................2
2.1.5. Viết báo cáo thí nghiệm....................................................................................2
2.2. Thí nghiệm về mạch chỉnh lưu dòng điện xoay chiều........................................2
2.2.1. Mục đích thí nghiệm.........................................................................................2
2.2.2. Cơ sở lý thuyết và sơ đồ thí nghiệm ảo.............................................................2
2.2.3. Tiến hành thí nghiệm ảo và in kết quả.............................................................4
2.2.4 Câu hỏi kiểm tra................................................................................................6
2.2.5 Viết báo cáo thí nghiệm.....................................................................................6
2.3. Thí nghiệm về chuyển động của vật bị ném xiên................................................6

2.3.1. Mục đích thí nghiệm.........................................................................................6
2.3.2. Cơ sở lý thuyết.................................................................................................6
2.3.3. Tiến hành thí nghiệm ảo và in kết quả..............................................................8
2.3.4. Câu hỏi kiểm tra.............................................................................................10
2.3.5. Viết báo cáo thí nghiệm..................................................................................10
KẾT LUẬN................................................................................................................11
TÀI LIỆU THAM KHẢO.........................................................................................12

Ii


DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT
TN

Thí nghiệm

TNA

Thí nghiệm ảo

TNT

Thí nghiệm thật

THPT

Trung học phổ thông

MPTQ


Mô phỏng trực quan

GV

Giáo viên

HS

Học sinh

NCKH

Nghiên cứu khoa học

Hình
Hình 1.1
Hình 1.2
Hình 1.3

Nội dung hình
Đồ thị hàm số f(x) = X – 5x – 10
Đồ thị hàm số f1=x2+y2 và f2= -x2-y2
Đồ thị hàm số được biểu diễn dưới dạng tham số x = Cos5t, y =

Hình 1.4
Hình 1.5
Hình 1.6
Hình 1.7
Hình 1.8
Hình 1.9

Hình 1.10
Hình 1.11
Hình 1.12
Hình 1.13
Hình 1.14
Hình 1.15
Hình 1.16
Hình 2.1
Hình 2.2

Sin3t
Khởi động Matlab
Simulink icon
Cửa sổ Simulink Start Page
Vùng làm việc của Simulink
Library Browser
Cửa sổ Simulink Library Browser
Tạo các khối
Lưu trữ mô hình
Di chuyển các khối
Nối tín hiệu
Đặt các thông số mô phỏng
Mô phỏng mô hình
Dạng tín hiệu sóng
Sơ đồ mạch cầu điện trở
Sơ đồ mắc mạch TNA. Bên trái đối với mạch cầu cân bằng, bên

Hình 2.3
Hình 2.4
Hình 2.5

Hình 2.6
Hình 2.7

phải mạch cầu không cân bằng
Sơ đồ mắc mạch TNA đọc số liêu đầu vào và đầu ra.
Mạch chỉnh lưu một nửa chu kỳ.
Mạch chỉnh lưu cả chu kỳ dùng 4 điốt
Mạch chỉnh lưu cả chu kỳ dùng 2 điốt
Sơ đồ và kết quả in trên dao động ký của bộ chỉnh lưu nửa chu

Trang

2

Ii

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ


Hình 2.8

kỳ
Sơ đồ và kết quả in trên dao động ký của mạch chỉnh lưu cả nửa

Hình 2.9
Hình 2.10

chu kỳ
Quỹ đạo chuyển động của vật ném xiên.
Hiển thị kết quả mô phỏng trực quan


DANH MỤC BẢNG
STT

Bảng

Nội dung bảng

1

Bảng 1.1

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

2

Bảng 1.2

Các hàm tính ma trận

3

Bảng 1.3

Các phép tính toán ma trận

4

Bảng 1.4


Các phép tính toán hệ phương trình tuyến tính

5

Bảng 2.1

Giá trị các thông số của mạch cầu điện trở

6

Bảng 2.2

Đặc điểm dòng điện vào và dòng điện ra qua mạch
chỉnh lưu

Ii

Trang


MỞ ĐẦU
1. Lý do chọn đề tài
Ngày nay, cùng với sự phát triển nhanh chóng của ngành công nghệ thông tin,
việc sử dụng máy tính và các phần mềm chuyên dụng đã và đang là xu thế tất yếu của
các ngành khoa học nói chung và ngành Vật lý học nói riêng. Thực tế chỉ ra rằng, việc
sử dụng máy tính điện tử trong nghiên cứu, giảng dạy, học tập Vật lý đã đem lại những
thành tựu vô cùng quan trọng. Điều này được thể hiện ở việc ứng dụng máy tính trong
rất nhiều ngành, nhiều lĩnh vực khác nhau của Vật lý như: Vật lý lý thuyết, vật lý chất
rắn, thiên văn học…nhằm hỗ trợ cho việc tính toán và đo đạc chính xác, xây dựng các
mô hình lý thuyết, mô phỏng, dự đoán các hiện tượng và hỗ trợ thí nghiệm. Với sự ra

đời của các phần mềm, việc xử lý nhiều công việc trở nên đơn giản và tiết kiệm hơn
nhiều lần. Hiện nay trên thế giới, thực nghiệm mô phỏng cung cấp cho học sinh, sinh
viên có cơ hội làm thực nghiệm nhiều lần và ở thời điểm thuận lợi. Ở Việt Nam hiện
nay, nhiều trường đại học đều sử dụng các ứng dụng trên máy tính để nghiên cứu và
giảng dạy, trong đó phần mềm Matlab và Mathematica được sử dụng như một môn
học bắt buộc đối với sinh viên và học viên. Nhiều ứng dụng quan trọng của các phần
mềm này cho thấy tính hiệu quả của nó trong nghiên cứu và giảng dạy.
Trong dạy học, máy tính trở thành phương tiện hỗ trợ đắc lực cho giáo viên và
học sinh, giáo viên có thể sử dụng mô phỏng cho các bài giảng cụ thể trong khi giảng
bài lý thuyết. Công nghệ thông tin hay cụ thể là các phần mềm máy tính giúp bảo đảm
thời gian tự nghiên cứu, tự học cho giáo viên và học sinh, cũng như đảm bảo các điều
kiện khác. Sự giải phóng sức lao động cho giáo viên khỏi các công việc giản đơn giúp
người giáo viên có nhiều thời gian hơn cho sự đổi mới, sáng tạo trong dạy học. Có rất
nhiều phần mềm chuyên dụng được sử dụng rộng rãi, trong đó Mathematica và Matlab
là hai phần mềm được khai thác khá mạnh mẽ. Đây là các phần mềm có giao diện thân
Ii


thiện, dễ hoạt động, khả năng xử lý số liệu nhanh và tính năng vẽ đồ thị có nhiều ưu
việt. Hai phần mềm này cũng cho phép giải nhanh các phương trình, hệ phương trình
tổng quát, phức tạp và có thể mô phỏng các thí nghiệm ảo.
Bài học vật lý nhiều khi trừu tượng, để học sinh hiểu, hứng thú, say mê học tập,
nghiên cứu khoa học thì cần có các thí nghiệm trực quan nhưng không phải lúc nào
giáo viên cũng có thể làm thí nghiệm thật trên lớp. Thực tế hiện nay, các bài giảng điện
tử trở nên phổ biến bên cạnh các phương tiện dạy học truyền thống, trong điều kiện
thiết bị thí nghiệm ở nhiều trường phổ thông còn thiếu và lạc hậu, thí nghiệm ảo sẽ
giúp học sinh dễ dàng quan sát các hiện tượng vật lý, giúp học sinh hiểu rõ hơn bản
chất các hiện tượng đó. Trong một số công trình các tác giả đã thiết kế một số bài thí
nghiệm ảo, nhưng nhiều ứng dụng trong Mathematica và Matlab vẫn chưa được khai
thác triệt để và còn nhiều thí nghiệm ảo quan trọng khác cần được nghiên cứu thêm.

Do đó, đề tài đặt ra để tiếp tục khai thác các ứng dụng trong Matlab và Mathematica
nhằm hỗ trợ nhiều hơn việc giảng dạy vật lý của giáo viên ở trường THPT. Việc ứng
dụng các phần mềm Mathematica và Matlab tạo ra các bộ thí nghiệm ảo giúp khảo sát
nhiều hiện tượng Vật lý trở nên đơn giản hơn, tạo ra các giờ dạy-học hay hơn. Với ý
nghĩa khoa học của vấn đề, chúng tôi lựa chọn đề tài “Ứng dụng phần mềm Matlab và
phần mềm Mathematica thiết kế một số thí nghiệm ảo hỗ trợ quá trình dạy học Vật lý
ở trường THPT.”
2. Mục đích đề tài
Nghiên cứu về các phần mềm Mathematica, Matlab và ứng dụng các phần mềm
đó thiết kế được các bộ thí nghiệm ảo hỗ trợ giáo viên dạy vật lý ở trường THPT.
3. Đối tượng nghiên cứu
Đối tượng nghiên cứu của đề tài là phần mềm Mathematica, Matlab và các thí
nghiệm Vật lý ở trường THPT.

Ii


4. Phương pháp nghiên cứu
Đề tài sử dụng phương pháp thu thập, tổng hợp, phân tích, so sánh tài liệu;
Phương pháp nghiên cứu lý thuyết về phần mềm Mathematica 9.0, phần mềm Matlab,
các thí nghiệm vật lý; Phương pháp thực nghiệm trên máy tính để xây dựng các bộ thí
nghiệm ảo.
5. Bố cục đề tài
Ngoài phần mở đầu, phần kết luận và tài liệu tham khảo, đề tài bao gồm 3
chương:
Chương 1. Tổng quan về các phần mềm Mathematica, Matlab và thí nghiệm vật
lý ở trường THPT.
Chương 2. Kết quả mô phỏng các thí nghiệm và thảo luận

Ii



CHƯƠNG 1. TỔNG QUAN VỀ PHẦN MỀM MATHEMATICA
1.1.

Giới thiệu về phần mềm Mathematica

Mathematica là phần mềm tính toán số, được sử dụng trong các lĩnh vực khoa
học kỹ thuật, vật lý và toán học. Phần mềm này do Stephen Wolfram thiết kế và phát
triển tại Trung tâm Nghiên cứu Wolfram Research ở Mỹ. Phiên bản đầu tiên phát hành
năm 1988. Hiện nay đã có phiên bản Mathematica 14, để đáp ứng cấu hình ở thời điểm
hiện tại nhóm tác giả sử dụng phiên bản Mathematica 11.3. Mathematica 11.3 là phiên
bản có nhiều tính năng mới so với các phiên bản trước đó như:
- Cung cấp đầy đủ thư viện các hàm toán học sơ cấp, cao ấp
- Công cụ tính toán, xử lí ma trận
- Chức năng mô phỏng dữ liệu, vẽ đồ thị hàm số 2D, 3D.
- Giải các phương tình toán học (từ sơ cấp đến vi phân...)
- Phân tích, tính toán các phần tử hữu hạn (môi trường liên tục).
- Công cụ hỗ trợ kết nối các ngôn ngữ, nền tảng .NET, Java, C++, HTTP kể cả kết
nối CSDL SQL...
- Xử lý hình ảnh, âm thanh... [1]
Mathematica sử dụng các thuật toán cao cấp để hoàn thành các phép tính toán
trong một phần nhỏ thời gian được liên kết với các nền tảng phần mềm chung. Các khả
năng công nghiệp và bố cục thân thiện với người sử dụng sẽ giúp hợp lý hóa bất kì quy
trình kỹ thuật nào. Điều này cũng cung cấp một mức độ tự động hóa cao hơn, lý tưởng
khi giải quyết các nhiệm vụ phức tạp khi có một dự án phức tạp cần hoàn thành trong
một khoảng thời gian tương đối ngắn. Ngoài ra còn có khả năng tạo ra các tài liệu
trong khuôn khổ của Mathematica. Đây là một chức năng hữu ích khi theo dõi một
nhiệm vụ hoặc giải quyết các vấn đề mã hóa.
Một số quy tắc cơ bản khi sử dụng phần mềm Mathematica

- Mathematica phân biệt chữ hoa chữ thường. Do đó, chữ cái nào viết hoa cần phải
viết hoa chữ cái đó, những lệnh, hàm, các kí hiệu, các biến có sẵn trong Mathematica
luôn được bắt đầu bằng chữ in hoa.
- Để thực hiện một lệnh trong Mathematica, ấn đồng thời hai phím Shift + Enter
- Các biến đi trong hàm đều được đặt trong ngoặc vng,
ví dụ như: tag[x] , f[x].


- Để kết thúc một câu lệnh ta đặt dấu chấm phẩy (;), nếu không có dấu (;) thì kết
quả sẽ được hiển thị bên dưới.
Vai trò của 3 cặp ngoặc ( ), [ ], { }.
+ Cặp ngoặc ( ) dùng để ngoặc các biểu thức toán học
+ Cặp ngoặc [ ] dùng để chứa các đối số, biến số của lệnh, của hàm.
+ Cặp ngoặc { } dùng để liệt kê các miền cho đối số, liệt kê các công việc, dùng
cho các mảng hoặc ma trân.
- Các hàm, các biến tự khai báo không cần viết hoa chữ cái đầu tiên nhưng khao
báo thế nào khi dùng phải dùng đúng như vậy.
- Các chữ cái không được dùng để đặt tên: C, D, E, I, N.
- Tên của các biến, các hàm tự khai báo bao gồm các chữ cái và chữ số, bắt đầu
bằng một chữ cái, có thể là chữ thường hoặc hoa. Tên này phải khác với tên các lệnh,
các hàm đã có sẵn trong chương tình.
- Không chạy được nhiều chương trình cùng một lúc vì các biến vẫn còn lưu giá
trị của nó, khi đó kết quả của bạn sẽ bị sai lệch, để khắc phục điều này bạn cần chỉnh
lại như sau:
Evaluation/Quit Kernal/Local
- Phân biệt giữa các kí hiệu : := , =, ==
Ví dụ:
x:=1 là lệnh gán giá trị 1 cho hằng số x
x=1 là lệnh gán giá trị 1 cho biến x (trong trường hợp này x là biến và có thể thay
đổi giá trị trong khi thực hiện chương trình)

x==1 là so sánh giữa giá trị vế trái x có bằng giá trị vế phải là 1 hay không.
Một số lệnh:
- Lệnh N[expr] dùng để hiển thị kết quả thành sớ thập phân
Ví dụ: Nếu bạn gõ Sin[2] thì kết quả hiển thị là Sin[2], tuy nhiên khi bạn sử dụng
lệnh N[expr] bằng cách gõ N[Sin[2],6] thì kết quả sẽ là 0.909297. Tức là hệ thống sẽ
trả kết quả là số thập phân của phép tính Sin[2] và lấy sau dấu phẩy 6 giá trị ( tùy
thuộc vào yêu cầu).
- Lệnh ?Int* để tìm tất cả các hàm có bắt đầu bằng “Int”, tương tự ?*Q hay ?
*Int*
- Tổ hợp Ctrl + K để tìm các hàm có tên giống nhau ở phần đầu.


Cần phân biệt List và Matrix trong Mathematica. Nếu viết {1,2,3,4,5,6} thì đây là
một List gồm 6 phần tử, còn nếu viết { {1},{2},{3},{4},{5},{6} } thì đây là một
Matrix 6 dòng 1 cột, đối với 1 List thì không thể dùng hàm chuyển vị Transpose
được, tuy nhiên có thể sử dụng các phép toán ma trận giữa List và Matrix và cho kết
quả vẫn đúng như khi tính toán giữa các ma trận.
1.2.

Các cơng cụ của Mathematica [1]

1.2.1. Tính tốn với các biến hằng số
Bạn có thể thực hiện các phép toán cộng (+), trừ (-), nhân (*), chia (/) bằng cách gõ
giống như trên máy tính số (caculator) , bạn viết các biểu thức phức tạp hơn bằng
cách sử dụng cặp ngoặc đơn ( ) để nhóm các biểu thức, ngồi ra lấy lũy thừa thì dùng
kí hiệu ^.
Bạn có thể tham khảo mợt sớ ví dụ như sau:
Ví dụ 1: Phép cộng 2 số
In[3]:= 2.3 + 4.2
Out[3]:= 6.5

Ví dụ 2: Phép trừ 2 số
In[4]:= 2.3 -4.2
Out[4]:= -1.9
Ví dụ 3: Phép nhân 2 số
In[5]:= 4.5 * 2
Out[5]:= 9.
Ví dụ 4: Phép chia, nhóm, lũy thừa
In[6]:= 1 / (2 ^ (1/3)) + 4
Out[5]:= 4+121/34+121/3
Ví dụ 5: Phép lũy thừa
In[5]:= 2^90
Out[5]:= 1237940039285380274899124224
Bảng 1.1 Các phép toán số học
#

Phép toán

a^b

Phép lũy thừa

-a

Phép trừ


a/b

Phép chia


a*b*c

Phép nhân

a+b

Phép cợng

1.2.2. Ma trận
Bảng 1.2 Các hàm tính ma trận
Table[f, {i,m}, {j,n}]

Xây dựng ma trận cớ m x n với là hàm của i,
j để phát sinh các phần tử khi i, j chạy từ 1

Table[Random[], {m}, {n}]

đến m , n
Sinh ma trận ngẫu nhiên cơ m x n

Table[If[i >= j, 1, 0], {i, m}, {j, n}]

Sinh ma trận m x n tam giác dưới

Array[f, {m,n}]

Sinh ma trận m x n các phần tử dạng f [i,j]

DiagonalMatrix[{...}]


Sinh ma trận đường chéo, các phần tử đường
chéo ở trong tham số danh sách

IdentityMatrix[n]

Tạo ma trận cấp n

Normal[SparseArray[ { ...,{ik, jk} ->

Sinh ma trận cơ m x n trong đó giá trị của

vk, }, {m,n}]

một phần tử được chỉ ra {ik, jk} > vk, còn
các phần tử khác bằng 0

MatrixForm[]

Hiển thị ma trận với dạng lưới chữ nhật

1.2.3. Một số phéo tốn trên ma trận, véc tơ
Ví dụ 1: Căn bậc 2
In[1]:= Sqrt[{a, b, c}]
Out[1]:= {√a, √b, √c}{a,b,c}
Ví dụ 2: Tởng quan về ma trận
In[1]:= {a, b} + {c , d}
Out[1]:= {a + c, b + d}
Ví dụ 3: Nhân 2 ma trận
In[1]:= {{a, b}, {c, d}} . {{1, 2}, {3, 4}}



Out[1]:= {{a + 3 b, 2 a + 4 b}, {c + 3 d, 2 c + 4 d}}
Ví dụ 4: Nghịch đảo của ma trận
Cấu trúc: Inverse[m] tìm ma trận nghịc đảo của ma trận m
In[1]:= Inverse[{{1, -2}, {3, 2.}}]
Out[1]:= {{0.25, 0.25}, {-0.375, 0.125}}
Bảng 1.3 Các phép tính tốn ma trận
Transpose[m]
Inverse[m]
Det[m]
MatrixRank[m]
Eigenvalues[m]
Eigenvectors[m]
1.2.4. Giải ma trận tiếp tuyến

Chuyển vị trí ma trận
Nghịch đảo ma trận
Tính định thức ma trận
Hạng của ma trận m
Trị riêng của m
Vector tiêng của m

Phương trình tiếp tuyến dạng m . x = b có nghiệm duy nhất khi Det [m] != 0 nếu bằng
0 thì vô nghiệm hoặc có vơ sớ nghiệm.
Bảng 1.4 Các phép tính tốn hệ phương trình tuyến tính
LinearSolve[m, b]
Inverse[m].[b]
NullSpace[m]

Giải hệ m . x = b

Tương đương với giải hệ bằng LinearSolve
Giải hệ m.x = {0 .. 0} ( hệ có vector hệ sớ

bằng 0)
1.2.5. Khả năng tính đạo hàm của hàm số
D[f[x],x] sẽ cho đạo hàm (bậc 1) của hàm f[x] , nếu muốn tính đạo hàm bậc n thì
dùng D[f[x], {x,n}]
Nếu có hàm f[x] thì có thể tính đạo hàm bậc 1, bậc 2 bằng kí hiệu f'[x], f''[x]
In[1]:= D[x^3, x]
In[2]:= f[x_] := Sin[x] Cos[x]
In[3]:= f'[x]
In[4]:= f''[x]
Out[1]:= 3x^2
Out[2]:= Cos2(x)- sin2(x)cos2(x)-sin2(x)
Out[3]:= -4cos[x]sin[x]- 4cos[x]sin[x]
Ví dụ 1: tính đạo hàm √ a+bx3a+bx3
In[1]:= D[Sqrt[a + bx^3], x]
Out[1]:= 3bx^2 a+bx^3
1.2.6. Giới hạn của hàm số


Có hàm số f(x) , để tìm giới hạn khi x tiến về x0 thì ta dùng hàm limit với cú pháp
Limit[f[x], x->x0]
Nếu cần chỉ rõ x > x0 từ trái hay phải thì cho thêm tham số :
Direction -> "FromAbove" ( tiến về x0 từ bên phải )
Direction -> "FromBelow" (tiến về x0 từ bên trái )
Chú ý: ∞∞ thì dùng hằng sớ Infinity
1.2.7. Tính tích phân
Tích phân bất định
Sử dụng hàm Integrae để tính tốn tích phân đơn cũng như bội. Nếu tính tính phân bất

định thì chỉ cần chỉ ra trong tham số là biểu thức hàm và biến.
Ví dụ: tính tích phân (bất định) của hàm 1/x
In[1]:= Integrate[1/x, x]
Out[1]:= Log[x]
Tích phân xác định
Để tính tích phân xác định ta dùng hàm Intagrate nhưng chỉ rõ cận trên và cận dưới
của tích phân.
Ví dụ:
In[1]:= Integrate[1/(x^3 + x^2), {x, 1, +Infinity}]
Out[1]:=1-Log[2]
Chú ý: Một số tích phân mà khơng chỉ rõ điều kiện tính thì kết quả sẽ ở dạng cơng
thức tính tích phân.
Ví dụ:
In[1]:= Integrate[Abs[x], x]
Out[1]:= xx
Nhưng nếu chỉ rõ điều kiện ví dụ x thuộc số thực thì dùng thêm tham số giải thiết
Assumptions -> {Element[x, Reals]}
Ví dụ:
In[1]:= Integrate[Abs[x], x, Assumptions -> {Element[x, Reals]}]
Out[1]:= {-x^2 True}
Hoặc tính với điều kiện x > 0
1.2.8. Xây dựng hàm riêng


- Nếu muốn chuyển từ một biểu thức thành một hàm tự định nghĩa thì dùng cú pháp
myfunction[x_,y_, ...]:=biểu_thức
Trong đó:
+ myfunction là tên do hàm bạn đặt, tên này để tránh xung đột với các hàm có sẵn của
Maematica.
- Nếu hàm số có nhiểu biểu thức, thì hàm tạo ra với dạnh sau ( kết quả hàm trả về là

biểu thức cuối biểu_thức_M)
myfunction[x_,y_, ...]:= (a1=biểu_thức,
a1=biểu_thức_2, ... a1= biểu_thức_M)
Ví dụ: Định nghĩa của hàm bậc hai có tên ham_bac_hai, biến là x sau đó tính giá trị tại
x = 10
In[1]:= ham_bac_hai[x_] := 5x ^2 + 40x -1500
In[2]:= ham_bac_hai[10]
In[3]:= ham_bac_hai[x]
- Nếu định nghĩa một hàm gồm có nhiều phần thì bạn cần dùng tới Piecewise[] với
tham số là danh sách các phần của hàm kèm điều kiện biến, với cấu trúc
Piecewise[{{biểu-thức-1,điều-kiện-biến1}, { Biểu-thức-2, điều-kiện-biến 2}...}]
Ví dụ:
f[x_] := Piecewise[{{(Sqrt[x + 1] -1)/x, x > 0}, {2 x^2 + 1, x <= 0}}]
1.2.9. Khả năng vẽ đồ họa 2D, 3D của Mathematica
Mathematica cho phép vẽ tất cả các dạng đồ thì có thể có của một hàm số với cấu trúc
lệnh đơn giản nhất như đồ thị hai chiều, đồ thị ba chiều, đồ thị đường viền, đồ thị mật
độ,...
Vẽ đồ thị hàm số 2D

Hình 1.1 Đờ thị hàm số f(x) = X2 – 5x – 10


Để vẽ đồ thị hàm số f với biến số là x sử dụng hàm Plot[f, {x, xm, xmax]. Trong đó
xmin, xmax xác định khoảng cần vẽ.
Ví dụ:
Plot[x^2 -5 x -10,{x, -10, 15}]
Chú ý: ta có thể vẽ nhiều hàm trên cùng 1 hệ trục và khoảng cần vẽ với cấu trúc
Plot[{f1, f2 ..}, {x, xmin, xmax}]
Vẽ đồ thị hàm số 3D
xây dựng đồ thị 3 chiều của các hàm f1, f2, … trong cùng mợt hệ trục tọa đợ.

Plot3D[{x^2+y^2,-x^2-y^2},{x,-2,2},{y,-2,2}]

Hình 1.2 Đồ thị hàm số f1=x2+y2 và f2= -x2-y2
Vẽ đồ thị tham số
Để vẽ một hàm số được biểu diễn dưới dạng tham số x = fx(t), y = fy(t), t
thuộc đoạn [a,b] ta dùng các cấu trúc lệnh sau:
ParametricPlot[{fx,fy},{t,tmin,tmax}] – xây dựng đồ thị tham số với các tọa
độ {fx,fy} nhận được như một hàm theo t.
ParametricPlot[{{fx,fy},{gx,gy},…},{t,tmin,tmax}] – xây dựng một vài đường
tham số trên cùng một hệ trục tọa độ.
Ví dụ 1:
ParametricPlot[{Cos[5*t],Sin[3*t]},{t,0,20},AspectRatio->Automatic]


Hình 1.3 Đờ thị hàm số được biểu diễn dưới dạng tham số x =
Cos5t, y = Sin3t

1.3. Giới thiểu tổng quan về phần mềm Matlab/Simulink
Matab là phần mềm cung cấp môi trường tính toán và lập trình, do công ty MathWorks
thiết kế. Matlab là một ngôn ngữ lập trình thực hành bậc bao được sử dụng để giải các bài
toán về kĩ thuật cho phép tính toán với ma trận, vẽ đồ thị hàm số và liên kết với những
chương tình máy tính viết trên nhiều ngôn ngữ khác nhau. [3] Matlab là viết tắt từ "MATrix
LABoratory", được Cleve Moler phát minh vào cuối thập niên 1970, và sau đó là chủ nhiệm
khoa máy tính tại Đại học New Mexico. MATLAB, nguyên sơ được viết bởi ngôn ngữ
Fortran, cho đến 1980 nó vẫn chỉ là một bộ phận được dùng nội bộ của Đại học Stanford.
Matlab tích hợp được việc tính toán, thể hiện kết quả, cho phép lập trình, giao diện làm
việc rất dễ dàng chon người sử dụng. Dữ liệu cùng với thư viện được lập trình sẵn cho phép
người sử dụng có thể có được những ứng dụng sau đây:
- Cho phép lập trình để giải bài tập.
- Cho phép mô phỏng mô hình thực tế.

- Phân tích, khảo sát và hiển thị dữ liệu.
- Phần mềm đồ họa.
o

MATLAB là công cụ tính toán rất mạnh dễ dùng, trực quan dễ mở rộng và phát triển.


o

MATLAB có khả năng đa liên kết môi trường, liên kết dễ dàng với ngôn ngữ lập trình
C++, Visual C,FORTRAN,JAVA,...

o

MATLAB có khả năng xử lý đồ họa mạnh trong không gian hai chiều và ba chiều.

o

Các TOOLBOX trong MATLAB rất phong phú, đa năng là công cụ nghiên cứu, thiết
kế cực kỳ hiệu quả trong các lĩnh vực chuyên ngành.

o

Công cụ mô phỏng trực quan SIMULINK chạy trong môi trường MATLAB giúp cho
bài toán phân tích thiết kế dễ dàng, sinh động hơn.
MATLAB xây dựng sẵn các phép tính xử lý ma trận, các hàm toán học, các phép xử lý đồ
hoạ với thư viện phong phú. Từ đó cho phép người dùng viết các chương trình (m-files),
xây dựng các hàm chuyên tính toán cho mỗi lĩnh vực (gọi là các TOOL BOXS) như: Điều
khiển tự động, Kỹ thuật điện, Điện tử, truyền thông, xử lý ảnh, xử lý tín hiệusố, tối ưu hoá,
mô phỏng các quá trình thực tế

1.3.1. Cách sử dụng Matlab
* Khởi động Matlab:

Hình 1.4 Khởi động Matlab

Có thể khởi động Matlab bằng 2 cách:
- Cách 1: Double-click vào Matlab icon ở màn hình Desktop của máy tính
- Cách 2: Click chuột phải vào Matlab icon sau đó click Open
[3] Sử dụng các hàm số có sẵn trong thư viện, các phép tính toán học thông thường


Các phép cộng trừ hai ma trận cùng kích thước được thực hiện bình thường. Đặc biệt
với phép nhân, MatLab phân biệt hai toán tử: * dành cho phép nhân ma trận và * dành
cho nhân từng cặp phần tử tương ứng của hai ma trận.
>> a = [2 3; 2 4]
2 3
2 4
>> a * a % chính là bình phương ma trận A
10 18
12 22
>> a.* a % chỉ là bình phương TỪNG PHẦN TỬ của A
4

9

4 16

+ Tính năng vẽ đồ thị
Vẽ đồ thị là một tính năng được trau chuốt trong MatLab; với rất nhiều kiểu đồ thị
khác nhau như biểu đồ dạng đường, biểu đồ chấm điểm, các lớp màu (patch) hai

chiều, đường đồng mức và các đường cong, mặt cong ba chiều. Ngoài ra MatLab còn
cung cấp giao diện để người dùng trực tiếp biên tập hình vẽ, điền vào các ghi chú theo
ý muốn.
Vẽ đồ thị dạng đường
Giả sử có dãy số liệu V đo theo thời gian t. Trong MatLab, V và t đều có dạng vec tơ
có cùng độ dài. Khi đó lệnh vẽ đồ thị với trục hoành là t và trục tung là V có dạng:
plot(t, V)
xlabel('t (s)') % viết tiêu đề các trục
ylabel('V (m/s)')
Vẽ đồ thị dạng lớp màu
Một cách hiệu quả để biểu thị các trường vật lý trong không gian hai chiều là dùng lớp
màu. Chẳng hạn T là một ma trận 2 chiều lưu giữ giá trị nhiệt độ của một tấm kim loại


hình chữ nhật, thì việc hiển thị phân phối nhiệt độ bằng một lớp màu được thực hiện
dễ dàng:
pcolor(T)
Vẽ trường vec tơ
Cũng như đồ thị lớp màu, việc hiển thị trường vec tơ rất cần thiết trong các ngành
khoa học - vật lý. Để vẽ trường véc-tơ hai chiều của các ma trận u và v, dùng lệnh:
quiver(u,v)
1.3.2. Tổng quan về thư viện Simulink và cách sử dụng Simulink
SIMULINK là công cụ mô phỏng trực quan trong môi trường MATLAB, kết hợp với
thư viện TOOLBOXS rất phong phú cho các ngành, các lĩnh vực kỹ thuật, giúp cho bài toán
phân tích thiết kế dễ dàng, sinh động hơn. SIMULINK đùng để mô hình, mô phỏng và phân
tích các hệ thống động với môi trường giao diện sử dụng đồ họa. Việc xây dựng mô hình
được đơn giản hóa bằng các hoạt động nhấp chuột và kéo thả. SIMULINK bao gồm một bộ
thư viện khối với các hộp công cụ toàn diện cho cả việc phân tích tuyến tính và phi tuyến.
SIMULINK là một phần mềm quan trọng của Matlab và có thể dễ dàng chuyển đổi qua lại
trong quá trình phân tích, và vì vậy người dụng có thể tận dụng được ưu thế của cả hai môi

trường.
* Khởi động Simulink:
Có thể khởi động bằng 2 cách:
- Cách 1: Click vào biểu tượng như hình dưới (Simulink icon)

Hình 1.5. Simulink icon


- Cách 2: Từ cửa sổ lệnh, đánh lệnh simulink và sau đó nhấn Enter
Cửa sổ Simulink Start Page sẽ hiện ra:

Hình 1.6. Cửa sở Simulink Start Page
* Làm việc với Simulink
- Để tạo mới 1 vung làm việc hoặc xây dựng một mô hình mới: Trong tab New, chọn
Black Model.
- Một file (vùng làm việc) mới sẽ hiện ra với tên mặc định là: untitled (người làm
việc có thể đổi thành một tên khác).


Hình 1.7. Vùng làm việc của Simulink
- Làm việc với Simulink là làm việc với các sơ đồ khối, do vậy cần lấy các khối đó ra
từ các thư viện bằng cách:
Trên thanh cơng cụ, ta chọn Library Browser:

Hình 1.8. Library Browser
- Cửa sổ Simulink Library Browser hiện ra, trong đó bao gồm các thứ viện chứa các
khối đã được lập trình sẵn:

Hình 1.9. Cửa sở Simulink Library Browser



- Tạo các khối: Từ thư viện Simulink chọn khối cần dùng, nhấp chuột vào và kéo ra
cửa sổ mô hình.

Hình 1.10. Tạo các khối
- Lưu trữ mơ hình: bằng lệnh Save (File -> Save) hoặc nhấp vào icon Save.


×