內容簡介
MATLAB語言是目前世界上最為流行的科學計算語言之一。通過本書的學習,讀者不僅能運用MATLAB語言進行科學計算,還能利用Simulink仿真工具完成系統的建模與分析。全書分為12章,內容包括MATLAB入門,MATLAB的數據與數據類型,數組、矩陣及其運算,MATLAB的程式設計,MATLAB的數值計算,MATLAB的檔案操作,MATLAB的繪圖,圖形用戶界面(GUI)的設計與實現,Simulink概述,常用模組庫及數據的導入導出,動態系統的仿真與分析,子系統等。
本書針對通識選修類、電子信息類或計算機科學與技術類的本科生和研究生而編寫,內容豐富,實例典型,實用性強,既可作為MATLAB仿真建模的教材,也可作為廣大科研和工程技術人員的參考書。
圖書目錄
第1章MATLAB入門/1
1.1MATLAB簡介1
1.1.1MATLAB的由來1
1.1.2MATLAB的發展1
1.1.3MATLAB語言的特點2
1.1.4MATLAB的組成6
1.1.5Simulink簡介8
1.2MATLAB的開發環境9
1.2.1開發環境概覽9
1.2.2命令視窗10
1.2.3工作空間13
1.2.4歷史命令14
1.2.5工作14
1.2.6編輯器15
1.2.7設定路徑15
1.3MATLAB的線上幫助17
1.3.1利用命令視窗獲得幫助17
1.3.2利用幫助瀏覽器獲得幫助18
第2章MATLAB的數據與數據類型/21
2.1數據的基本概念21
2.1.1標量與向量21
2.1.2數組與矩陣21
2.1.3實數與複數21
2.1.4常量與變數22
2.1.5變數的命名規則22
2.2數據的類型23
2.2.1使用數據時的注意事項23
2.2.2數值型26
2.2.3字元型30
2.2.4邏輯型35
2.2.5結構體型38
2.2.6元胞型39
2.3數據類型的轉換40
2.3.1數值型數據之間的類型轉換40
2.3.2非負整數的進制轉換41
2.3.3數值型與字元型數據的轉換42
2.3.4元胞型與其他數據類型的轉換42
第3章數組、矩陣及其運算/44
3.1數組的創建44
3.1.1數組的創建44
3.1.2特殊數組的創建45
3.1.3數組的大小47
3.1.4數組的訪問47
3.1.5數組的組合、擴充、拆分與重組48
3.2數組的運算51
3.2.1關係運算51
3.2.2邏輯運算52
3.2.3數組的四則運算53
3.2.4數組的集合運算54
3.3矩陣的運算55
3.3.1加減運算55
5.5.1隨機變數的分布與數字特徵130
5.5.2參數估計133
5.5.3假設檢驗134
5.5.4方差分析136
5.6數值積分138
5.6.1一元函式的數值積分138
5.6.2二元函式的數值積分139
5.7數值微分140
5.8方程的解141
5.8.1線性方程組的解141
5.8.2非線性方程的解143
5.8.3非線性方程組的解144
5.8.4無約束最最佳化問題145
5.8.5有約束最最佳化問題147
第6章MATLAB的檔案操作/148
6.1對Excel數據表和Lotus 123數據表的操作148
6.1.1對Excel數據表的操作148
6.1.2對Lotus 123數據表的操作152
6.2對圖像檔案的操作153
6.2.1檢查圖像檔案的相關信息154
6.2.2讀取圖像檔案154
6.2.3保存圖像檔案155
6.3對音頻和視頻檔案的操作156
6.3.1檢查音頻和視頻檔案的相關信息157
6.3.2讀取音頻和視頻檔案158
6.3.3保存音頻和視頻檔案159
6.4對ASCII檔案的操作160
6.4.1讀取ASCII檔案161
6.4.2寫入ASCII檔案165
6.5對MAT檔案的操作166
6.5.1讀取MAT檔案166
6.5.2寫入MAT檔案167
6.6用低端的I/O函式操作檔案167
6.6.1打開和關閉檔案168
6.6.2逐行讀取文本檔案169
6.6.3讀取二進制檔案170
6.6.4寫入二進制檔案171
6.6.5控制檔案句柄171
第7章MATLAB的繪圖/173
7.1基本二維繪圖173
7.2多圖繪製與圖形修飾177
7.2.1多圖繪製177
7.2.2圖形屬性的設定181
7.2.3圖形的輔助說明183
7.2.4設定坐標軸格線與坐標框187
7.3特殊二維繪圖命令189
7.3.1繪製區域圖190
7.3.2繪製條形圖192
7.3.3繪製羅盤圖193
7.3.4繪製彗星圖194
7.3.5繪製等高線圖194
7.3.6繪製誤差棒圖195
7.3.7繪製速度向量圖和向量場圖196
7.3.8繪製直方圖和餅圖197
7.3.9繪製填充圖和偽彩色圖198
7.3.10繪製火柴桿圖和階梯圖199
7.3.11繪製極坐標圖和對數坐標圖200
7.3.12ezplot和fplot繪圖201
7.4三維繪圖命令204
7.4.1派生的三維繪圖命令204
7.4.2mesh三維格線繪圖205
7.4.3surf三維曲面繪圖207
7.4.4標準三維曲面命令209
7.5三維繪圖的修飾210
7.5.1改變視角210
7.5.2設定光源213
7.5.3設定色圖214
第8章圖形用戶界面的設計與實現/217
8.1圖形對象基礎218
8.1.1圖形對象218
8.1.2圖形對象句柄219
8.1.3圖形對象屬性的獲取與設定220
8.2GUI基礎224
8.2.1啟動GUI224
8.2.2Layout編輯器224
8.2.3保存並運行GUI226
8.3設計GUI: 曲線繪製及屬性修改系統226
8.3.1任務11: 使用選單編輯器進行GUI設計226
8.3.2任務12: 為設計好的GUI編寫回調函式229
8.3.3任務13: 使用文本框、編輯框和按鈕實現用戶輸入參數234
8.3.4任務14: 使用Slider實現用戶輸入參數237
8.3.5任務15: 在不同的坐標軸上繪圖237
8.3.6任務16: 利用Check Box控制項實現加格線和去框線功能240
8.4設計GUI: 學生成績查詢系統242
8.4.1MATLAB預定義的對話框242
8.4.2任務21: 使用uigetfile獲取學生成績表的路徑和檔案名稱242
8.4.3任務22: 使用Listbox顯示學生姓名244
8.4.4任務23: 使用Popup Menu顯示課程名單245
8.4.5任務24: 從列表框中選擇要查看的學生姓名246
8.4.6任務25: 在表控制項中顯示查詢結果248
8.4.7任務26: 使用圖示設計器設計圖示250
8.4.8任務27: 使用工具列實現保存檔案功能251
8.5設計GUI: 使用ActiveX控制項252
第9章Simulink概述/255
9.1啟動Simulink255
9.2模型視窗介紹256
9.3建立模型257
9.3.1選擇模組257
9.3.2模組的操作257
9.3.3信號線的操作261
9.3.4對模型進行注釋263
9.3.5模型的縮放263
9.4運行模型264
9.5查看仿真結果264
9.5.1示波器參數的設定264
9.5.2信號的組合265
9.6向量和矩陣268
9.7保存和打開已有模型269
9.8處理大的模型269
9.9常用的仿真參數配置270
9.9.1Solver求解器271
9.9.2Solver選項卡的參數設定272
9.9.3Data Import/Export選項卡的參數設定275
9.9.4Optimization選項卡的參數設定276
9.9.5Diagnostics選項卡的參數設定277
第10章常用模組庫及數據的導入導出/279
10.1Simulink基本庫簡介279
10.2Sources信源庫與外部數據的導入280
10.2.1Sources信源庫介紹280
10.2.2外部數據的導入282
10.2.3從工作區導入模組參數286
10.3Sinks信宿庫與仿真數據的導出288
10.3.1Sinks信宿庫介紹288
10.3.2Floating Scope懸浮示波器289
10.3.3仿真數據的導出291
10.4UserDefined Functions庫293
第11章動態系統的仿真與分析/296
11.1連續系統296
11.1.1連續模組庫介紹296
11.1.2Integrator積分器297
11.1.3採用積分器進行連續系統的仿真300
11.1.4採用傳遞函式進行連續系統的仿真302
11.1.5採用零極點模組進行連續系統的仿真304
11.1.6採用狀態方程進行連續系統的仿真305
11.1.74種連續系統仿真方法的比較306
11.2離散系統307
11.2.1離散模組庫介紹307
11.2.2Unit Delay單位延遲模組308
11.2.3採用Unit Delay進行離散系統的仿真309
11.2.4採用傳遞函式進行離散系統的仿真310
11.2.5採用狀態空間進行離散系統的仿真311
11.2.6零階保持器311
11.2.7多速率的離散系統312
11.3命令行仿真313
11.3.1使用sim命令對系統進行仿真313
11.3.2獲取和設定仿真參數316
11.3.3確定模型的狀態318
11.3.4尋找模型的平衡點319
11.3.5模型的線性化322
第12章子系統/325
12.1子系統的建立與基本操作325
12.1.1建立子系統325
12.1.2子系統的基本操作328
12.2封裝子系統328
12.2.1封裝子系統328
12.2.2使用封裝子系統337
12.2.3修改封裝子系統338
12.3模組庫技術338
12.3.1建立模組庫338
12.3.2庫模組與引用塊的關聯339
12.3.3在庫瀏覽器中加入自建模組庫342
12.4Simulink自帶的子系統模組庫344
12.4.1Enable使能子系統344
12.4.2Trigger觸發子系統345
12.4.3觸發使能子系統346
12.4.4Switch Case子系統和Switch Case Action Subsystem子系統349
12.4.5If系統和If Action Subsystem子系統352