Các điều khiển rẽ nhánh và vòng lặp 1.Các toán tử của Matlab.

Một phần của tài liệu đồ án tốt nghiệp phân tích và thiết kế anten cassegrain cho các trạm vệ tinh mặt đất (Trang 97)

1. Các toán tử của Matlab.

MATLAB có nhiều toán tử bình thường như các phần mềm tính toán khác.

Tuy nhiên có sự khác nhau khi toán trên ma trận và mảng hay vô hướng. Ví dụ như phép nhân hay ma trận dấu( *) và nhân từng phần tử hai ma trận dấu(.*). Cách biểu diễn ma trận: dùng dấu };∼ để ngăn cách các hàng, dấu

}:∼ để chỉ một mảng như 1:10 (các số từ 1 đến 10); 1:2:10(các số 1,3,5,...,9); A(:;1) nghĩa là øcột 1 của tất cả các hàng hay vectơ cột thứ nhất của ma trận A ; dấu ‘là toán tử chuyển vị ma trận ; dấu } %∼ bắt đầu một ghi chú; dấu}=∼ là phép gán; dấu }~∼ chỉ sự phủ định;...…

2. Điều khiển rẽ nhánh IF:Các dạng lệnh IF như sau: Các dạng lệnh IF như sau: a. if < biểu thức logic >, < các lệnh > end; b. if <biểu thức logic >,

<các lệnh nếu biểu thức logic đúng > else<các lệnh nếu biểu thức logic sai> end;

c . if<biểu thức logic1>;

< các lệnh nếu biểu thức logic1 đúng > elseif<biểu thức logic2>;

<các lệnh nếu biểu thức logic2 đúng > …

elseif <biểu thức logic n >

<các lệnh nếu biểu thức logic n đúng > end; 2. Các vòng lặp: - Vòng lặp for: Cấu trúc: for x = <mảng >, các lệnh end;

Các lệnh giữa for và end được thự hiện mỗi lần cho một cột trong array. Ví dụ: » for n =1:10 x(n) = sin(n*pi/10); end » x x = Columns 1 through 7 0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090 Columns 8 through 10 0.5878 0.3090 0.0000

Vòng lặp for không bị dừng bằng cách tăng biến lặp (n) trong vòng lặp:

» for n = 1:10 x(n) = sin(n*pi/10);

n = 10; % thay doi bien lap end

x =

Columns 1 through 7

0.3090 0.5878 0.8090 0.9511 1.0000 0.9511 0.8090

Columns 8 through 10

0.5878 0.3090 0.0000

Ta thấy kết quả không thay đổi dù có thêm dòng lệnh n = 10; vòng lặp for cần tránh dùng khi có thể xử lý bằng ma trận để thời gian thi hành giảm đi. - Vòng lặp while:

Cấu trúc while: while < biểu thức logic > < các lệnh >

end;

Các lệnh giữa while và end được thực hiện lặp lại khi nào experession còn đúng

Lệnh break: dùng để thoát khỏi một vòng lặp (for, while) bất chấp d8iều kiện kết thúc có thỏa hay chưa (thường đi chung với if). Ví dụ:

» ESP =1;

» for num = 1:1000 ESP = ESP/2; if (1+ESP)<=1

ESP = ESP*2break; break; end end ESP = 2.2204e-016 » num num = 53

Một phần của tài liệu đồ án tốt nghiệp phân tích và thiết kế anten cassegrain cho các trạm vệ tinh mặt đất (Trang 97)