1.3.1.2- Thoát khỏi MATLAB: Trong Windows, có rất nhiều cách để thoát khỏi một chơng trìnhứng dụng, để thoát khởi Matlab ta có thể sử dụng một trong những cách sau: Từ cửa sổ lệnh Matlab
Trang 1Phần 1 - Cơ sở Matlab Chơng 1 – Khái niệm chung
1.1- Giới thiệu
MATLAB là 1 phần mềm ứng dụng chạy trong môi trờng Windows
do hãng MathWorks sản xuất và cung cấp Có thể coi Matlab là ngônngữ của kỹ thuật Nó tích hợp các công cụ rất mạnh phục vụ tính toán,lập trình, thiết kế, mô phỏng, trong một môi trờng rất dễ sử dụngtrong đó các bài toán và các lời giải đợc biểu diễn theo các ký hiệu
toán học quen thuộc
Các ứng dụng điển hình là: - Toán học và tính toán
- Phát triển thuật toán
- Tạo mô hình, mô phỏng và tạo giao thức
- Khảo sát, phân tích số liệu
- Đồ hoạ khoa học kỹ thuật
- Phát triển ứng dụng, gồm cả xây dựng giao diện ngời dùng đồ
hoạ GUI
Matlab là một hệ thống tơng tác mà phần tử dữ liệu cơ bản làmột mảng (array) không cần khai báo kích thớc Điều này cho phépbạn giải nhiều bài toán tính toán kỹ thuật đặc biệt là các bài toán liên
quan đến ma trận và véc tơ
Matlab là viết tắt của hai từ tiếng Anh Matrix Laboratory (Phòngthí nghiệm ma trận) Ban đầu Matlab đợc viết chỉ để phục vụ choviệc tính toán ma trận Trải qua thời gian dài, nó đã đợc phát triểnthành một công cụ hữu ích, một ngôn ngữ của kỹ thuật Trong môi tr-ờng đại học, nó là một công cụ chuẩn cho các khoá học mở đầu vàcao cấp về toán học, khoa học và kỹ thuật Trong công nghiệp, nó làcông cụ đợc lựa chọn cho việc phân tích, phát triển và nghiên cứu
hiệu suất cao
Matlab cung cấp một họ các giải pháp theo hớng chuyên dụng hoá
đợc gọi là các Toolbox (hộp công cụ) Các toolbox cho phép ngời sử
Trang 2dụng học và áp dụng các kỹ thuật chuyên dụng cho một lĩnh vực nào
đó Toolbox là một tập hợp toàn diện các hàm của Matlab (M-file) chophép mở rộng môi trờng Matlab để giải các lớp bài toán cụ thể Cáclĩnh vực trong đó có sẵn các toolbox bao gồm: Xử lý tín hiệu, hệ
thống điều khiển, logic mờ, mô phỏng,
Hệ thống Matlab gồm có 5 phần chính:
- Ngôn ngữ Matlab: là một ngôn ngữ ma trận/ mảng cấp cao vớicác câu lệnh, hàm, cấu trúc dữ liệu, vào/ ra, các tính năng lập trìnhhớng đối tợng Nó cho phép lập trình các ứng dụng từ nhỏ đến các
ứng dụng của Matlab
- Xử lý đồ hoạ: Đây là hệ thống đồ hoạ của Matlab Nó bao gồmcác lệnh cao cấp cho trực quan hoá dữ liệu hai chiều và ba chiều, xử
lý ảnh, ảnh động, Nó cũng cung cấp các lệnh cấp thấp cho phép bạntuỳ biến giao diện đồ hoạ cũng nh xây dựng một giao diện đồ hoạ
hoàn chỉnh cho ứng dụng Matlab của mình
- Th viện toán học Matlab: Đây là tập hợp khổng lồ các thuật toántính toán từ các hàm cơ bản nh cộng, sin, cos, số học phức, tới cáchàm phức tạp hơn nh nghịch đảo ma trận, tìm trị riêng của ma trận,
phép biến đổi Fourier nhanh
- Giao diện chơng trình ứng dụng Matlab API (ApplicationProgram Interface): Đây là một th viện cho phép bạn viết các chơng
trình C và Fortran tơng thích với Matlab
Simulink, một chơng trình đi kèm với Matlab, là một hệ thống
t-ơng tác với việc mô phỏng các hệ thống động học phi tuyến Nó làmột chơng trình đồ hoạ sử dụng chuột để thao tác cho phép môhình hoá một hệ thống bằng cách vẽ một sơ đồ khối trên màn hình
Trang 3Nó có thể làm việc với các hệ thống tuyến tính, phi tuyến, hệ thốngliên tục theo thời gian, hệ gián đoạn theo thời gian, hệ đa biến,
1.2- Cài đặt chơng trình:
1.2.1- Khởi động windows.
Matlab là một phần mềm chạy trong môi trờng Windows nên quitrình cài đặt Matlab cũng tơng tự nh việc cài đặt các chơng trìnhphần mềm khác trong Windows, chỉ cần làm theo các hớng dẫn của
chơng trình cài đặt
1.2.2- Tiến hành cài đặt
- Đa đĩa CD vào ổ đĩa (nếu cài từ đĩa CD-ROM)
Do chơng trình đợc cấu hình theo chế độ Autorun (tự chạy) nênkhi đa đĩa CD vào ổ đĩa thì trình Setup tự động đợc kích hoạt.Trờng hợp chế độ Autorun không đợc kích hoạt (do tập tin Autorun bịlỗi), dùng Hoặc ta có thể kích chuột vào nút Start trên thanh tác vụ(Task bar) của windows, chọn lệnh run, gõ vào đờng dẫn của file, nhấnEnter hoặc kích vào nút lệnh Run Sau đó làm theo các hớng dẫn của
trình cài đặt của Windows
- Trờng hợp cài đặt Matlab từ đĩa cứng:
Trờng hợp này yêu cầu phải có sẵn bộ cài đặt trong đĩa cứng Khi
đó, ta sử dụng Windows Explorer hây My Computer để duyệt ổ
Hình 1 Cài đặt Matlab trong Windows và màn hình Welcome
Trang 4cứng, tìm đến th mục (folder) cài đặt rồi kích đúp chuột vào file(tập tin) Setup.exe Sau đó làm theo các hớng dẫn của trình cài đặt
của Windows
Sau khi file setup.exe đợc kích hoạt, cửa sổ Welcom to MATLAB
Setup hiện lên trong giây lát Kích vào nút lệnh Next để chuyển
sang cửa sổ cài đặt kế tiếp
1.2.3- Nhập thông tin của ngời dùng và Personal
License Password.
Cửa sổ thứ hai thể hiện các thông tin về bản quyền của chơngtrình Kích Yes để sang cửa sổ cài đặt kế tiếp Trong cửa sổthông tin về khách hàng Customer Information (hình 1.2), nhập họ tênvào khung Name, địa chỉ hoặc tên công ty vào khung Company.Nhập mã khoá (Serial Key) của chơng trình vào khung PersonalLicense Password
Kích chuột vào Next
để tiếp tục quá
Trang 5Trong cửa sổ Select Matlab Components (hình 1.3), bỏ đánh dấunhững thành phần không cần thiết trong chơng trình để tiết kiệmdung lợng đĩa cứng Muốn kiểm tra dung lợng của chơng trình, kích
vào Disk Space để quan sát
Muốn thay đổi th mục cài đặt Matlab, kích chuột vào nútBrowse và tạo đờng dẫn tới địa chỉ cần đặt th mục Matlab Th mục
động Help Desk (phần trợ giúp) Bỏ đánh dấu ở ô “Yes, launch Matlab”nếu cha muốn khởi động Matlab ngay Kích Finish để kết thúc qúa
trình cài đặt
Sau khi kết thúc cài đặt cửa sổ kế tiếp là Internet Explorer (nếukhông bỏ đánh dấu ở ô “Yes, launch the Help Desk to viewthe Release Note”) Kích Close để trở về cửa sổ nền Desktop củawindows, biểu tợng của Matlab sẽ đợc tự động đa ra Desktop của
windows
Hình 1.4 Quá trình copy file của ch ơng
trình vào th mục cài đặt
Trang 61.3- Môi trờng làm việc của Matlab
Matlab vừa là một ngôn ngữ vừa là một môi trờng làm việc Làmột môi trờnglàm việc, Matlab bao gồm các phơng tiện để quản lýcác biến trong không gian làm việc (Workspace) của bạn và để xuấtnhập dữ liệu Matlab cũng bao gồm các công cụ để phát triển và
quản lý M-file, các ứng dụng của Matlab
1.3.1- Khởi động và thoát khỏi Matlab
1.3.1.1- Khởi động MATLAB:
Cũng nh các chơng trình ứng dụng khác chạy trên nền Windows,
có rất nhiều cách để khởi động Matlab
Kích đúp chuột vào biểu tợng Matlab5.3 trên màn hình Desktop
của Windows:
hoặc kích chuột theo trình tự nh sau:
Start/ Programs/ Matlab/ Matlab 5.3
Sau khi khởi động xong cửa sổ Matlab Command Window hiện ra
nh hình 1.4
Cũng nh các chơng trình chạy trong môi trờng Windows khác Matlab
cũng có những thành phần giao diện của chơng trình
hình phần mềm,
Trang 7Hình 1.4 Cửa sổ Command Windows của Matlab
• Dòng thứ ba là thanh công cụ (Tool bar – thanh công cụ) chứabiểu tợng đờng tắt (Shortcut) của các lệnh thờng sử dụng, giúpngời sử dụng truy cập nhanh vào các lệnh của Matlab
• Phần chiếm gần chọn màn hình là cửa sổ lệnh, là nơi nhập
các lệnh và hiển thị kết quả cũng nh các thông tin khác
• Cuối cùng là thanh tác vụ hay thanh trạng thái (status bar) hiệnthông tin về tình trạng đang xử lý, thực hiện đối với đối tợng
1.3.1.2- Thoát khỏi MATLAB:
Trong Windows, có rất nhiều cách để thoát khỏi một chơng trìnhứng dụng, để thoát khởi Matlab ta có thể sử dụng một trong những
cách sau:
Từ cửa sổ lệnh Matlab Command Window đánh lệnh quit hoặc
kích biểu tợng close nằm ngay góc phải trên thanh tiêu đề Matlab
Hoặc kích chuột theo đờng dẫn sau:
File / Exit MATLAB
Hoặc nhấn tổ hợp phím : Ctrl + Q.
Trang 81.3.2- Cửa sổ lệnh của Matlab (Matlab Command
Window)
Cửa sổ lệnh là cửa sổ chính trong đó ngời sử dụng giao tiếp vớiMatlab Trình dịch của Matlab hiển thị một dấu nhắc >> để biểuthị rằng nó đã sẵn sàng nhận và thực hiện lệnh của bạn Ví dụ, khi
muốn nhập dòng lệnh gán biến x=5, ta gõ nh sau:
>>x=5 ↵
Sau khi nhấn phím enter (↵), Matlab đáp ứng nh sau:
>>x=5x=
5
1.3.2.1- Hiệu chỉnh, sửa đổi dòng lệnh
Các phím mũi tên, các phím điều khiển trên bàn phím cho phépgọi lại, sửa đổi và tái sử dụng các lệnh đã gõ vào trớc đó Ví dụ, giả
sử ta gõ vào dòng lệnh:
>>a=(1+sqt(5))/2 %sqrt(x) là hàm tính giá trị căn bậc hai của x
Do ta gõ thiếu chữ r trong cú pháp của hàm sqrt nên Matlab báo lỗi
nh sau:
Undefined function or variable ‘sqt’ có nghĩa là hàm hoặc biến
‘sqt’ không đợc định nghĩa Thay vì gõ lại cả dòng lệnh, đơn giản
là ta nhấn phím ↑, câu lệnh bị sai ở trên sẽ đợc hiển thị lại Sử dụngphím ← (hoặc dùng chuột) để di chuyển con trỏ đến vị trí giữa chữ
q và chữ t rồi chèn vào chữ r sau đó nhấn enter, kết quả là:
>>a=(1+sqrt(5))/2 ↵
a=
1.6180
Ta có thể sử dụng phím nhiều lần để tìm các lệnh đã gõ trớc
đó Cũng có thể gọi nhanh lại một câu lệnh đã thực hiện trớc đóbằng cách gõ ký tự đầu của dòng lệnh rồi nhấn ↑ Ví dụ, để gọi lại
chính xác lệnh ở trên nh sau:
>>a ↑
Trang 91.3.2.2- Xoá cửa sổ lệnh
Sử dụng lênh clc để xoá cửa sổ lệnh (xoá màn hình) Lệnh nàykhông xoá nội dung trong không gian làm việc Workspace, mà chỉ xoámàn hình Sau khi sử dụng clc ta có thể sử dụng phím ↑ để gọi lại
lệnh cũ
1.3.2.3- Dừng một chơng trình đang chạy
Về nguyên tắc có thể dừng một chơng trình đang chạy trongMatlab tại bất kỳ thời điểm nào bằng cách nhấn tổ hợp phím Ctrl + C.Tuy nhiên, ta vẫn có thể phải đợi cho đến khi một hàm đang thực thi
bên trong hoặc MEX-file kết thúc hoạt động của nó
1.3.2.4- Định dạng số
Các phép tính trong Matlab đợc thực hiện với độ chính xác rất cao Ta
có thể định dạng cho các số xuất ra màn hình tuỳ theo ý muốn bằngcách sử dụng lệnh format Lệnh này chỉ ảnh hởng đến việc hiển thịcủa các số mà không ảnh hởng đến việc tính toán và lu giữ củaMatlab nghĩa là không ảnh hởng đến độ chính xác của phép tính
Ta lấy ví dụ với số 4/3: tại cửa sổ lệnh gõ vào dòng lệnh >>4/3↵
• format short ( đây là chế độ mặc định ):
Trang 10• format loose sẽ thêm vào các dòng trắng.
1.3.2.5- Ngăn không cho hiển thị kết quả tính toán ra
véc tơ hoặc Matlab trận có số phần từ rất lớn
nhất thiết phải có) nhng chúng giúp ta dễ đọc hơn
1.3.3- Không gian làm việc của Matlab (Matlab
Workspace)
Không gian làm việc của Matlab chứa một tập các biến (các mảng
đợc đặt tên) mà bạn có thể thao tác từ dòng lệnh của Matlab Có thể
Trang 11sử dụng lệnh who và whos để xem nội dung của workspace Lệnhwho cho một danh sách tóm tắt các biến còn lệnh whos cho biết cácthông tin cả về kích thớc và kiểu dữ liệu Sau đây là ví dụ về lệnhwhos trên một workspace chứa 8 biến thuộc các kiểu dữ liệu khác
nhau:
whosName Size Bytes Class
Để xoá tất cả các biến đang tồn tại trong Workspace, gõ >>clear ↵
Matlab có các lệnh cho phép ngời sử dụng lu nội dung củaWorkspace ở bất kỳ thời điểm nào trong phiên làm việc và sau đó cóthể nạp dữ liệu trở lại Matlab trong phiên làm việc đó hoặc phiên làmviệc sau đó Lu và nạp dữ liệu cũng có thể xuất nhập các file dữ liệu
kiểu text
1.3.3.1- Lu không gian làm việc (Saving the Workspace)
Để lu Workspace, chọn lệnh Save Workspace as từ menu File hoặc
gõ lệnh trực tiếp từ cửa sổ lệnh Lệnh lu dữ liệu sẽ lu nội dung củaWorkspace thành một file nhị phân có phần mở rộng là mat Ví dụ:
Trang 12chỉ lu các biến x, y, z vào file data.mat.
1.3.3.2- Nạp không gian làm việc (Loading the Workspace)
Lệnh nạp sẽ nạp một MAT-file đã đợc tạo ra trớc đó bằng lệnh save
Ví dụ:
>>load datanạp nội dung file data.mat vào không gian làm việc Nếu filedata.mat chứâ các biến a, b, c thì các biến này sẽ đợc đa trở lạ vàoWorkspace Nếu các biến này đã tồn tại trong Workspace thì chúng sẽ
bị ghi đè
Trong Windows, nạp lại Workspace có thể thực hiện bằng cách chọn
lệnh Load Workspace từ menu File
Trang 13Chơng 2 - Các menu của MATLAB
2.1- Menu File
Kích chuột vào File hoặc nhấn tổ hợp
phím Alt-F, xuất hiện menu xổ chứa các
lệnh liên quan đến việc tạo mới, quản lý,
gán thuộc tính cho đối tợng (các tập tin
-file) đã có sắn, thiết lập cấu hình phần
mềm
2.1.1- New (hình 2.1): Hiện menu
chứa ba lệnh để tạo đối tợng mới Đối
t-ợng ở đây có thể là một script, một cửa
sổ đồ hoạ hay một mô hình mô phỏng
hệ thống
• M-file: Hiện cửa sổ Editor/
Debugger (hình 1.6) Đây là môi
trờng bạn tạo mới cũng nh sửa đổi, gỡ rối các tập tin chơng trình
nh M-file hoặc MEX-file hoặc các đối tợng nào đó để thực hiệnmột nhiện vụ nào đó Để có thể tạo đợc các tập tin này, bạn phải
dùng ngôn ngữ lập trình C hoặc FORTRAN
• Figure (hình 2.2): Đây là môi trờng đồ hoạ để bạn tự vẽ các
đối tợng hoặc để Matlab vẽ các đồ thị theo hàm lệnh bạn nhập
từ khung cửa sổ lệnh của MATLAB hoặc mở đồ thị cũ với lệnh
Open của Matlab.
Hình 2.1 Menu File và menu con của lệnh New
Trang 14• Model (hình 2.4): Gọi trình Simulink (mở cửa sổ th viện khối
Simulink) phục vụ cho việc thiết kế mô hình mô phỏng hệ
• Từ khung thoại, gõ địa chỉ
của file vào ô file name, nhấn
open hoặc kích chọn tên tập
tin cùng kiểu tập tin (file type)
muốn mở và kích Open
2.1.3- Open Selection:
Hình 2.6 Cửa sổ Simulink và cửa sổ th viện Simulink
Hình 2.7 Cửa sổ Open files
Trang 15Có chức năng mở những đối tợng đã chọn riêng và lu thành một tập tin
riêng
2.1.4- Run Script :
Chạy một chơng trình đã lu thành một tập tin
• Trong cửa sổ Matlab Command window kích: File/Run Script.
Trên màn hình xuất hiện khung thoại Run Script (hình 2.9).
• Go địa chỉ và tên tập tin vào trong khung nhập lệnh Run rồi
kích OK Để tìm kiếm các tập tin đã lu trong máy, kích vào nút
để duyệt.
• Từ khung thoại Browse chọn nguồn chứa và tên tập tin cần mở
rồi kích vào Open để về khung thoại Run Script với toàn bộ
đ-ờng dẫn cùng tên tập tin muốn mở Kích OK
Hình 2.9 Khung thoại Run Script và hộp thoại Browse
Hình 2.10 Hộp thoại Load mat
file
Trang 16từ những nguồn chứa khác nhau bằng cách cũng trong khung thoại
Load mat file, kích vào mũi tên của Look in để tìm nguồn chứa,
chọn tập tin muốn du nhập
Ghi chú: Để có thể du nhập các tập tin khác vào MTALAB, điều
bắt buộc là các tập tin đó phải đợc soạn theo hệ mã ASCII.
2.1.6- Save Workspace as :
Lu các nội dung trong cửa sổ lệnh của MATLAB theo Workspace
• Nhập các lệnh trong cửa sổ lệnh của MATLAB nh bình thờng
• Từ menu File, chọn Save Workspace as Màn hình hiện khung
thoại Save Workspace as (hình 2.11)
• Từ khung thoại, đánh tên tập tin muốn lu (nếu cần thiết chọnnguồn chứa với Save in) Kích Save Nên nhớ là tập tin này đợc lu
từ menu File, chọn Save Workspace
Trong cửa sổ Save Workspace sẽ hiện nội dung của tập tin
Workspace đã ghi
2.1.8- Show graphics proprty editor (hình 2.13):
Hiện cửa sổ thay đổi thuộc tính
mặc định của hình ảnh để áp dụng
cho tất cả các hình ảnh sẽ đợc thiết
kế sau này hoặc chỉ riêng theo từng
nhiệm vụ
• Từ cửa sổ lệnh MATLAB kích :
File/Show Graphics Property
Editor Màn hình xuất hiện cửa
sổ Show Graphics Property
Trang 17• Chọn thuộc tính cần thay đổi và kích Close Thí dụ, thay đổi
thuộc tính Echo từ mặc định là on thành of 2.1.9- Show GUI Layout Tool (hình 2.14):
Hiển thị danh mục các công cụ phục vụ cho việc thiết kế giaodiện ngời dùng đồ hoạ GUI (Graphical User Interface) trong cửa sổGuide Control Panel Từ cửa sổ này, bạn có thể thêm các biểu tợngcông cụ tự tạo mới, gán biểu tợng biểu tợng công cụ vào đối tợng đểthực hiện nhanh bằng cách kích chọn biểu tợng trong khung biểu tợngGuide Tool để hiện thông tin và từ đây gán nhãn cũng nh các thuộc
tính khác cho công cụ vừa chọn và kích Apply
2.1.10- Set Path:
Gán tập tin vào th mục bất kỳ trong MATLAB
• Từ menu File chọn Set Path Màn hình hiện cửa sổ Path Browser
Cửa sổ này liệt kê các danh sách các đờng dẫn th mục nằmtrong khung cửa bên trái và danh sách tên tập tin nằm bên phải
Hình 2.14 Cửa sổ Guide Control Panel và Guide Menu Editor
Trang 18• Chọn tên đờng dẫn th mục trong khung cửa sổ Path và chọn têntập tin muốn thay đổi
vị trí chứa trong khung
cửa sổ hoặc đánh trực
tiếp vào khung nhập
lệnh Current Directory
• Từ menu File của cửa sổ
Path Browser, chọn Save
• General: Hiện khung thoại ngay khi kích chọn lệnh Preferences
từ menu File của khung cửa sổ lệnh MATLAB Kích chọn các loại
tham số muốn thay đổi hoặc gán thêm và kích OK
• Command Windows Font: Hiện khung danh mục font cùng
thuộc tính để ngời sử dụng thay đổi font mặc định thành
font quen thuộc
• Copy Options : Hiện khung thông tin để ngời sử dụng tuỳ chọn
định dạng đối tợng muốn sao chép
Hình 2.16 Cửa sổ Preferences, thẻ General
Trang 19Hình 2.19 Menu
Edit
2.1.12- Print Setup :
Hiện khung thoại Print cùng các
chức năng phụ liên quan đến
2.2.1- Undo: Huỷ lệnh hoặc thao tác đã thực
hiện trớc đó Sau khi chọn lệnh Undo để huỷ lệnh,
lệnh sẽ đổi thành Redo để ngời sử dụng khôi phục
những gì đã huỷ trớc đó với lệnh Undo
2.2.2- Cut (Ctrl +X):
Xoá tạm thời đối tợng trong khung cửa sổ lệnh hiện hành và đavào bộ nhớ đệm của chơng trình, sau đó có thể dán đối tợng trở lạivào vị trí đợc chọn Đối tợng đợc cắt có thể là một công thức, một
chuỗi ký tự, hàm lệnh…
• Chọn đối tợng muốn cắt trong khung cửa sổ lệnh MATLAB và ấn
Ctrl + X hoặc chọn Cut từ menu Edit Đối tợng sẽ tạm biến mất tại
Trang 20Xoá toàn bộ nội dung của cửa sổ lệnh MATLAB sau khi chọn với
lệnh Select All Lệnh này cho phép xoá tất cả các thông tin trong bộ
nhớ của chơng trình, tơng tự nh việc ta đóng Matlab lại sau đó khởi
động lại Matlab
2.3- Menu View:
Đánh dấu chọn để hiện hay ẩn thanh công cụ trong khung cửa sổ
lệnh MATLAB COMMAND WINDOW
2.4- Menu Window:
Hiện thông tin về số tập tin đang mở trong khung cửa sổ lệnh
MATLAB
Hình 2.20 Menu View
Trang 21Chơng 3 - Các khái niệm cơ bản 3.1-Một số phím chuyên dụng và lệnh thông dụng
- ↑ Hoặc Ctrl + p : Gọi lại các lệnh đã thực hiện trớc đó.
- ↓ Hoặc Ctrl +n : Gọi lại lệnh vừa thực hiện trớc đó.
- → Hoặc Ctrl + f : chuyển con trỏ sang bên phải 1 ký tự.
- ← hoặc Ctrl + b: chuyển con trỏ sang trái một ký tự.
- Dấu “;” dùng trong […] để kết thúc một hàng của ma trậnhoặc kết thúc một biểu thức hoặc câu lệnh mà không hiển
thị kết quả ra mà hình
- ↵ nhảy xuống dòng dới
- Ctrl + A hoặc Home : chuyển con trỏ về đầu dòng.
- Ctrl + E hoặc End: Chuyển con trỏ đến cuối dòng.
- BackSpace: Xoá ký tự bên trái con trỏ
- Input: lệnh nhập dữ liệu vào từ bàn phím
- Demo: lệnh cho phép xem các chơng trình mẫu
- Help: lệnh cho phép xem phần trợ giúp
- Ctrl – c: Dừng chơng trình khi nó bị rơi vào trạng thái lặp
không kết thúc
- Dòng lệnh dài: Nếu dòng lệnh dài quá thì dùng … ↵ để
chuyển xuống dòng dới
3.2- Biến trong MATLAB
Đặc điểm của biến trong Matlab:
- Không cần khai báo biến và kiểu của biến Tuy nhiên trớc khi gánmột biến thành một biến khác thì cần đảm bảo rằng biến ở bên phải
của phép gán có một giá trị xác định
Trang 22- Bất kỳ một phép toán nào gán một giá trị vào một biến sẽ tạo rabiến đó nếu cần (biến đó cha xác định) hoặc ghi đè lên giá trị hiện
tại nếu nó đã tồn tại trong Workspace
- Tên biến bao gồm một chữ cái sau một số bất kỳ các chữ cái,chữ số và dấu gạch dới Matlab phân biệt chữ in hoa và chữ in thờng,
vì vậy X và x là hai biến phân biệt
3.2.1- Tên biến:
Là một dãy ký tự bao gồm các chữ cái hay các chữ số hoặc một số
ký tự đặc biệt dùng để chỉ tên của biến hoặc tên của hàm Chúngphải đợc bắt đầu bằng chữ cái sau đó có thể là các chữ số hoặcmột vài ký tự đặc biệt Chiều dài tối đa của tên là 31 ký tự
Bình thờng Matlab có sự phân biệt các biến tạo bởi chữ cái thờng vàchữ cái in hoa Các lệnh của Matlab nói chung thờng sử dụng chữ cáithờng Việc phân biệt đó có thể đợc bỏ qua nếu chúng ta thực hiện
- Save: Lu giữ các biến vào một File có tên là Matlab mat
- Load: Tải các biến đã đợc lu giữ trong một File đa vào vùng
làm việc
Trang 23- NaN: Not a number – biểu diễn dạng 0/0, ∞/∞
- eps: Độ chính xác tơng đối của dấu phẩy động Đây là dung
sai Matlab sử dụng trong các tính toán của nó
3.2.4- Biến toàn cục (global variables)
Matlab cho phép sử dụng cùng một biến cho các hàm hoặc giữa cáchàm và chơng trình chính của Matlab, điều này đợc thực hiện thông
qua việc khai báo biến toàn cục:
các lệnh sau tỏ ra rất cần thiết:
• Clear global : Lệnh này cho phép loại bỏ các biến toàn cục
Trang 24• Isglobal(Tên biến) : Lệnh này cho phép kiểm tra xem một biếnnào đó có phải là biến toàn cục hay không Nếu là biến toàn
của A và B:
c(i,j) = a(i,j)b(i,j)
Để phân biệt giữa phép toán ma trận và phép toán mảng ngời ta
đa thêm vào trớc các toán tử một dấu chấm “.”
Phép toán ma trận Phép toán mảngPhép
toán
Toán tử Phép toán Toán tử
Cộng
TrừNhân
*
\/
^
=
CộngTrừ
Nhân
Chia phảiChia tráiLuỹ thừa
Phép gán
+-.*
Trang 253.3.3- C¸c phÐp to¸n quan hÖ vµ phÐp to¸n logic
>>1~=1
ans =0
1 1 1
0 0 0
0 0 0
>>12.2>12ans =1
>>1~=1ans =
Trang 26Cho một quả cầu nặng có khối lợng là
m=2kg đợc buộc vào một sợi dây có
chiều dài l=1.5m (hình 3.5) Một ngời
nắm vào đầu dây và quay tròn quả
cầu theo phơng thẳng đứng.Vận tốc
dài của quả cầu ở vị trí cao nhất là v
=6m/s lực kéo T trên sợi dây thay đổi
theo góc nghiêng của dây với phơng
nằm ngang xác định theo công thức sau:
(2-3sinθ)
2
mg l
mv
T = +Cho biết khi lực kéo T > 145N thì sơi dây bị đứt Hãy xác định
những vị trí dây bị đứt
Chơng trình nh sau:
function y = tinhluc(theta,T)m=2;l=1.5;Tmax=145;v=6;g=9.8;
θ
v
Hình 3.5 Minh hoạ ví dụ 2
Trang 27Từ kết quả trên ta thấy tại các vị trí ứng với các góc 2600,, , 2700, ,
2800, thì biểu thức logic T>Tmax có giá trị là 1, tức tại đó dây có thể
và bằng 0 nếu 1 trong 2 phần tử tơng ứng của 2 ma trận bằng 0
và bằng 1 nếu 1 trong 2 phần tử tơng ứng của 2 ma trận khác 0
>>A=[0 2 7; 0 4 9;1 3 0];
Trang 28- Phép đảo( not): Ký hiệu là ~
Ví Dụ : phép đảo của một ma trận là một ma trận có cùng cỡ vớicác phần tử có giá trị bằng 1 nếu các phần tử của ma trận đầu có giátrị bằng 0 và bằng 0 nếu các phần tử của ma trận đầu có giá trị khác
• Ví dụ 1: Giải phơng trình bậc hai ax2 +bx +c = 0
Ta biết các nghiệm của phơng trình này có dạng:
x =
a
ac b
Dấu = đợc sử dụng để gán giá trị của a, b, c nh sau ( gõ phím
Enter ở cuối mỗi hàng)
>>a = 2
a =2
>>b = 5;
Trang 29>>c = -3; %DÊu “;” ë cuèi dßng th× Matlab sÏ kh«ng hiÓn thÞ l¹i
gi¸ trÞ võa nhËp.
>> x1= (-b + sqrt(b^2- 4*a*c))/(2*a)
x1 =0.5000
>> x2= (-b - sqrt(b^2- 4*a*c))/(2*a)
x2 =-3
• VÝ dô 2: TÝnh gi¸ trÞ cña ®a thøc.
Trang 30real(x) : tìm phần thực của số phức x.
imag(x): tìm phần ảo của số phức x
conj(x): tìm số phức liên hợp của số phức x
abs(x): Tìm giá trị tuyệt đối của số phức x ( độ lớn )
angle(x): góc tạo bởi giữa trục thực và ảo
Ví dụ:
>> a =3.0000 + 4.0000i
a =3.0000 + 4.0000i
3.5- Sử dụng các file lệnh (lập trình M-file)
Những lệnh của Matlab có thể đợc đa vào một file Sau đó bạn sẽ ớng dẫn Matlab làm việc với các lệnh đó Bây giờ, với ví dụ 1, chúng ta
h-sẽ đa toàn bộ các lệnh trên vào một file lấy tên là vidu.m Tên của filephải đợc bắt đầu bằng một ký tự và phần mở rộng là m Các bớc nh
Bớc 3: Ghi lại nội dung tập tin với tên vidu.m rồi thoát khỏi môi
tr-ờng soạn thảo để trở về cửa sổ lệnh (Matlab Command window)
Bớc 4: Tại cửa sổ lệnh ta gõ tên tập tin.
Trang 313.6 - Dòng nhắc gán giá trị các biến:
Để thay đổi các giá trị a,b,c
ta phải soạn thảo lại file
vidu.m rồi chạy lại Ta sửa lại
chơng trình để có dòng
nhắc nhập a,.b,c với các lần
chạy chơng trình khác nhau
Bớc 1: File / New/
M-file, Môi trờng soạn thảo
Editor/Debugger sẽ xuất hiện
4*a*c))/(2*a)
Bớc 3: Lu lại nội dung tập tin với tên
vidu.m
Bớc 4: Quay lại cửa sổ Matlab
Command Windows Tại cửa sổ lệnh ta gõ tên tập tin
>>vidu↵nhap vao a= 3nhap vao b= -4nhap vao c= 1x1 =1
Hình 3.1 Cửa sổ Matlab Editor/Debugger
Hình 3.2 Kết quả khi chạy tập tin
Vidu
Trang 32x2 =0.3333Hai nghiÖm øng víi c¸c gia trÞ a,b,c võa nhËp vµo vµ lµ nghiÖm thùc.
H×nh 3.3 lµ trêng hîp ph¬ng tr×nh cã nghiÖm ¶o
VD vÒ Script file: Gi¶i bµi tËp m¹ch: cho m¹ch ®iÖn nh h×nh vÏ
H·y tÝnh dßng trong m¹ch vµ ®iÖn ¸p trªn tõng phÇn tö
H·y vµo cöa sæ so¹n th¶o vµ trong cöa sæ nµy ta viÕt ch¬ng tr×nh nh
sau:
R=input( 'nhap gia tri cho R = ')C=input( 'nhap gia tri cho C = ')L=input( 'nhap gia tri cho L = ')U=input( 'nhap gia tri cho U = ')
ZL=2*50*pi*L*iZC=1/(2*50*pi*C*i)
Z=R+ZL+ZCi= U/ZUR=i*RUL=i*ZLUC=i*ZCSau khi viÕt xong ch¬ng tr×nh ta kÝch vµo biÓu tîng save trong cöa
sæ so¹n th¶o vµ tªn lµ vd1
Muèn ch¹y ta trë l¹i cöa sæ MATLAB command Window vµ tõ dÊu nh¾c
lÖnh:
>> vd1nhap gia tri cho R = 1000
R = 1000nhap gia tri cho C = 0.1
C = 0.1000
u
Trang 33nhap gia tri cho L = 0.2
L = 0.2000nhap gia tri cho U = 220
cách nhau bằnh dấu phẩy (,)
Ví dụ ta thành lập hàm đổi từ độ sang radian:
function rad = change(do)rad = do*pi/180; % doi do sang radianTrong Matlab các dòng ghi chú sau dấu % không có tác dụng thực thi,chúng đơn giản là những dòng nhắc để ngời đọc chơng trình dễhiểu mà thôi File.m thờng lấy tên là tên của hàm, ta đặt tên file hàmvừa lập là change.m Nếu muốn đổi 450 sang radian, chỉ cần gõ:
>>rad = change(45)
rad =0.7854
Ví du: tạo hàm giải phơng trình bậc hai, tên tập tin đợc đặt là
bachai.m
Trang 34Ta có thể có thể tạo lập một file dữ liệu, sau đó khi cần dùng thì
lấy ra Ví dụ tạo lập một ma trận A:
2.32.33
2.21.22
2.11.11
Sau đó ta lu ma trận vào một file có tên là dulieu1
>>A = [1 1.1 1.2;2 2.1 2.2;3 3.2 3.2]
A =1.0000 1.1000 1.2000
Hình 3.4 Kết quả của lệnh fplot(‘bachai1’, [-6,6])
Trang 352.0000 2.1000 2.20003.0000 3.2000 3.2000
>>save dulieu1
Nh vậy, ta đã có một file dữ liệu (file này nằm trong th mục workcủa Matlab) Khi cần sử dụng file dữ liệu này, ta lấy nh sau:
>>load dlieuSau lệnh load, ta có thể lấy dữ liệu để sử dụng:
>>A
A =1.0000 1.1000 1.20002.0000 2.1000 2.20003.0000 3.2000 3.2000
3.10- Cấu trúc câu lệnh điều kiện:
endy=(a+b)*c/2;
Sau đó ghi (save) vào file có tên là ht.m
Quay lại cửa sổ MatLab command Window, gõ vào dòng lệnh sau:
>> ht(2,4,2)hinh thang nguoc
ans =6
Trang 36end Nhóm lệnh 4;
Nếu biểu thức logic 1 đúng thì
Trang 37logic nào đúng thì nhóm lệnh n đợc thực hiện.
a=input(' vao a=')b=input(' vao b=')c=input(' vao c=')d=b^2-4*a*c
if d < 0disp(' pt vo nghiem')elseif d==0disp (' pt co nghiem kep')
Trang 38x12=-b/2*aelsedisp (' pt co 2 nghiem phan biet')
x1=(-b+sqrt(d))/2*ax2=(-b-sqrt(d))/2*a
end
Cú pháp: if< biểu thức logic> break
endthoát khỏi vòng lặp nếu điều kiện logic đúng Ngợc lại sẽ thực hiện
lệnh tiếp theo trong vòng lặp
Ví dụ 1: Tính tổng của n số tự nhiên liên tiếp, n vào từ bàn phím
(viết trong Script file):
Ví dụ 2: bớc tính của biến có thể khác 1:
Trang 39n=4
a = zeros(n,n) % Tạo ma trận không
for i = 1:nfor j = 1:na(i,j) = 1/(i+j –1);
endenddisp(‘Ket qua =’)disp(a)
hiện nhóm lệnh A Nếu sai vòng lặp kết thúc
* Các lệnh break, return, error:
Lệnh break: kết thúc sự thự thi vòng lặp for hoặc while Lệnh return: thờng đợc sử dụng trong các hàm của Matlab Lệnh return sẽ cho phép quay trở về thực thi những lệnh nằm trong tác
dụng của lệnh return.
Lệnh error (‘dòng nhắn’): kết thúc thực thi lệnh và hiển thị
dòng nhắn trên màn hình
Ví dụ:
Trang 40Chọn một số dơng bất kỳ Nếu số đó là số chẵn thì chia hếtcho hai Nếu số đó là số lẻ thì nhân với 3 rồi cộng 1 Lặp lại quá trình
đó cho đến khi kết quả là 1
Chơng trình:
while 1n=input ('Nhap vao mot so : ');
if n<=0breakendwhile n>1
if rem(n,2)== 0% phan du cua n chia cho 2
n=n/2elsen= 3*n+1endendKhi chạy chơng trình ta sẽ thấy tác dụng của lệnh break (dừng ch-
asinh asinh(x) hàm arcsin hyperbolic