BỘ GIÁO DỤC VÀ ĐÀO TẠO
ĐẠI HỌC CÔNG NGHỆ TP.HCM
THỰC HÀNH XỬ LÝ TÍN
HIỆU SỐ
Biên soạn:
ThS. Phạm Hùng Kim Khánh
www.hutech.edu.vn
THỰC HÀNH XỬ LÝ TÍN HIỆU SỐ
Ấn bản 2014
MỤC LỤC
I
MỤC LỤC
MỤC LỤC ................................................................................................................... 1
HƯỚNG DẪN .............................................................................................................. 3
BÀI 1: PHẦN MỀM MATLAB .......................................................................................... 5
1.1 KHỞI ĐỘNG MATLAB .............................................................................................. 5
1.2 CÁC VẤN ĐỀ CƠ BẢN .............................................................................................. 8
1.2.1 Các phép toán và toán tử ................................................................................. 8
1.2.2 Khai báo biến ................................................................................................. 9
1.2.3 Các lệnh thường dùng ...................................................................................... 9
1.3 LẬP TRÌNH TRONG MATLAB ................................................................................... 10
1.3.1 Các phát biểu điều kiện if, else, elseif .............................................................. 10
1.3.2 Switch ......................................................................................................... 10
1.3.3 While ........................................................................................................... 10
1.3.4 For .............................................................................................................. 11
1.3.5 Break: ......................................................................................................... 11
1.4 MA TRẬN ............................................................................................................ 11
1.4.1 Các thao tác trên ma trận .............................................................................. 11
1.4.2 Vector .......................................................................................................... 15
1.4.3 Đa thức ........................................................................................................ 15
1.5 ĐỒ HOẠ ............................................................................................................. 16
1.5.1 Các lệnh vẽ .................................................................................................. 16
1.5.2 Tạo hình vẽ .................................................................................................. 16
1.5.3 Kiểu đường vẽ .............................................................................................. 16
1.5.4 Vẽ với hai trục y ............................................................................................ 17
1.5.5 Vẽ đường cong 3-D........................................................................................ 18
1.5.6 Vẽ nhiều trục toạ độ ...................................................................................... 18
1.5.7 Đặt các thông số cho trục ............................................................................... 19
1.5.8 Đồ hoạ đặc biệt ............................................................................................. 23
1.5.9 Đồ hoạ 3D .................................................................................................... 25
1.5.10 Thực hành vẽ đồ thị ..................................................................................... 26
1.6 CÁC FILE VÀ HÀM ................................................................................................ 28
1.6.1 Script file (file kịch bản) ................................................................................. 28
1.6.2 File hàm ....................................................................................................... 28
1.6.3 Các hàm toán học cơ bản ............................................................................... 29
1.6.4 Các phép toán trên hàm toán học .................................................................... 30
TRANG 2 > THỰC HÀNH XỬ LÝ TÍN HIỆU SỐ
1.6.5 Thực hành trên script và function .....................................................................31
BÀI 2: TÍN HIỆU RỜI RẠC THEO THỜI GIAN ............................................................. 38
2.1 CÁC TÍN HIỆU SƠ CẤP ...........................................................................................38
2.2 CÁC PHÉP TOÁN ...................................................................................................39
2.3 KIỂM TRA TÍNH CHẤT TUYẾN TÍNH VÀ BẤT BIẾN .......................................................39
2.4 HỆ LTI .................................................................................................................41
BÀI 3: BIẾN ĐỔI Z .................................................................................................... 44
3.1 CÁC ĐIỂM CỰC VÀ ĐIỂM KHÔNG .............................................................................44
3.2 PHÂN TÍCH DÙNG PHƯƠNG PHÁP THẶNG DƯ ............................................................45
3.3 BIẾN ĐỔI Z VÀ Z NGƯỢC .......................................................................................46
BÀI 4: BIẾN ĐỔI FOURIER RỜI RẠC .......................................................................... 49
4.1 TÍNH DTFT ...........................................................................................................49
4.2 FFT VÀ CÁC TÍNH CHẤT .........................................................................................50
BÀI 5: BỘ LỌC SỐ FIR ............................................................................................... 53
5.1 CÁC LOẠI BỘ LỌC .................................................................................................53
5.2 PHƯƠNG PHÁP CỬA SỔ ..........................................................................................55
5.3 PHƯƠNG PHÁP LẤY MẪU TẦN SỐ .............................................................................58
5.4 PHƯƠNG PHÁP LẶP ...............................................................................................60
BÀI 6: BỘ LỌC SỐ IIR ............................................................................................... 65
6.1 THIẾT KẾ BỘ LỌC TƯƠNG TỰ ..................................................................................65
6.2 THIẾT KẾ BỘ LỌC SỐ.............................................................................................69
TÀI LIỆU THAM KHẢO .................................................................................................73
HƯỚNG DẪN
II
I
HƯỚNG DẪN
MÔ TẢ MÔN HỌC
Thực hành xử lý tín hiệu số là môn học hỗ trợ cho môn Xử lý tín hiệu số của chuyên
ngành Kỹ thuật Điện tử Truyền thông. Môn học này dựa trên MATLAB để kiểm chứng
các lý thuyết đã học trong môn Xử lý tín hiệu số.
NỘI DUNG MÔN HỌC
Bài 1. Phần mềm MATLAB: cơ bản về MATLAB, cách lập trình cũng như cách xử lý
ma trận, vẽ đồ thị trong MATLAB.
Bài 2: Tín hiệu rời rạc theo thời gian: cách biểu diễn tín hiệu và hệ thống rời rạc theo
thời gian, các tính chất và đáp ứng xung của hệ LTI.
Bài 3: Biến đổi z và z ngược: chuyển tín hiệu từ miền thời gian sang miền z, các tính
chất của biến đổi z và chuyển tín hiệu hữu tỷ trên miền z sang miền thời gian.
Bài 4: Biến đổi Fourier rời rạc: chuyển tín hiệu rời rạc trên miền thời gian sang miền
tần số, dùng các thuật toán FFT để xác định biến đổi Fourier rời rạc.
Bài 5: Bộ lọc số FIR: thiết kế bộ lọc FIR theo yêu cầu cho trước.
Bài 6: Bộ lọc số IIR: thiết kế bộ lọc IIR theo yêu cầu cho trước.
KIẾN THỨC TIỀN ĐỀ
Môn học Thực hành Xử lý tín hiệu số đòi hỏi sinh viên có nền tảng về Xử lý tín hiệu
số.
YÊU CẦU MÔN HỌC
Người học phải dự học đầy đủ các buổi lên lớp và làm bài tập đầy đủ.
CÁCH TIẾP NHẬN NỘI DUNG MÔN HỌC
TRANG 4 > THỰC HÀNH XỬ LÝ TÍN HIỆU SỐ
Để học tốt môn này, người học cần thực hành theo hướng dẫn, làm các bài tập; đọc
trước bài mới và tìm thêm các thông tin liên quan đến bài học.
PHƯƠNG PHÁP ĐÁNH GIÁ MÔN HỌC
Môn học được đánh giá gồm:
Điểm quá trình: 30%. Hình thức và nội dung do giảng viên quyết định, phù hợp với
quy chế đào tạo và tình hình thực tế tại nơi tổ chức học tập.
Điểm thi: 70%. Hình thức bài thi trên máy tính trong 60 phút.
BÀI 1: PHẦN MỀM MATLAB
5
BÀI 1: PHẦN MỀM MATLAB
Sau khi học xong bài này, người học có thể:
Sử dụng phần mềm MATLAB.
Thực hiện tạo các script file hay function và lưu trữ trên MATLAB.
Biết được các công cụ cơ bản trên MATLAB.
1.1 KHỞI ĐỘNG MATLAB
MATLAB (Matrix laboratory) là phần mềm dùng để giải các bài toán kỹ thuật, đặc biệt
là các bài toán liên quan đến ma trận. MATLAB cung cấp các toolboxes, tức các hàm mở
rộng môi trường MATLAB để giải quyết các vấn đề đặc biệt như xử lý tín hiệu số, hệ thống
điều khiển, mạng neuron, fuzzy logic, mô phỏng v.v.
Cửa sổ biểu tượng của chương trình MATLAB:
Hình 1.1 - Cửa sổ khởi động của MATLAB
6
BÀI 1: PHẦN MỀM MATLAB
Cửa sổ làm việc của MATLAB:
Thư mục
hiện hành
Workspace: các
Danh sách các file
biến trong bộ nhớ
hiện có trong thư
mục hiện hành
Cửa sổ lệnh
Nút Start: chứa
Các lệnh đã
các toolbox
thực hiện
Hình 1.2 – Cửa sổ làm việc của MATLAB
Cửa sổ lệnh (Command window):
Là cửa sổ giao tiếp chính của MATLAB bởi đây là nơi nhập giá trị các biến, hiển thị giá
trị, tính toán giá trị của biểu thức, thực thi các hàm có sẵn trong thư viện hoặc các hàm
do người dùng lập trình ra trong M-files. Các lệnh được nhập sau dấu nhắc ‘>>‘ và thực
thi lệnh bằng phím Enter. Để mở chương trình soạn thảo trong MATLAB, gõ lệnh:
>>edit
Hình 1.3 – Cửa sổ edit để soạn script file hay function
BÀI 1: PHẦN MỀM MATLAB
7
Sau đó nhập vào đoạn chương trình sau:
% Chuong trinh trong M-file
x= 0:pi/6:2*pi;
y=sin(x);
plot(x,y);
Lưu chương trình với tên file plot_sin.m bằng cách nhấn Ctrl+S hay nhấn vào biểu
tượng Save
.
Giải thích đoạn chương trình trên: Dòng 1 là dòng chú thích, các chuỗi ở phía sau dấu
% sẽ không được dịch. Dòng 2 định nghĩa vector x trong khoảng từ 0 đến 2 và mỗi giá
trị cách nhau một khoảng /6. Dòng 3 gán biến y = sin(x) và dòng 4 vẽ đồ thị trong đó
x là trục hoành và y là trục tung.
Hình 1.4 – Lưu file trong cửa số Edit
Thực thi chương trình trên trong Command window bằng dòng lệnh sau:
>>plot_sin
Cửa sổ Command History:
Các dòng đã nhập trong Command window (các dòng này có thể là dòng nhập biến,
có thể là dòng lệnh) được giữ lại trong cửa sổ Command History và cửa sổ này cho phép
ta sử dụng lại những lệnh đó bằng cách nhấp đúp chuột lên các lệnh hay biến đó
Cửa sổ Workspace:
8
BÀI 1: PHẦN MỀM MATLAB
Là cửa sổ thể hiện tên các biến bạn sử dụng cùng với kích thước vùng nhớ (số bytes),
kiểu dữ liệu (lớp), các biến được giải phóng sau mỗi lần tắt chương trình. Cửa sổ
Workspace cho phép thay đổi giá trị của biến bằng cách nhấn phím chuột phải lên các
biến và chọn Edit.
Nút Start:
Hình 1.5 – Nút Start
Cửa sổ Edit:
Là cửa sổ dùng để soạn thảo chương trình ứng dụng, được khởi động bằng lệnh edit
trong Command Window. Chương trình soạn thảo trong cửa sổ edit có 2 dạng:
+ Dạng Script file : tập hợp các câu lệnh viết dưới dạng liệt kê, không có biến dữ liệu
vào và biến ra.
+ Dạng function: có biến dữ liệu vào và biến ra.
1.2 CÁC VẤN ĐỀ CƠ BẢN
1.2.1 Các phép toán và toán tử
Các phép toán: + , - , * , / , \ (chia trái) , ^ (mũ) , ‘ (chuyển vị hay số phức liên
hiệp).
Các toán tử quan hệ : < , <= , > , >= , == , ~=
Các toán tử logic : & , | (or) , ~ (not)
Các hằng:
pi
3.14159265
BÀI 1: PHẦN MỀM MATLAB
i, j
số ảo
eps
sai số 2-52
realmin
số thực nhỏ nhất 2-1022
realmax
số thực lớn nhất 21023
inf
vô cùng lớn
NaN
Not a number
9
Chú ý :
+ Các lệnh kết thúc bằng dấu chấm phẩy, MATLAB sẽ không thể hiện kết quả
trên màn hình.
+ Các chú thích được đặt phía sau dấu %.
+ Trong quá trình nhập nếu các phần tử trên một hàng dài quá ta có thể
xuống dòng bằng toán tử ba chấm (. . .)
1.2.2 Khai báo biến
- Phân biệt chữ hoa và chữ thường.
- Không cần phải khai báo kiểu biến.
- Tên biến phải bắt đầu bằng ký tự và không được có khoảng trắng.
- Không đặt tên trùng với các tên đặc biệt của MATLAB.
- Để khai báo biến toàn cục (sử dụng được trong tất cả chương trình con), phải dùng
thêm từ khoá global phía trước.
1.2.3 Các lệnh thường dùng
>>help tên_hàm % tham khảo help của hàm
>>lookfor ‘chuỗi’ %Tìm kiếm chuỗi
Ví dụ: >>lookfor ‘filter’ % Tìm các hàm có liên quan đến mạch lọc
>>clc % Xoá màn hình
>>clear tên_biến % Xoá biến
>>clear all %Xoá tất cả các biến
>> clf %Xoá figure
>>save % Lưu các biến hiện có trong bộ nhớ
>>load % Lấy nội dung các biến đã lưu
>>who % liệt kê các biến trong bộ nhớ
>>whos % liệt kê chi tiết các biến trong bộ nhớ
>>which % Xác định vị trí của hàm hay file
10
BÀI 1: PHẦN MỀM MATLAB
Ví dụ: >>which plot %Xác định vị trí của hàm plot
>>what % Liệt kê các file có trong một thư mục
1.3 LẬP TRÌNH TRONG MATLAB
1.3.1 Các phát biểu điều kiện if, else, elseif
Cú pháp của if:
if
end
Nếu cho kết quả đúng thì phần lệnh trong thân của if được
thực hiện. Các phát biểu else và elseif cũng tương tự.
1.3.2 Switch
Cú pháp của switch như sau:
switch
case n1
case n2
. . . . . . . . . . . . . . .
case nn
Otherwise
end
1.3.3 While
Vòng lặp while dùng khi không biết trước số lần lặp. Cú pháp của nó như sau:
while
end
BÀI 1: PHẦN MỀM MATLAB
11
1.3.4 For
Vòng lặp for dùng khi biết trước số lần lặp. Cú pháp như sau:
for =::
1.3.5 Break:
Phát biểu break để kết thúc vòng lặp for hay while mà không quan tâm đến điều kiện
kết thúc vòng lặp đã thoả mãn hay chưa.
1.4 MA TRẬN
1.4.1 Các thao tác trên ma trận
1.4.1.1 Nhập ma trận
Ma trận là một mảng có m hàng và n cột. Trường hợp ma trận chỉ có một phần tử
(ma trận 1x1) ta có một số. Ma trận chỉ có một cột hay một hàng được gọi là một vector.
Ta có thể nhập ma trận vào MATLAB bằng nhiều cách:
• Nhập một danh sách các phần tử từ bàn phím.
• Nạp ma trận từ file.
• Tạo ma trận nhờ các hàm có sẵn trong MATLAB.
• Tạo ma trận nhờ hàm tự tạo.
Khi nhập ma trận từ bàn phím ta phải tuân theo các quy định sau:
• Ngăn cách các phần tử của ma trận bằng dấu “,” hay khoảng trắng.
• Dùng dấu “;” để kết thúc một hàng.
• Bao các phần tử của ma trận bằng cặp dấu ngoặc vuông [ ].
1.4.1.2 Chỉ số
Phần tử ở hàng i cột j của ma trận có ký hiệu là A(i,j). Tuy nhiên, ta cũng có thể tham
chiếu tới phần tử của mảng nhờ một chỉ số, ví dụ A(k). Trong trường hợp này, ma trận
được xem là một cột dài tạo từ các cột của ma trận ban đầu.
Như vậy viết A(8) có nghĩa là tham chiếu phần tử A(4, 2) (nếu ma trận có 4 hàng).
Lưu ý rằng các chỉ số của ma trận thường bắt đầu từ 1.
1.4.1.3 Toán tử “:”
12
BÀI 1: PHẦN MỀM MATLAB
Toán tử “:” là một toán tử quan trọng của MATLAB. Nó xuất hiện ở nhiều dạng khác
nhau. Biểu thức 1:10 là một vector hàng chứa 10 số nguyên từ 1 đến 10.
>>1:10
>>100:‐7:50 %tạo dãy số từ 100 đến 51, cách đều nhau 7
>>0: pi/4: pi %tạo một dãy số từ 0 đến , cách đều nhau /4
Các biểu thức chỉ số có thể tham chiếu tới một phần của ma trận. A(1:k,j) xác định k
phần tử đầu tiên của cột j. Ngoài ra toán tử “:” tham chiếu tới tất cả các phần tử của một
hàng hay một cột.
>>A(:,3)
>>A(3, :)
>>B = A(:, [1 3 2 4]) %tạo ma trận B từ ma trận A bằng cách đổi
thứ tự các cột từ [1 2 3 4] thành [1 3 2 4]
1.4.1.4 Tạo ma trận bằng hàm có sẵn
MATLAB cung cấp một số hàm để tạo các ma trận cơ bản:
- zeros tạo ra ma trận mà các phần tử đều là 0.
>>z = zeros(2, 4)
- ones tạo ra ma trận mà các phần tử đều là 1.
>>x = ones(2, 3)
>>y = 5*ones(2, 2)
- rand tạo ra ma trận mà các phần tử ngẫu nhiên phân bố đều.
>>d = rand(4, 4)
- randn tạo ra ma trận mà các phần tử ngẫu nhiên phân bố chuẩn.
>>e = randn(3, 3)
- magic(n) tạo ra ma trận cấp n gồm các số nguyên từ 1 đến n2 với tổng các hàng
bằng tổng các cột và bằng tổng các đường chéo (n 3).
- pascal(n) tạo ra tam giác Pascal.
>>pascal(4)
- eye(n) tạo ma trận đơn vị
>>eye(3)
- eye(m,n) tạo ma trận đơn vị mở rộng
BÀI 1: PHẦN MỀM MATLAB
13
>>eye(3,4)
1.4.1.5 Nối ma trận
Ta có thể nối các ma trận có sẵn thành một ma trận mới. Ví dụ:
>>a = ones(3, 3);
>>b = 5*ones(3, 3);
>>c = [a+2; b]
1.4.1.6 Xoá hàng và cột
Ta có thể xoá hàng và cột từ ma trận bằng dùng dấu [].
>>b(:, 2) = [] ; %xoá cột thứ 2
>>b(1:2:5) = []; % xoá các phần tử bắt đầu từ 1 đến 5 và cách 2
(1,3,5) rồi sắp xếp lại ma trận.
1.4.1.7 Các lệnh xử lý ma trận
Cộng : X = A + B
Trừ : X = A - B
Nhân : X = A*B
X = A.*B nhân các phần tử tương ứng với nhau, yêu cầu 2 ma trận A và B phải có
cùng kích thước.
Chia : X = A/B lúc đó X = A * inv(B)
X = A\B lúc đó X = inv(A) * B
X=A./B chia các phần tử tương ứng với nhau, 2 ma trận A và B có cùng kích thước.
Luỹ thừa : X = A^2
X = A.^2
Nghịch đảo: X = inv(A)
Định thức: d = det(A)
Để tạo ma trận trong MATLAB ta chỉ cần liệt các phần tử của ma trận trong cặp dấu
ngoặc vuông ([…]). Các phần tử trên cùng hàng được phân biệt bởi dấu phẩy (,) hoặc
khoảng trắng (space). Các hàng của ma trận, phân cách nhau bởi dấu chấm phẩy (;). Ví
dụ, nhập ma trận A có 4 hàng, 4 cột như sau:
>> A=[16 3 2 13; 5 10 11 8; 9 6 7 12; 4 15 14 1]
14
BÀI 1: PHẦN MỀM MATLAB
>> size(A)
Để truy xuất đến từng phần tử của ma trận ta dùng chỉ số phần tử tương ứng. Ví dụ,
phần tử ở hàng thứ 2, cột thứ 3 của A là A(2,3).
>> A(2,3)
Bài 1.1. Cho ma trận A = [2 4 1; 6 7 2; 3 5 9], sinh viên dùng các lệnh cần thiết để:
a. Lấy dòng đầu tiên của ma trận A.
b. Tạo ma trận B bằng 2 dòng cuối cùng của A.
c. Tính tổng các phần tử trên các cột của A. (gợi ý: tính tổng các phần tử trên cột 1:
sum(A(:,1))).
d. Tính tổng các phần tử trên các dòng của A.
Bài 1.2. Cho ma trận A = [2 7 9 7; 3 1 5 6; 8 1 2 5], sinh viên giải thích kết quả của
các lệnh sau:
a. A'
b. A(:,[1 4])
c. A([2 3],[3 1])
d. reshape(A,2,6)
e. A(:)
f. [A;A(end,:)]
g. A(1:3,:)
h. [A ; A(1:2,:)]
i. sum(A)
j. sum(A')
k. [ [ A ; sum(A) ] [ sum(A,2) ; sum(A(:)) ] ]
Bài 1.3. Giải hệ phương trình sau:
2x1 + 4x2 + 6x3 – 2x4 = 0
x1 + 2x2 + x3 + 2x4 = 1
2x2 + 4x3 + 2x4 = 2
3x1 - x2 + 10x4 = 10.
Gợi ý: A.X = B X = inv(A).B
BÀI 1: PHẦN MỀM MATLAB
15
Bài 1.4. Chứng tỏ rằng (A+B)C=AC+BC, với:
1.4.2 Vector
Vector thực chất là ma trận có kích thước n x 1 hay 1 x n, nên ta có thể tạo ra vector
như cách tạo ra ma trận. Ngoài ra, có thể dùng một số cách sau:
>>x=0:0.1:1
>>y=linspace(1, 10, 20) % vector 20 phan tu cach deu nhau tu 1
den 10
>>z=rand(10,1) ; tạo 10 số ngẫu nhiên phân bố đều
Bài 1.5. Cho vector x = [3 1 5 7 9 2 6], giải thích kết quả của các lệnh sau:
a. x(3)
b. x(1:7)
c. x(1:end)
d. x(1:end-1)
e. x(6:-2:1)
f. x([1 6 2 1 1])
g. sum(x)
Bài 1.6. Tạo một vector x có 100 phần tử, sao cho: x(n) = (-1)n+1/(2n+1) với n = 0
– 99.
1.4.3 Đa thức
Các đa thức trong MATLAB được mô tả bằng các vector hàng với các phần tử của
vector chính là các hệ số của đa thức, xếp theo thứ tự số mũ giảm dần. Ví dụ, đa thức m
= s4-s3+4s2-5s-1 được biểu diễn là:
>>m=[1 -1 4 -5 -1]
Để xác định giá trị của đa thức, ta dùng hàm polyval. Ví dụ, xác định giá trị của đa
thức tại điểm s=2:
16
BÀI 1: PHẦN MỀM MATLAB
>>polyval(m,2)
Để xác định nghiệm của đa thức, ta dùng hàm roots. Ví dụ:
>>roots(m)
Bài 1.7. Cho phương trình ax2+bx+c=0, giải phương trình dùng hàm roots.
>>m=[a b c];
>>x=roots(m)
Thay đổi các giá trị khác nhau của a, b và c tương ứng trong 2 cách giải trên.
Bài 1.8. Giải phương trình x3- 2x2+4x+5=0. Kiểm chứng kết quả thu được bằng hàm
polyval. Sinh viên có nhận xét gì về kết quả kiểm chứng.
Bài 1.9. Lặp lại bài 1.8 cho phương trình x7-2=0.
1.5 ĐỒ HOẠ
1.5.1 Các lệnh vẽ
MATLAB cung cấp một loạt hàm để vẽ biểu diễn các vector cũng như giải thích và in
các đường cong này.
plot: đồ họa 2-D với số liệu 2 trục vô hướng và tuyến tính
plot3: đồ họa 3-D với số liệu 2 trục vô hướng và tuyến tính
loglog: đồ hoạ với các trục x, y ở dạng logarit
semilogx: đồ hoạ với trục x logarit và trục y tuyến tính
semilogy: đồ hoạ với trục y logarit và trục x tuyến tính
1.5.2 Tạo hình vẽ
Hàm plot có các dạng khác nhau phụ thuộc vào các đối số đưa vào. Ví dụ nếu y là
một vector thì plot(y) tạo ra một đường quan hệ giữa các giá trị của y và chỉ số của nó.
Nếu ta có 2 vector x và y thì plot(x,y) tạo ra đồ thị quan hệ giữa x và y.
>>t = [0:pi/100:2*pi];
>>y = sin(t);
>>plot(t,y); % Vẽ hình sin từ 0->2
>>grid on
1.5.3 Kiểu đường vẽ
Ta có thể dùng các kiểu đường vẽ khác nhau khi vẽ hình.
>>t = [0:pi/100:2*pi];
BÀI 1: PHẦN MỀM MATLAB
17
>>y = sin(t);
>>plot(t,y,’.‘) % vẽ bằng đường chấm chấm
Để xác định màu và kích thước đường vẽ, ta dùng các tham số sau:
LineWidth
: độ rộng đường thẳng, tính bằng số điểm
MarkerEdgeColor
: màu của các cạnh của khối đánh dấu
MarkerFaceColor
: màu của khối đánh dấu
MarkerSize
: kích thước của khối đánh dấu
Màu được xác định bằng các tham số:
r: red
m magenta
b: blue
k: black
g: green
y: yellow
c: cyan
w: white
Các dạng đường thẳng xác định bằng:
- đường liền
-- đường đứt nét
: đường chấm chấm
-. đường chấm gạch
Các dạng điểm đánh dấu xác định bằng:
+ dấu cộng
. điểm
o vòng tròn
s hình vuông
d hạt kim cương
x chữ thập
* dấu sao
v tam giác hướng xuống
^ tam giác hướng lên
< tam giác sang trái
> tam giác sang phải
h lục giác
p ngũ giác
>>x = -pi : pi/10 : pi;
>>y = tan(sin(x)) - sin(tan(x));
>>plot(x,y,ʹ‐‐rs’,ʹLineWidthʹ,2,ʹMarkerEdgeColorʹ,ʹkʹ,...
ʹMarkerFaceColorʹ,ʹgʹ,ʹMarkerSizeʹ,10)
Để vẽ hai hàm trên cùng một đồ thị, ta dùng lệnh:
>>hold on
1.5.4 Vẽ với hai trục y
Hàm plotyy cho phép tạo một đồ thị có hai trục y. Ta cũng có thể dùng plotyy để cho
giá trị trên hai trục y có kiểu khác nhau nhằm tiện so sánh.
>>t = 0:900;
>>A = 1000;