本書分三個部分介紹了MATLAB 原理及其應用,共16 章。部分為MATLAB 技術(shù)基礎簡介,主要介紹MATLAB 環(huán)境、基本運算、內(nèi)置函數(shù)、矩陣運算和繪圖功能。第二部分為MATLAB 編程方法介紹,主要包括自定義函數(shù)、接口函數(shù)、邏輯函數(shù)和程序控制結(jié)構(gòu)等內(nèi)容。第三部分為高級MATLAB應用,重點介紹矩陣代數(shù)求解、數(shù)據(jù)變量類型、符號運算、數(shù)值分析、數(shù)據(jù)可視化、圖形用戶接口功能和Simulink 仿真等內(nèi)容。第三部分的各章內(nèi)容相互獨立,讀者可根據(jù)自身情況進行選擇。每一章結(jié)束均附有習題,供練習鞏固之用。書中提供的大量實例來自于非;A的學科領(lǐng)域,內(nèi)容豐富,可以邊閱讀邊錄入示例程序進行調(diào)試運行,具有很強的實用性。
霍莉·摩爾,美國鹽湖城社區(qū)學院工程系教授,畢業(yè)于猶他大學,連續(xù)多年教授MALTAB計算課程與其他計算機語言課程,具有豐富的教學經(jīng)驗。
霍莉·摩爾,美國鹽湖城社區(qū)學院工程系教授,畢業(yè)于猶他大學,連續(xù)多年教授MALTAB計算課程與其他計算機語言課程,具有豐富的教學經(jīng)驗。
目 錄
第1章 MATLAB簡介1
1.1 MATLAB概述1
1.2 學生版MATLAB2
1.3 MATLAB在工業(yè)中的應用2
1.3.1 電氣工程3
1.3.2 生物醫(yī)學工程3
1.3.3 流體動力學4
1.4 解決工程和科學中的問題4
第2章 MATLAB環(huán)境7
2.1 啟動7
2.2 MATLAB窗口9
2.2.1 命令窗口9
2.2.2 命令歷史9
2.2.3 工作區(qū)窗口10
2.2.4 當前文件夾窗口12
2.2.5 文檔窗口13
2.2.6 圖形窗口14
2.2.7 編輯窗口14
2.3 用MATLAB解決問題14
2.3.1 使用變量15
2.3.2 MATLAB中的矩陣17
2.3.3 數(shù)值顯示32
2.4 保存工作成果36
2.4.1 日志36
2.4.2 保存變量37
2.4.3 腳本39
2.4.4 分節(jié)模式44
小結(jié)45
MATLAB小結(jié)46
習題47
第3章 MATLAB內(nèi)置函數(shù)54
引言54
3.1 內(nèi)置函數(shù)的使用54
3.2 幫助功能的使用56
3.3 初等數(shù)學函數(shù)58
3.3.1 常見的計算58
3.3.2 舍入函數(shù)62
3.3.3 離散數(shù)學63
3.4 三角函數(shù)65
3.5 數(shù)據(jù)分析函數(shù)69
3.5.1 值和小值69
3.5.2 均值和中值71
3.5.3 和與積72
3.5.4 數(shù)值的排序73
3.5.5 求矩陣的規(guī)格75
3.5.6 方差和標準差81
3.6 隨機數(shù)85
3.6.1 均勻隨機數(shù)86
3.6.2 高斯隨機數(shù)86
3.7 復數(shù)89
3.8 計算的局限性93
3.9 特殊值和其他函數(shù)94
小結(jié)95
MATLAB小結(jié)96
習題98
第4章 MATLAB矩陣運算104
4.1 矩陣運算104
4.1.1 定義矩陣104
4.1.2 冒號運算符的使用106
4.2 利用meshgrid求解雙變量
問題110
4.3 特殊矩陣117
4.3.1 全零矩陣118
4.3.2 全1矩陣118
4.3.3 對角矩陣119
4.3.4 魔方矩陣120
小結(jié)122
MATLAB小結(jié)122
習題123
第5章 繪圖130
引言130
5.1 二維圖130
5.1.1 基本繪圖130
5.1.2 線條、顏色和標記樣式137
5.1.3 坐標軸的縮放和圖形標注139
5.2 子圖146
5.3 其他類型的二維圖147
5.3.1 極坐標圖147
5.3.2 對數(shù)圖149
5.3.3 條形圖和餅圖155
5.3.4 直方圖156
5.3.5 雙y軸圖159
5.3.6 畫函數(shù)的波形162
5.4 三維圖163
5.4.1 三維線圖163
5.4.2 曲面圖164
5.5 用菜單欄工具編輯圖形169
5.6 由工作區(qū)窗口創(chuàng)建圖形171
5.7 保存圖形171
小結(jié)172
MATLAB小結(jié)172
習題174
第6章 自定義函數(shù)183
引言183
6.1 創(chuàng)建函數(shù)文件183
6.1.1 語法183
6.1.2 注釋189
6.1.3 多輸入多輸出函數(shù)189
6.1.4 無輸入?yún)?shù)或輸出參數(shù)的
函數(shù)194
6.1.5 確定輸入?yún)?shù)/輸出參數(shù)的
數(shù)量195
6.1.6 局部變量197
6.1.7 全局變量198
6.1.8 查看函數(shù)文件代碼198
6.2 創(chuàng)建自己的函數(shù)工具箱199
6.3 匿名函數(shù)和函數(shù)句柄201
6.4 復合函數(shù)203
6.5 子函數(shù)203
6.5.1 在其他函數(shù)中使用子
函數(shù)204
6.5.2 MATLAB程序中的子
函數(shù)208
小結(jié)209
MATLAB小結(jié)210
習題210
第7章 輸入/輸出控制216
引言216
7.1 自定義輸入216
7.2 輸出選項220
7.2.1 顯示函數(shù)220
7.2.2 格式化輸出fprintf
函數(shù)222
7.2.3 格式化輸出sprintf
函數(shù)227
7.2.4 table函數(shù)229
7.3 圖形輸入230
7.4 分節(jié)符的更多應用231
7.4.1 發(fā)布231
7.4.2 實時腳本233
7.5 從文件中讀寫數(shù)據(jù)234
7.5.1 導入數(shù)據(jù)234
7.5.2 導出數(shù)據(jù)236
7.6 調(diào)試代碼236
7.6.1 代碼分析器237
7.6.2 調(diào)試工具欄237
小結(jié)240
MATLAB小結(jié)240
習題241
第8章 邏輯函數(shù)和選擇結(jié)構(gòu)246
概述246
8.1 關(guān)系運算與邏輯運算246
8.2 流程圖和偽代碼248
8.3 邏輯函數(shù)250
8.3.1 find命令250
8.3.2 find命令的流程圖和
偽代碼253
8.4 選擇結(jié)構(gòu)257
8.4.1 簡單的if語句257
8.4.2 if/else結(jié)構(gòu)257
8.4.3 elseif結(jié)構(gòu)258
8.4.4 switch/case語句263
8.4.5 menu函數(shù)268
8.5 調(diào)試272
小結(jié)272
MATLAB小結(jié)273
習題274
第9章 循環(huán)結(jié)構(gòu)285
9.1 for循環(huán)285
9.2 while循環(huán)292
9.3 break和continue300
9.4 中斷循環(huán)301
9.5 嵌套循環(huán)304
9.6 提高循環(huán)效率305
小結(jié)308
習題309
第10章 矩陣代數(shù)314
引言314
10.1 矩陣運算和函數(shù)314
10.1.1 轉(zhuǎn)置314
10.1.2 點積315
10.1.3 矩陣乘法321
10.1.4 矩陣的冪324
10.1.5 逆矩陣325
10.1.6 行列式327
10.1.7 叉積328
10.2 求解線性方程組332
10.2.1 用逆矩陣解方程332
10.2.2 用矩陣左除方法求解
方程335
10.2.3 利用行階梯矩陣的逆運算
函數(shù)求解方程組338
10.3 特殊矩陣345
10.3.1 ones和zeros函數(shù)345
10.3.2 單位矩陣345
10.3.3 其他矩陣347
小結(jié)347
MATLAB小結(jié)349
習題350
第11章 其他類型的數(shù)組357
引言357
11.1 數(shù)據(jù)類型358
11.2 數(shù)值型數(shù)據(jù)359
11.2.1 雙精度浮點數(shù)359
11.2.2 單精度浮點數(shù)359
11.2.3 整數(shù)362
11.2.4 復數(shù)362
11.3 字符和字符串數(shù)據(jù)363
11.3.1 創(chuàng)建字符和字符串數(shù)組363
11.3.2 字符編碼方案364
11.3.3 字符和字符串數(shù)組的
使用366
11.4 符號數(shù)據(jù)371
11.5 邏輯數(shù)據(jù)372
11.6 稀疏數(shù)組372
11.7 分類數(shù)組373
11.8 時間數(shù)組373
11.9 多維數(shù)組377
11.10 元胞數(shù)組379
11.11 結(jié)構(gòu)數(shù)組380
11.12 表格數(shù)組387
小結(jié)388
MATLAB小結(jié)388
習題390
第12章 符號數(shù)學運算397
引言397
12.1 符號代數(shù)398
12.1.1 創(chuàng)建符號變量399
12.1.2 符號表達式和符號方程
的處理401
12.2 求解表達式和方程403
12.2.1 solve函數(shù)403
12.2.2 求解方程組406
12.2.3 替換和符號函數(shù)409
12.3 符號繪圖413
12.3.1 fplot函數(shù)413
12.3.2 其他的符號繪圖函數(shù)416
12.4 微積分運算420
12.4.1 微分420
12.4.2 積分425
12.5 微分方程433
12.5.1 輸入字符串時dsolve
函數(shù)的用法434
12.5.2 輸入符號函數(shù)時dsolve
函數(shù)的用法436
12.6 將符號表達式轉(zhuǎn)換為匿名
函數(shù)437
小結(jié)438
MATLAB小結(jié)439
習題440
第13章 數(shù)值計算方法448
13.1 插值448
13.1.1 線性插值448
13.1.2 三次樣條插值450
13.1.3 外插法455
13.1.4 多維插值455
13.2 曲線擬合457
13.2.1 線性回歸457
13.2.2 過零點線性回歸459
13.2.3 多項式回歸460
13.2.4 polyval函數(shù)462
13.3 交互式擬合工具468
13.3.1 基本擬合工具468
13.3.2 曲線擬合工具箱470
13.4 差分與數(shù)值微分470
13.4.1 diff函數(shù)470
13.4.2 前向、后向和中心
差分法474
13.5 數(shù)值積分479
13.6 求微分方程的數(shù)值解484
13.6.1 函數(shù)句柄輸入485
13.6.2 求解過程中要注意的
問題485
13.6.3 求解高階微分方程487
13.6.4 邊值問題488
13.6.5 偏微分方程490
小結(jié)490
MATLAB小結(jié)492
習題493
第14章 高級繪圖500
引言500
14.1 圖像500
14.1.1 圖像類型502
14.1.2 讀寫圖像文件511
14.2 圖形對象513
14.2.1 曲線句柄514
14.2.2 圖形窗口句柄515
14.2.3 坐標軸句柄516
14.2.4 坐標軸注釋518
14.2.5 屬性編輯器518
14.3 動畫519
14.3.1 重繪和擦除519
14.3.2 電影521
14.4 其他可視化方法525
14.4.1 透明度525
14.4.2 隱藏線526
14.4.3 光源527
14.5 三維體可視化簡介527
14.5.1 標量數(shù)據(jù)的三維體
可視化527
14.5.2 矢量數(shù)據(jù)的三維體
可視化528
小結(jié)530
MATLAB小結(jié)531
習題532
第15章 圖形用戶接口設計534
引言534
15.1 單用戶GUI534
15.1.1 創(chuàng)建布局534
15.1.2 向程序添加代碼539
15.2 多用戶交互GUI
ready_aim_fire542
15.3 改進的ready_aim_fire
程序545
15.4 更好的ready_aim_fire
程序546
15.5 內(nèi)置GUI模板550
15.5.1 GUI with UIcontrols550
15.5.2 GUI with Axes and
Menu552
15.5.3 Modal Question Box552
15.5.4 其他示例552
小結(jié)553
習題553
第16章 Simulink簡介555
引言555
16.1 應用555
16.2 入門555
16.3 Simulink求解微分方程563
小結(jié)568
習題568
附錄A 特殊字符、命令和函數(shù)572
附錄B 坐標軸展縮技術(shù)584
附錄C ready_aim_fire GUI
代碼586
附錄D 北卡羅來納州阿什維爾市天氣
數(shù)據(jù)590