Tải bản đầy đủ (.pdf) (23 trang)

Giáo trình cơ sở matlab v5 2 1 phần 1 cơ sở matlab chương 1

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 (408.75 KB, 23 trang )

Mục lục

Lời nói đầu

i

Phần I Cơ sở về Matlab
Chơng I. Phần cơ sở về Matlab

1

1.1 Khả năng của Matlab
1.2 Hoạt động của Matlab
1.2.1Các phím chuyên dụng v các lệnh htông dụng của hệ thống
1.3. biến v các thao tác của các biến
1.3.1 Biến trong Matlab
1.3.2 Độ lớn của biến
1.3.3 Một số biến đợc định nghĩa
1.3.4 Số phức
1.4 Sơ lợc về đồ hoạ trong Matlab
1.4.1 Vẽ trong cửa sổ đồ hoạ của Matlab
1.4.2 In ấn trên mn hình đồ hoạ
1.4.3 Một số ví dụ mô tả đồ hoạ
1.5 Các hm âm thanh trong Matlab

1
3
3
4
4
6


6
7
9
9
10
11
13

Chơng II: Ma trận v các phép toán cho ma trận

14

2.1 Vector - Đại lợng vo hớng v ma trận
2.1.1Cách nhập giá trị của ma trận hay các đại lợngvô hứng
2.1.2Hiển thị ma trận
2.2 Các ma trận đặc biệt
2.2.1 Ma trận ma phơng (magic)
2.2.2 Ma trận 0
2.2.3 Ma trận 1
2.2.4 Ma trận đờng chéo đặc biệt( Indentity)
2.2.5 Ma trận đờng chéo mở rộng(eye(m,n)
2.2.6 Ma trận Pascal
2.2.7 Ma trận đặc biệt khác
2.3 Các phép toán vô hớng
2.3.1 Biểu thức số học
2.3.2 Thứ tự u tiên của các toán tử
2.3.3 Các phép toán đối với Vector

14
14

18
19
19
19
20
20
20
21
21
22
22
22
23

209


2.4 Các phép toán đối với ma trận
2.4.1 Ma trận chuyển vị
2.4.2 Tích vô hớng của hai ma trận cùng cỡ
2.4.3 Nhân ma trân
2.4.4 Các thao tác trên ma trận

23
25
25
26
26
28


Chơng III: Lập trình trong Matlab

31

3.1 Các phần tử cơ bản của chơng trình
3.1.1 Giới hạn của các giá trị tính toán
3.1.2 Các ký tự đặc biệt
3.1.3 Các giá trị đặc biệt
3.1.4 Các biến String
3.2 Các hm toán học
3.2.1 Các hm đại số cơ bản
3.2.2 Các hm lợng giác cơ bản
3.2.3 Các hm Hyperbolic
3.3 Các dạng File đợc sử dụng trong Matlab
3.3.1 Script file (M-file)
3.3.2 Hm v tạo hm trong Matlab
3.3.3 File dữ liệu
3.4 Các biểu thức quan hệ v Logic
3.4.1 Các phép toán quan hệ
3.4.2 Các phép toán Logic
3.4.3 Các phép toán quan hệ v Logic
3.5 Các cấu trúc câu lệnh điều khiển
3.5.1 Lệnh IF đơn
3.5.2 Lệnh IF lồng nhau
3.5.3 Lệnh ELSE
3.5.4 Lệnh ELSE IF
3.5.5 Cú pháp câu điều kiện v Break
3.6 Cấu trúc vòng lặp
3.6.1 Vòng lặp FOR
3.6.2 Vòng lặp While


31
32
32
33
35
35
36
37

Chơng IV: Đồ hoạ hai chiều trong Matlab

50

4.1 Các phép biến đổi đồ hoạ
4.1.1 Quan hệ các trục toạ đồ trên mặt phẳng
4.1.2 Nghịch đảo ma trận

50
50
51

210

37
37
38
40
41
41

41
42
43
43
43
44
44
46
46
46
48


4.1.3 Góc Euler
4.2 Phép biến đổi AFFINE trong không gian 2D
4.2.1 Toạ độ thuần nhất
4.2.2 Phép chuyển dịch
4.2.3 Phép quay
4.2.4 Phép tỉ lệ
4.3 Các hm chuẩn để biễu diễn đồ hoạ hai chiều
4.3.1 Các bộ lệnh vẽ
4.3.2 Các hệ toạ độ trong mặt phẳng
4.3.3 Mặt phẳng đồ hoạ cho số phức
4.3.4 Lệnh kiểm soát
4.3.5 Các thao tác v kiểm soát trên mn hình máy tính
4.3.6 Văn bản (Text) trên mn hình đồ hoạ
4.3.7 Đọc dữ liệu từ mn hình đồ hoạ

53
55

55
57
58
59
60
61
67
69
71
71
78
79

ChơngV: Đồ hoạ trong không gian ba chiều

80

5.1 Các hm toạ lập đờng cong (Contour)
5.1.1 Chấm điểm đờng cong
5.1.2 Ví dụ
5.2 Lới Grid
5.2.1 Lệnh tạo lới
5.1.2 Ví dụ
5.3 Đồ hoạ ba chiều
5.3.1 Lệnh vẽ đồ hoạ 3D thông thờng
5.3.2 Các loại vẽ hoạt hình 3D
5.4 Mặt lới trong không gian 3D
5.4.1 Bộ lệnh tạo lới
5.4.2 Quay ma trận đồ hoạ 3D
5.5 Đồ hoạ bề mặt

5.6 Điểm quan sát v phép phối cảnh
5.7 Slice trong không gian 3D
5.8 Mầu sắc v kiểm soát các mầu sắc
5.8.1 Các thuộc tính bề mặt
5.8.2 Giới thiệu các hệ mầu trong mn hình đồ hoạ
5.8.3 Mô hình mu RGB (Red-Green-Blue)
5.8.4 Mô hình mu CMY (Cyan-Magent a-Yellow)
5.8.5 Mô hình mu YIQ
5.8.6 Mô hình mu HSV (Hue-Saturation-Value)
5.8.7 Mô hình mu HLS (Hue-Light-Saturation)
5.8.8 Các lệnh chuyển đổi mô hình mu
5.8.9 Thao tác với mu sắc

80
80
81
82
85
86
89
89
90
91
91
92
97
101
103
104
104

106
106
109
111
112
114
116
117

211


120

Bi tập ứng dụng phần I

Phần II Một số ứng dụng của Matlab
140

ứng dụng về xử lý tín hiệu
1.
2.
3.
4.

Giới thiệu Tín hiệu v xử lý tín hiệu
Hm lọc
Gọi hm lọc với điều kiện đầu
Thiết kế bộ lọc số
4.1 Các định nghĩa

4.2 Xác định đặc tính tần của bộ lọc
4.3 Biến đổi nửa tuyến tính Tustin
5. Biến đổi Fourier rời rạc
6. Giới thiệu toam tắt DFT
7. Phổ năng lợng
8. Phần lợng giác mở rộng của tín hiệu
9. Những tín hiệu tần số cao v các ký hiệu
10. Phần bi tập
11. Các hm thông dụng trong Toolbox-DSP
11.1Các hm dạng sóng
11.2 Phân tích bộ lọc v thực hiện chúng
11.3 Các biến đổi của hm tuyết tính
11.4 Thiết kế bộ lọc số IIR
11.5 Chuyển bộ lọc cho trớc IIR
11.6 Thiết kế bộ lọc FIR
11.7 Các chuyển đổi
11.8 Xử lý tín hiệu thống kê v phân tích phổ
11.9 Các cửa sổ tín hiệu
11.10 Thông số khi mô hình hoá
11.11 Các thao tác đặc biệt
11.12 Lm mẫu lọc số tơng tự thông thấp
11.13 Chuyển đổi tần số (Dịch tần)
11.14 Rời rạc hoá bộ lọc
11.15 Những hm khác

ứng dụng về Toolbox Simulink

212

140

141
153
155
155
157
162
165
166
169
174
176
182
182
187
187
188
189
189
189
190
190
191
191
192
192
193
193
193
194



1. ThÕ nμo lμ Simulink
2. Bμi to¸n thø nhÊt
2.1§Æt bμi to¸n cho m« h×nh
2.2 M« t¶ m« h×nh
2.3 Thö l¹i qu¸ tr×nh
2.4 HiÖu qu¶ cña bμi to¸n nμy
2.5 C¸c vÝ dô cã thÓ sö dông kh¸c cña Simulink
3. Ph−¬ng ph¸p x©y dùng m« h×nh

194
195
196
197
197
198
199
199
209

Môc lôc

213


Lời nói đầu

Máy tính từ khi ra đời đã tạo điều kiện v hỗ trợ con ngời trong nhiều
lĩnh vực của cuộc sống v ngy cng đợc coi nh công cụ không thể thiếu
trong học tập cũng nh nghiên cứu.

Chẽnh vệ vy, viẻc nng cao vĂ pht trièn khă nng tẽnh ton vĂ xứ lẽ
ca my tẽnh ngĂy cĂng ừỡc cc nhĂ khoa hc, kỵ sừ cc ngĂnh quan tm
ặn. Tuy nhin è viặt ừỡc mổt chừỗng trệnh bng ngỏn ngự lp trệnh cp
cao phũc vũ tõt cho mổt lỉnh vỳc khoa hc kỵ thut íi hịi khỏng nhựng phăi
giịi vậ ton hc, cc kiặn thửc vậ lp trệnh trn my tẽnh, hẻ thõng my tẽnh ...
mĂ cín phăi nm rt vựng cc kiặn thửc vậ chuyn ngĂnh ĩ. Ngừội lp trệnh
è ưt ừỡc nhựng yu nĂy phăi mt rt nhiậu thội gian vĂ tõn nhiậu cỏng
sửc.
è tưo iậu kiẻn cho cc nhĂ khoa hc thuổc cc chuyn ngĂnh khc,
ngừội ta ơ xy dỳng nn nhựng phn mậm xứ lỷ dự liẻu ỗn giăn, tiẻn lỡi.
Matlab lĂ mổt trong nhựng phn mậm nhừ vy vĂ hiẻn nay ang ừỡc sứ
dũng rổng rơi. Nĩ khỏng chì cho phẫp tẽnh ton, mĂ cín cung cp cho ta
nhựng cỏng cũ cỳc mưnh bièu din, xứ lẽ cc dự liẻu, thỏng tin bng ó hoư.
MATLAB lĂ mổt phn mậm cĩ rt nhiậu ừu ièm è è cc nhĂ khoa
hc, cc kỵ sừ lỳa chn:
* D hc vĂ d sứ dũng.
* LĂ mổt phn mậm mưnh, mậm do, trong nhiậu lỉnh vỳc khoa hc kỵ
thut .
* Chẽnh xc, ỗn giăn vĂ trong sng.
* ang ừỡc cc cỏng ty phn mậm lốn trn thặ giối ng hổ vĂ pht
trièn.
i


Trừốc hặt MATLAB d hc vĂ d sứ dũng: MATLAB cĩ cc thừ viẻn
chun, cc hĂm sạn cĩ è bưn cĩ thè sứ dũng thun lỡi vĂ d dĂng. Mằt khc,
bưn chì cn nm ừỡc mổt sõ kiặn thửc ton hc cỗ băn vậ ưi sõ vĂ lừỡng
gic, ton hc cao cp lĂ cĩ thè sứ dũng MATLAB nhừ mổt cỏng cũ mưnh cho
cc ửng dũng ca mệnh. MATLAB khỏng íi hịi bưn phăi cĩ nhiậu kiặn thửc
vậ my tẽnh củng nhừ khă nng lp trệnh. Bưn cĩ thè lp cc chừỗng trệnh ửng

dũng cho chuyn ngĂnh ca bưn mổt cch từỗng õi d dĂng, khi bưn nm
vựng cc kiặn thửc sau:
+ Ton ửng dũng cỗ băn.
+ Lỷ thuyặt sõ cỗ băn
+ Mổt chợt vậ lp trệnh my tẽnh.
+ Phừỗng php tẽnh.
Matlab (Matrix Laboratory) lĂ săn phm phn mậm ca Math Work, u
tin ừỡc thiặt kặ trn cỗ sờ ton hc, phũc vũ ch yặu ỗn thun cho ton
hc. Tuy nhin, ngĂy nay nĩ ừỡc pht trièn xa hỗn nhiậu so vối Matlab
nguyn thuý vĂ lĂ mổt phn mậm cĩ giao diẻn cỳc mưnh vĂ cĩ khă nng lp
trệnh è giăi quyặt cc vn ậ, cc bĂi ton trong rt nhiậu lỉmh vỳc rt khc
nhau ca khoa hc kỉ thut nhừ iẻn, phăn ửng hưt nhn, tỳ ổng ho, nghin
cửu vậ gien... Phn tứ cỗ băn ca Matlab lĂ ma trn. Cc cu lẻnh ca Matlab
viặt từỗng tỳ nhừ cch mỏ tă cc vn ậ kỉ thut bng ton hc, vệ thặ viặt cc
chừỗng trệnh bng ngỏn ngự Matlab nhanh hỗn vĂ ỗn giăn hỗn nhiậu so vối
viặt chừỗng trệnh bng cc ngỏn ngự lp trệnh bc cao nhừ Pascan, Fotran, C.
Hơn thế nữa cấu trúc chơng trình cũng nh cấu trúc các hm sẵn có
trong MatLab đợc mô tả gần giống với ngôn ngữ lập trình C. ĐIều rất thuận
lợi cho những ngời đã biết qua v sử dụng C cũng nh một loại ngôn ngữ lập
trình cơ bản khác bất kỳ khác.

ii


Thỏng thừộng, õi vối cc dự liẻu rội rưc: dự liẻu thõng k - kặ ton,
thỏng tin vậ khẽ hu... ừỡc lừu dừối dưng ma trn. Cín õi vối cc hĂm lin
tũc: sĩng m, m thanh, hệnh ănh... ừỡc biặn ọi thĂnh cc tẽn hiẻu sõ vĂ
ừỡc ghi lưi trong cc file dự liẻu. Sau ĩ, ngừội ta sứ dũng cc hĂm ton hc
ca MATLAB è xứ lỷ chợng mổt cch d dĂng.
Cc vn ậ ừỡc s ừỡc phn tẽch vĂ giăi quyặt theo 5 bừốc nhừ sau:

+ Phn tẽch vĂ bièu din vn ậ mổt cch rò rĂng.
+ Mỏ tă cc gi tr u vĂo vĂ cc gi tr u ra cn phăi tẽnh ton.
+ Thao tc vối cc vẽ dũ ỗn giăn
+ Viặt chừỗng trệnh bng Matlab
+ Kièm tra lưi chừỗng trệnh nĂy bng cc bổ dự liẻu a dưng.
è nng cao kỵ nng phn tẽch vĂ giăi quyặt bĂi ton cn thỳc hĂnh 5
bừốc trn mổt cch thun thũc. Tữ ĩ s tiặp cn vĂ tệm ra ừỡc giăi php
ỗn giăn, d hièu vĂ hay nht cho mồi bĂi ton.
Dới đây chúng ta sẽ lm một ví dụ theo theo từng bớc trên để có thể
hiểu kỹ hơn về phơng pháp áp dụng cho bi toán cụ thể. Bi toán tính
khoảng cách giữa hai đIểm trong mặt phẳng.
Bớc 1 Phân tích đặt vấn đề:
Trong bớc đầu tiên tiên ny, bi toán đa ra phải đợc xem xét đánh
giá v đặt vấn đề một cách rõ rng v cụ thể. ĐIều ny cực kỳ quan trọng vì
nó quyết định đến ton bộ hớng đi của bi toán sau ny. Cho ví dụ nêu ở trên
thì vấn đề đợc nêu ra l:
Tính khoảng cách giữa 2 đIểm của đờng thẳng trong mặt phẳng
Bớc 2 Mô tả dữ liệu vo ra:
ở bớc ny việc mô tả thông tin cần giải quyết phải tiến hnh cẩn trọng
vì nó sẽ quyết định đến tham số đợc sử dụng v tính toán. Rất nhiều trờng
hợp, sơ đồ khối đợc sử dụng hữu hiệu để cho phép xác định vị trí luồng vo
ra. Tuy nhiên một số trờng hợp chúng chỉ l các hộp đen vì rằng chúng ta

iii


không thể xác định luồng ra tại một đIểm no đó trong các bớc. Nhng chúng
ta có thể chỉ ra thông tin để tính toán luồng ra.
ĐIểm1


khoảng cáchgiữa 2 đIểm

ĐIểm 2
Bớc 3 Thao tác tay:
Bớc ny dùng để thao tác v tính toán bằng tay sử dụng các tập dữ
liệu đầu vo đơn giản. Nó l bớc rất quan trọng v không nên bỏ qua kể cả
với loại hình bi toán đơn giản. Đây l bớc tiền đề để chúng ta đi vo cụ thể
cho việc tìm ra giải pháp. Nếu ở đây chúng ta không thể lấy đợc dữ liệu hay
tính đợc đầu ra thì chúng ta có thể chuyển sang bớc kế tiếp.
Ví dụ: Với hai đIểm P1 v P2 có toạ độ ( 1,5 ) & ( 4,7 )
Khoảng cách giữa hai điểm bằng công thức Pythagorean
Bớc 4 Giải pháp bằng MatLab
Tới bớc ny bi toán đợc chuyển đổi sang giải pháp MatLab. ĐIều đó
có nghĩa chúng ta sẽ sử dụng các hm toán học hay còn gọi l các lệnh. V
dới đây bi toán của chúng ta sẽ đợc mô tả theo MatLab.
>> P1 = [ 1, 5 ]
>> P2 = [ 4, 7 ]
>> d = sqrt ( sum ( P2-P1)^2 ) )
Bớc 5 Kiểm tra:
Bớc kiểm tra l bớc cuối cùng trong chuỗi các tiến trình giải bi toán.
Chúng ta nên kiẻm tra bi toán bằng các dữ liệu đầu vo. Nếu MatLab thực
hiện xong bi toán thì nó sẽ cho chung ta kết quả ở đầu ra.
>> d =
ans
3.6056
Trờng hợp không có kết quả hay kết quả sai thì có nghĩa MatLab cha
thực hiện đợc bi toán v chúng ta cần kiểm tra lại bi toán bằng cả hai
phơng pháp bằng tay v MatLab.
iv



NgĂy nay MatLab ơ trờ nn thỏng dũng vĂ cỳc kỹ phọ biặn ờ hu hặt
cc trừộng ưi hc trn thặ giối vĂ lĂ cỏng cũ trỡ giợp hựu hiẻu cho cc sinh
vin, kỵ sừ hay cc nhĂ ton hc trong nghin cửu củng nhừ trong cỏng viẻc
thừộng ngĂy. è giợp cc bưn tr sinh vin cĩ thm mổt cỏng cũ nựa trong
tay, chợng tỏi xin trệnh by sỗ lừỡc phn cn băn ca MatLab vĂ mổt sõ cc
ửng dũng ca MatLab trong thỳc tặ.
Băn in nĂy chc chn s cĩ nhiậu thiặu sĩt, chợng tỏi rt mong ừỡc
sỳ gĩp ỷ ca cc bưn c vĂ cc óng nghiẻp.
Cc tc giă.

v


Chơng 1 - Các khái niệm cơ bản

Chơng 1

Các khái niệm cơ bản
1.1. Khă nng ca Matlab
Matlab lĂ gệ ? Matlab hoưt ổng ra sao ?
Matlab cĩ thè lĂm ừỡc nhựng gệ vĂ ai cĩ thè hc vĂ sứ dũng Matlab ?
S cĩ rt nhiậu bưn c s bn khon vối cc cu hịi trn. VĂ ờ chừỗng nĂy
chợng ta s cùng tệm ra lội giăi p.
Matlab lĂ chừỗng trệnh phn mậm trỡ giợp cho viẻc tẽnh ton vĂ hièn th.
Matlab cĩ thè chưy trn hu hặt cc hẻ my tẽnh tữ my tẽnh c nhn ặn cc hẻ my
tẽnh lốn super computer.
Matlab ừỡc iậu khièn bời tp cc bổ lẻnh, từỗng tc bng bĂn phẽm trn cứa
sọ iậu khièn, óng thội Matlab cín cho phẫp khă nng lp trệnh vối cợ php thỏng
dch lẻnh hay cín gi lĂ script file. Cc lẻnh, bổ lẻnh ca Matlab ln ặn con sõ hĂng

trm vĂ ngĂy cĂng ừỡc mờ rổng bời cc phn Tools box trỡ giợp, hay cc hĂm ửng
dũng tưo ra bời ngừội sứ dũng.
Cc lẻnh ca Matlab rt mưnh vĂ hiẻu quă cho phẫp giăi cc loưi hệnh ton
khc nhau vĂ ằc biẻt hiẻu quă cho cc hẻ phừỗng trệnh tuyặn tẽnh củng nhừ thao tc
trn cc bĂi ton ma trn. Khỏnng nhựng thặ Matlab cín rt hựu hiẻu trong viẻc trỡ
giợp thao tc vĂ truy xut ó hoư trong khỏng gian 2D củng nhừ 3D củng khă nng tưo
hoưt cănh cho viẻc mỏ tă bĂi ton mổt cch sinh ổng.
Cùng vối trn 25 Tools box (thừ viẻn trỡ giợp) khc nhau Matlab ừa ặn cho
cc bưn sỳ lỳa chn hoĂn chình vĂ phong phợ vậ cc cỏng cũ trỡ giợp c lỳc cho
nhựng lỉnh vỳc khc nhau trn con ừộng nghin cửu mĂ cc bưn ơ lỳa chn.
Dừối y chợng tỏi xin liẻt k mổt sõ lỉnh vỳc mĂ Matlab ơ vĂ ang giăi quyặt
mổt cnh hiẻu quă.

Phần 1 - Cơ sở

1


Chơng 1 - Các khái niệm cơ bản


Nghin cửu vĂ pht trièn trong lỉnh vỳc cỏng nghiẻp.



Giăng dưy, nghin cửu lp cc chừỗng trệnh ửng dũng trong giăng dưy cho
cc mỏn kỵ thut nhừ ton, lỷ, ho ... trong cc trừộng phọ thỏng nhm
nng cao khă nng tiặp thu củng nhừ ỷ sng tưo trong hc sinh.




Giăng dưy vĂ lp cc chừỗng trệnh giăng dưy vậ ton ằc biẻt lĂ cc loưi
hệnh nguyn lỷ cỗ băn vĂ cc phừỗng trệnh tuyặn tẽnh cho sinh vin củng
nhừ hc sinh cc trừộng kỵ thut.



Giăng dưy vĂ nghin cửu trong lỉnh vỳc kỵ thut vĂ khoa hc bao góm nhừ:
iẻn tứ, lỷ thuyặt iậu khièn, vt lỷ , ó hoư , xứ lỷ ănh, vt liẻu ...



Giăng dưy vĂ nghin cửu trn mi lỉnh vỳc cĩ xut hiẻn tẽnh ton bao góm
ton kinh tặ, ho, cỗ hc, sinh hc ...

1.2 Hoưt ổng ca Matlab
Muõn sứ dũng ừỡc phn mậm MATLAB, trừốc tin bưn phăi cĂi ằt nĩ. Vệ
viẻc cĂi ằt MatLab cỳc kỹ d dĂng nn ờ y chợng ta khỏng ậ cp ặn. Tuy nhin
cc bưn nn chợ ỷ khi cĂi ằt nặu cc bưn muõn sứ dũng thm cc ToolBox ca
MatLab nhừ Simulink, Fuzzy ToolBox, DSP (digital signal processing) .v.v. hay muõn
tẽch hỡp vối MatLab mổt sõ ngỏn ngự lp trệnh quen thuổc mĂ bưn khỏng muõn xa
cch nhừ C, C++, Fortran ...
Chơng trình ứng dụng ở đây thờng có ở các phiên bản sau:
MatLab 3.5 trở xuống với môi trờng hoạt động l MS-Dos.
MatLab 4.0, 4.2, 5.1, 5.2 ... hoạt động trong môI trờng Windows.

Hệnh 1.1 Giao diẻn mn hệnh khi khời tưo Matlab 4.2

Phần 1 - Cơ sở


2


Chơng 1 - Các khái niệm cơ bản
(ở đây chúng ta sẽ có ngay lệnh cơ bản dnh cho việc giới thiệu chơng trình
l : intro, demo, help help ).
V các version MatLab khác cho môi trờng tơng tác Unix.
Việc khởi động Matlab trên mỗi hệ thống mỗi khác. Trong môi trờng Window
hay Macintosh chơng trình thờng đợc khởi động thông qua việc click chuột trên
các icon hay còn gọi l các biêu tợng. Còn với môi trờng Unix, Dos thông qua dòng
lệnh

:\ Matlab
Giao diẻn ca MATLAB sứ dũng 2 cứa sọ: cứa sọ thử nht ừỡc sứ dũng è
ừa cc lẻnh vĂ dự liẻu vĂo óng thội è in kặt quă; cứa sọ thử hai trỡ giợp cho viẻc
truy xut ó hoư dùng è thè hiẻn nhựng lẻnh hay kặt quă u ra dừối dưng graphics.
Viẻc ngt chừỗng trệnh ang thỳc hiẻn hoằc cc chừỗng trệnh thỳc hiẻn khỏng
ợng theo yu cu thỏng qua phẽm nĩng Ctrl + C.
è thot ra khịi mỏi trừộng lĂm viẻc Matlab, chợng ta cĩ thè sứ dũng lẻnh ca
Matlab lĂ :
>> quit

%hoằc

>> exit

Hệnh v 1.2 Hai cứa sọ giao diẻn ca Matlab

Phần 1 - Cơ sở


3


Chơng 1 - Các khái niệm cơ bản

1.2.1. Cc phẽm chuyn dũng vĂ cc lẻnh thỏng dũng hẻ thõng
hoằc Ctrl + p

Gi lưi lẻnh vữa thỳc hiẻn trừốc ĩ

hoằc Ctrl + n

Gi lưi lẻnh ơ nh vĂo rt lu trừốc ĩ

hoằc Ctrl + f

Chuyèn con trị sang phăi 1 kỷ tỳ

hoằc Ctrl + b

Chuyèn con trị sang tri 1 kỷ tỳ

Ctrl + l hoằc Ctrl +

Chuyèn con trị tỳ sang tri 1 tữ

Ctrl + r hoằc Ctrl +

Chuyèn con trị tỳ sang phăi 1 tữ


Ctrl + a hay Home

Chuyèn con trị vậ u díng

Ctrl + k

Xo cho ặn cuõi díng

Cc lẻnh hẻ thõng
casesen off

-Bị thuổc tẽnh phn biẻt chự hoa vĂ chự thừộng

casesen on

- Sứ dũng thuổc tẽnh phn biẻt chự hoa vĂ chự thừộng

clc

- Xo cứa sọ díng lẻnh

clf

- Xo cứa sọ ó hoư

computer

- Lẻnh in ra mổt xu kẽ tỳ cho biặt loưi my tẽnh

demo


- Lẻnh cho phẫp xem cc chừỗng trệnh mạu (minh hoư khă
nng ca Matlab )

exit, quit

- Thot khịi MATLAB

Ctr-c

- Dững chừỗng trệnh khi nĩ b rỗi vĂo tệnh trưng lằp khỏng
kặt thợc

help

- Lẻnh cho xem phn trỡ giợp mổt sõ cc lẻnh ừỡc sứ dũng
trong Matlab

input

- Nhp dự liẻu tữ bĂn phẽm

load

- Tăi cc biặn ơ ừỡc lừu trong 1 file ừa vĂo vùng lĂm viẻc.

pause

- Ngững tưm thội chừỗng trệnh


save

- Lừu giự cc biặn vĂo file cĩ tn lĂ matlab.mat

1.3. Biặn vĂ thao tc ca cc biặn
1.3.1 Biặn trong Matlab
Phần 1 - Cơ sở

4


Chơng 1 - Các khái niệm cơ bản
Tn cc biặn trong Matlab cĩ thè dĂi 19 kỷ tỳ bao góm cc chự ci A-Z hay a-z
cùng cc chự sõ củng nhừ 1 vĂi cc kỷ tỳ ằc biẻt khc nhừng luỏn phăi bt u bng
chự ci. Tn ca cc hĂm ơ ừỡc củng cĩ thè ừỡc sứ dũng lĂm tn ca biặn vối iậu
kiẻn hĂm s khỏng ừỡc sứ dũng trong suõt qu trệnh tón tưi ca biặn cho ặn khi cĩ
lẻnh clear xo cc biặn trong bổ nhố hay clear + tn ca biặn.
clear

- Xo cứa sọ ang sứ dũng, xo vùng nhố dĂnh cho cc
biặn. Trong trừộng hỡp nĂy tt că cc biặnừỡc nh nghỉa
trừốc ĩ ậu b xo.

clear name
clear name1, name2, ...
clear value
pack

- Chì xo biặn cĩ tn lĂ name
- Chì xo biặn cĩ tn ừỡc liẻt k sau lẻnh clear ( name1,

name2 ...)
- Xo biặn theo gi tr cho trừốc
Lẻnh ừỡc thỳc hiẻn nhm mũc ẽch sp xặp lưi cc biặn
củng nhừ vùng chửa biặn ca bổ nhố. Khi bổ nhố ca my
tẽnh y lẻnh pack cho phẫp tưo ra thm vùng bổ nhố cho
biặn mĂ khỏng phăi xo i cc biặn ơ tón tưi. Cỏng viẻc
ừỡc thỳc hin nhừ sau:
1. Tt că cc biặn trong bổ nhố ừỡc lừối lưi trn ỉa dừối
file pack.tmp.
2. Vùng bổ nhố cỗ sờ s ừỡc giăi phĩng
3. Cc biặn s ừỡc nưp (load) vĂo bổ nhố tữ file
pack.tmp
4. File pack.tmp b huý bị

pack filename

Sp xặp lưi bổ nhố vối file trung gian cĩ tn lĂ: filename

Bệnh thừộng Matlab phn biẻt khc nhau cc biặn tưo bời chự ci thừộng vĂ
chự ci hoa. Cc lẻnh ca Matlab nĩi chung thừộng sứ dũng chự ci thừộng. Viẻc phn
biẻt ĩ cĩ thè ừỡc bị qua nặu chợng ta thỳc hiẻn lẻnh
>> casensen

Kièm tra sỳ tón tưi ca cc biặn trong bổ nhố thỏng qua bổ lẻnh
who

Hièn th danh sch cc biặn ơ ừỡc nh nghỉa

whos


Hièn th cc biặn ơ ừỡc nh nghỉa cùng kẽch thừốc ca

Phần 1 - Cơ sở

5


Chơng 1 - Các khái niệm cơ bản
chợng vĂ thỏng bo chợng cĩ phăi lĂ sõ phửc khỏng.
who global
exist( namestr )

Hièn th cc biặn cũc bổ
Hièn th cc biặn phũ thuổc vĂo cch cc biặn ừỡc nh
nghỉa trong chuồi namestr. HĂm s tră lưi gi tr sau:
Nặu namestr lĂ tn ca 1 biặn
Nặu namestr lĂ tn ca 1 file.m
Nặu namestr lĂ tn ca 1 MEX file
Nặu namestr lĂ tn ca hĂm dch bời SIMULINK
Nặu namestr lĂ tn ca hĂm ừỡc nh nghỉa trừốc bối
Matlab .

1.3.2 ổ lốn ca biặn
ổ lốn hay chiậu dĂi ca biặn vector củng nhừ ma trn cĩ thè ừỡc xc nh
thỏng qua 1 sõ hĂm cĩ sn ca Matlab.
size ( A )

Cho ra 1 vector chửa kẽch thừốc ma trn A. Phn tứ u
tin ca vector lĂ sõ hĂng ca ma trn, phn tứ thử 2 lĂ sõ cổt
ca ma trn.


[ m n ] = size( A )

Tră gi tr ổ lốn ca ma trn A vĂo vector xc nh bời 2
biặn m vĂ n.

size (A, p)

ừa ra gi tr sõ hĂng ca ma trn A nặu p <1 vĂ sõ cổt
ca A nặu p >= 2.

size(x)

ừa ra vector mỏ tă ổlốn ca vector x. Nặu x lĂ vector
hĂng m phn tứ thệ gi tr u ca vector lĂ m vĂ gi tr thử 2
lĂ 1. Từộng hỡp x lĂ vector n cổt thệ gi tr thử nht s lĂ 1 vĂ
thử 2 lĂ n.

lengh(x)
lengh(x)

Tră gi tr chiậu dĂi ca vector x
Tră gi tr chiậu dĂi ca ma trn A. Gi tr thu ừỡc s lĂ
m nặu m>n vĂ ngừỡc lưi s lĂ n nẫu n>m.

1.3.3 Mổt sõ biặn ừỡc nh nghỉa trừốc.
ans

Biặn cho trừốc ừỡc gn cho phẫp tẽnh cuõi cùng ca


Phần 1 - Cơ sở

6


Chơng 1 - Các khái niệm cơ bản
cỏng viẻc tẽnh ton khỏng biặn gn.
esp

Tră ra ổ chẽnh xc ca my xc nh bời khoăng tữ 1 ặn
1 biặn du phy ổng tiặp ĩ. Biặn esp ừỡc sứ dũng nhừ lĂ
sai sõ trong 1 vĂi cc phẫp ton. Ngừội sứ dũng cĩ thè gn
gi tr mối cho esp nhừng gi tr ĩ s khỏng b xo i bời
hĂm clear.

realmax

ừa ra gi tr ca sõ lốn nht mĂ my tẽnh (chừỗng trệnh)
cĩ thè tẽnh ton ừỡc .

realmin

ừa ra gi tr ca sõ nhị nht mĂ my tẽnh (chừỗng trệnh)
cĩ thè tẽnh ton ừỡc .

1.3.4 Sõ phửc
a) Cc phẫp ton õi vối sõ phửc:
Phẫp ton

Kặt quă


c1 + c2

(a1 + a2) + i(b1 + b2)

c1 - c2

(a1 - a2) + i(b1 - b2)

c1 . c2

(a1. a2 - b1. b2) + i(a1. a2 + b1. b2)

c1

(a1. a2 - b1. b2) + i (a1. a2 - b1. b2)

c2

a21+b22a21+b22

| c1|

a21

+

b22

(ổ lốn hay tr tuyẻt õi ca c1)

a*1

a1- ib1
(sõ lin hỡp ca sõ phửc)

b) Mổt sõ hĂm ằc biẻt ca sõ phửc
real(x)

HĂm cho gi tr phn thỳc ca sõ phửc x. Nặu x=a+ib thệ

real(x)=a
imag(x)

HĂm tră lưi gi tr phn ăo ca sõ phửc x. Nặu x=a+ib thệ

imag(x)=b

Phần 1 - Cơ sở

7


Chơng 1 - Các khái niệm cơ bản
conj(x)

Tẽnh sõ lin hỡp ca sõ phửc. Nặu x=a+ib thệ conj(x)=a-ib

abs(x)

Tẽnh ổ lốn, gi tr tuyẻt õi ca sõ phửc.


angle(x)

Tẽnh gĩc cĩ gi tr lĂ atan2(imag(x), real(x)), gi tr gĩc
nm trong khoăng - ặn .

c) Toư ổ bièu din sĩ phửc
Chợng ta cĩ thè bièu din sõ phửc a+ib trn hẻ trũc toư ổ. õi vối hẻ trũc toư
ổ ậ cc phn thỳc ừỡc bièu din trn trũc x: x=a, phn ăo ừỡc bièu din trn trũc
y: y=b. õi vối hẻ toư ổi cỳc sõ phửc ừỡc bièu din bời r, .
Trong ĩ:
r = a21+

b22

= tan-1 b
a
Ngừỡc lưi :
a = rcos
b = rsin

Hệnh v bièu din toư ổ sõ phửc

Trong hẻ toư ổ cỳc: ổ lốn (magnitude), vĂ pha (phase) ca sõ phửc s ừỡc
tẽnh ton nhừ sau:
>> r = abs(x);
>> theta = angle(x);

Bièu din sõ phửc theo ổ lốn vĂ pha nhừ sau:
>> y = r*exp(i*theta);


Trong hẻ toư ổ ậ cc, phn thỳc (real) vĂ phn ăo (imaginary) s ừỡc tẽnh
ton nhừ sau:
>> a = real(x);
>> b = imag(x);

Bièu din sõ phửc:
Phần 1 - Cơ sở

y = a + ib;

8


Chơng 1 - Các khái niệm cơ bản

1.4. Sỗ lừỡc vậ ó hoư trong MatLab
MATLAB sứ dũng lẻnh X-Y Plots è v ó th, bièu ó cho cc thỏng tin mổt
cc d dĂng. Trong phn nĂy, v ó th tọng qut theo dự liẻu ừỡc lừu trong hai
vector x,y. Trong trừộng hỡp cc bièu ó hay ó th mong muõn ừỡc bièu din dừối
dưng mạu 3D thệ ỗn giăn vối Matlab chợng ta chì cn ọi sang dùng lẻnh X-Y-Z Pots
è v.

1.4.1 V trong cứa sọ ó hoư ca Matlab
plot(x,y)

V ó th theo toư ổ x-y

pot3(x,y,z)


V ó th theo toư ổ x-y-z

title

ừa cc title vĂ trong hệnh v

xlabel

ừa cc nhơn theo chiậu x ca ó th

ylabel

ừa cc nhơn theo chiậu y ca ó th

zlabel

ừa cc nhơn theo chiậu z ca ó th

grid

V cc ừộng giĩng grid line trn ó th

plot(y)

V ó th theo y bị qua chì sõ theo y
Nặu y lĂ sõ ăo thệ ó th ừỡc v s lĂ phn thỳc vĂ phn ăo ca
y.
>> plot( real ( y ), image ( y ) )

plot(x,y,S)

plot(x,y,z,S)

plot ( x, y, s ) v theo x,y
plot ( X, Y, Z, S ) v theo x, y, z vối
s lĂ cc chì sõ s liẻt k ờ chừỗng sau
Vẽ dũ:
>> plot ( x, y, 'b+' )
V ó th theo x vĂ y vĩi mu ca ừộng lĂ mu xanh dừỗng vĂ
kỷ tỳ tưo nn ừộng lĂ du +

Phần 1 - Cơ sở

9


Chơng 1 - Các khái niệm cơ bản

Vẽ dũ hệnh helix:
Vi du ve plot3() trong Matlab

40
30
20
10
0
1

1

0


0
-1

-1

Hệnh 1.3 Hệnh Helix

>> t = 0:pi/50:10*pi;
>> plot3(sin(t),cos(t),t);
>> Title(' Vẽ du ve plot3() trong Matlab ')

Matlab rt mưnh trong viẻc xứ lỷ ó hoư. Ta s ậ cp vn ậ nĂy rò hỗn ờ
chừỗng sau.

1.4.2 In n trn mĂn hệnh ó hoư
Việc in các ảnh trên mn đồ hoạ có thể đợc thực hiện thông qua các menu
lệnh may các lệnh của Matlab.
>> print

- In mn hình của cửa sổ đồ hoạ hiện thời ra máy in.
>> print filename

- In mn hình đồ hoạ ra file
>> print esp filename

- copy mn đồ hoạ theo khuôn dạng eps. File thu đợc có thể đa vo các trang
văn bản

Phần 1 - Cơ sở


10


Chơng 1 - Các khái niệm cơ bản

1.4.3 Mổt sõ vẽ dũ mỏ tă ó hoư .
Do thi ham sin2x , sin(x^2) va sin(x)^2

1

0.5

0

-0.5

-1

0

2

4

6

8

10


Hệnh 1.4 HĂm sin2x, cos(x)^2 vĂ cos(x^2)

a) Vẽ dũ mỏ tă khă nng v hĂm ó hoư trong khỏng gian 2D. Giă sứ vối hĂm
sin2x, cos(x)^2 vĂ (cosx)^2 trong khoăng 0 < x < 10. Viẻc thao tc d dĂng trn tp
cc lẻnh sau.
>> hold on
>> x = lẽnspace(0,10);
>> y1 = sin(2*x);
>> y2 = sin(x.^2);
>> y3 = (sin(x)).^2;
>> plot ( x,y1 ); plot ( x,y2 ); plot( x,y3 );

HĂm plot ( x,y ) s cho ra trn mĂn hệnh ó hoư hĂm y theo vector x
b) HĂm mỏ tă ừộng cong tham biặn trong khỏng gian 2D vĂ 3D
ừộng cong tham biặn theo t vối t trong khăng tữ [ 0 2*pi ] cho kặt quă
Hệnh v 1.5.

Phần 1 - Cơ sở

11


Chơng 1 - Các khái niệm cơ bản
Ham tham bien
1.5

1

0.5


0

-0.5

-1

-1.5
-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

Hệnh 1.5 HĂm tham biặn 2D

>> t = 0 : 0.01 : 2*pi ;
>> x = cos(t) sin(3*t)

>> y = sin(t).*cos(t) cos(3*t )
>> title( HĂm tham biặn );
>> plot (x,y)

Vối gi tr ca t trong khăng tữ [ 0 2*pi ] vĂ khoăng ca u lĂ [ 0 1 ].
oưn chừỗng trệnh sau cho ra hệnh v hĂm tham biặn 3D.
>> t = 0 : 0.01 : 1 ;
>> u = 0: 0.01; 1;
>> x = u.*cos(t)./30 + 10;
>> y = u.*sin(t)./55 + 10;
>> z = 1;
>> title( HĂm tham biặn 3D );
>> plot (x,y,z)

1.5. Cc HĂm m thanh trong Matlab

Phần 1 - Cơ sở

12


Chơng 1 - Các khái niệm cơ bản
Matlab cho phép tạo âm thanh thông qua các vector bởi lệnh sound.
sound ( y )

- Gửi tín hiệu của vector y ra loa. Vector đợc xắp xếp với
biên độ lớn nhất

sound ( y , f )


- Thực hiện công việc nh hm sound (y) với f l dải tần đo
bởi Hz. Lệnh ny không thực hiện trên các hệ máy
SunSPARE.

saxis

- Trả giá trị giới hạn của trục âm thanh trong vector hiện
hnh.

axis( [min max] )

- Xét thang của trục âm thanh. Tăng giá trị sẽ cho âm thanh
trầm hơn. Giảm giá trị sẽ cho âm thanh ồn hơn.

saxis (str)

- Xét trục âm thanh theo chuỗi srt.

Ví dụ :
a) Tạo sóng hình sin trong khoảng sau:
>> x = sin ( linspace(0,10000,10000) );
>> sound ( x );

b) Một vi ví dụ với các âm thanh có sẵn đợc đa ra bởi lệnh load.
>> load train;

% giá trị của âm thanh tầu hoả

>> sound ( y );


% đợc đa vo tham số y

>> load chirp;

% tiếng chim kêu

>> sound ( y );

Với Matlab trên hệ MS -Window cho phép ngời sử dụng thao tác với file âm
thanh định dạng wav bằng bộ lệnh sau:
wavread ( fstr ) [y] = wavread (wavfile)
- Đọc dữ liệu âm thanh từ file.wav xác định bởi chuỗi fstr vo tham biến y.
[ y, Fs ] = wavread ( ... ) nh trên với fs l tần số
wavwrite ( sv, f , wavfiles )
- Ghi dữ liệu âm thanh từ vector sv với tần số f vo file xác định bởi biến
wavefile

Phần 1 - Cơ sở

13



×