目錄
第1章 MATLAB入門 1
1.1 MATLAB簡介 1
1.2 MATLAB開發環境介紹 4
1.2.1 MATLAB命令視窗 5
1.2.2 工作空間視窗 7
1.2.3 當前目錄視窗 8
1.2.4 命令歷史視窗 10
1.2.5 常用選單命令 10
1.3 M檔案 15
1.3.1 M檔案編輯器 16
1.3.2 M腳本檔案 20
1.3.3 M函式檔案 22
第2章 數組、矩陣與線性代數 25
2.1 數組和矩陣基本運算 25
2.1.1 zeros——創建零矩陣 25
2.1.2 eye——創建單位矩陣 27
2.1.3 ones——創建全1矩陣 28
2.1.4 size——數組的維數 30
2.1.5 cat——串接數組 32
2.1.6 rand——創建均勻分布的隨機矩陣 33
2.1.7 randn——創建常態分配的隨機矩陣 35
2.1.8 randperm——生成隨機整數排列 36
2.1.9 linspace——創建線性等分向量 37
2.1.10 logspace——創建對數等分向量 38
2.1.11 nnz——計算非零元素的個數 40
2.1.12 nonzeros——找出矩陣中的非零元素 41
2.1.13 nzmax——計算矩陣非零元素所占空間 42
2.1.14 blkdiag——創建以輸入元素為對角線元素的矩陣 43
2.1.15 compan——創建友矩陣 44
2.1.16 hankel——創建Hankel矩陣 45
2.1.17 hilb——創建Hilbert(希爾伯特)矩陣 47
2.1.18 invhilb——創建逆Hilbert矩陣 48
2.1.19 pascal——創建Pascal矩陣 50
2.1.20 toeplitz——創建托普利茲矩陣 51
2.1.21 sparse——生成稀疏矩陣 52
2.1.22 full——將稀疏矩陣轉化為滿矩陣 54
2.1.23 spdiags——提取對角線或生成帶狀稀疏矩陣 54
2.1.24 speye——單位稀疏矩陣 57
2.1.25 sprand——生成均勻分布的隨機稀疏矩陣 58
2.1.26 sprandn——生成常態分配的隨機稀疏矩陣 58
2.1.27 sprandsym——生成對稱的隨機稀疏矩陣 59
2.1.28 wilkinson——創建Wilkinson特徵值測試陣 60
2.1.29 dot——計算向量的點積 61
2.1.30 cross——計算向量叉乘 62
2.1.31 conv——矩陣的卷積和多項式乘法 63
2.1.32 deconv——反卷積和多項式除法運算 64
2.1.33 kron——張量積 65
2.1.34 intersect——計算兩個集合的交集 66
2.1.35 ismember——檢測集合中的元素 68
2.1.36 setdiff——計算集合的差 69
2.1.37 setxor——計算兩個集合的異或 70
2.1.38 union——計算兩個集合的並集 71
2.1.39 unique——取集合的單值元素 72
2.1.40 expm——求矩陣的指數 73
2.1.41 logm——求矩陣的對數 74
2.1.42 funm——通用矩陣函式 75
2.2 線性代數 76
2.2.1 chol——Cholesky分解 76
2.2.2 lu——LU分解 81
2.2.3 qr——QR分解 85
2.2.4 qrdelete——對矩陣刪除行/列後QR分解 86
2.2.5 qrinsert——對矩陣添加行/列後QR分解 87
2.2.6 schur——Schur分解 88
2.2.7 rsf2csf——實Schur向復Schur轉化 90
2.2.8 eig——計算特徵值、特徵向量 92
2.2.9 svd——奇異值分解 94
2.2.10 qz——廣義特徵值的QZ分解 96
2.2.11 hess——海森伯格形式的分解 98
2.2.12 null——求矩陣的零空間 100
2.2.13 symmlq——線性方程組的LQ解法 101
2.2.14 bicg——雙共軛梯度法解方程組 103
2.2.15 cgs——復共軛梯度平方法解方程組 106
2.2.16 lsqr——共軛梯度的LSQR方法 107
2.2.17 gmres——廣義最小殘差法解方程組 108
2.2.18 minres——最小殘差法解方程組 110
2.2.19 pcg——預處理共軛梯度法解方程組 112
2.2.20 qmr——準最小殘差法解方程組 113
2.2.21 cdf2rdf——復對角矩陣轉化為實對角矩陣 114
2.2.22 orth——將矩陣正交規範化 115
2.2.23 rank——求矩陣的秩 116
2.2.24 spfun——對稀疏矩陣非零元素執行運算 117
2.2.25 spy——畫出稀疏矩陣非零元素的分布 118
2.2.26 colamd——按列近似最低度排序 120
2.2.27 colperm——按非零元素個數排列的向量 121
2.2.28 dmperm——Dulmage-Mendelsohn分解 121
2.2.29 condest——1-範數的條件數估計 122
2.2.30 normest——2-範數的估計 123
第3章 基本數學計算函式 124
3.1 sin與sinh——計算正弦和雙曲正弦函式值 124
3.2 asin與asinh——計算反正弦函式和反雙曲正弦函式值 126
3.3 cos與cosh——計算餘弦和雙曲餘弦函式值 128
3.4 acos與acosh——計算反餘弦和反雙曲餘弦函式值 129
3.5 tan與tanh——計算正切和雙曲正切函式值 131
3.6 atan和atanh——計算反正切和反雙曲正切函式值 132
3.7 cot和coth——計算餘切和雙曲餘切函式值 134
3.8 acot和acoth——計算反餘切和反雙曲餘切函式值 135
3.9 sec和sech——計算正割和雙曲正割函式值 137
3.10 asec和asech——計算反正割和反雙曲正割函式值 138
3.11 csc和csch——計算餘割和雙曲餘割函式的數值 140
3.12 acsc和acsch——計算反餘割和反雙曲餘割函式值 141
3.13 atan2——四象限的反正切函式 143
3.14 abs——計算數值的絕對值 145
3.15 exp——計算指數 146
3.16 log——計算自然對數 148
3.17 log10——計算常用對數 149
3.18 sort——進行排序 150
3.19 fix——向零方向取整 152
3.20 round——向最近的方向取整 153
3.21 floor——向負無窮大方向取整 154
3.22 ceil——向正無窮大方向取整 155
3.23 rem——計算餘數 155
3.24 real——計算複數的實部 156
3.25 image——計算複數的虛部 157
3.26 angle——計算複數的相角 157
3.27 conj——計算複數的共軛 158
3.28 complex——創建複數 159
3.29 mod——計算模數 160
3.30 nchoosek——計算組合數 161
3.31 interp1——一維數據插值 162
3.32 interp2——二維數據插值 164
3.33 interp3——三維數據插值 166
3.34 interpn——n維數據插值 168
3.35 spline——三次樣條數據插值 168
3.36 interpft——快速Fourier插值 170
3.37 max——最大值函式 171
3.38 min——最小值函式 172
3.39 mean——平均值函式 174
3.40 median——中位數函式 175
3.41 sum——求和函式 176
3.42 prod——連乘函式 176
3.43 cumsum——累積總和值 177
3.44 cumprod——累積連乘 178
3.45 quad——自適應Simpson法計算定積分 178
3.46 quadl——自適應Lobatto法計算定積分 179
3.47 trapz——用梯形法進行數值積分 180
3.48 rat/rats——有理分式逼近 181
3.49 dblquad——矩形區域的二元函式重積分 182
3.50 diff——求數值微分 183
3.51 diff——求符號微分 184
3.52 int——求符號積分 185
3.53 roots——求多項式的根 186
3.54 poly——通過根求原多項式係數 187
3.55 dsolve——求解常微分方程 188
3.56 fzero——求一元連續函式的零點 189
第4章 符號計算與符號數學工具箱 191
4.1 初等運算函式 191
4.1.1 sym——定義符號變數 191
4.1.2 syms——定義多個符號變數 192
4.1.3 compose——計算複合函式 193
4.1.4 colspace——計算列空間的基 195
4.1.5 real——計算複數的實部 196
4.1.6 imag——計算複數的虛部 197
4.1.7 symsum——計算表達式的和 197
4.1.8 collect——合併同類項 198
4.1.9 expand——展開符號表達式 199
4.1.10 factor——符號因式分解 199
4.1.11 simplify——化簡符號表達式 200
4.1.12 numden——計算表達式的分子與分母 201
4.1.13 double——將符號矩陣轉化為浮點型數值 202
4.1.14 solve——求解代數方程 203
4.1.15 simple——計算表達式的最簡形式 204
4.1.16 finverse——計算反函式 205
4.1.17 ploy——求特徵多項式 206
4.1.18 poly2sym——將多項式係數向量轉化為帶符號變數的多項式 207
4.1.19 symvar——確定表達式中的符號變數 207
4.1.20 horner——用嵌套形式表示多項式 208
4.2 符號微積分 209
4.2.1 limit——計算符號表達式的極限 209
4.2.2 diff——計算符號微分 210
4.2.3 int——計算符號積分 212
4.2.4 dsolve——求解常微分方程式 213
4.3 繪製符號函式的圖像 215
4.3.1 ezplot——繪製符號函式圖形 215
4.3.2 ezplot3——繪製三維符號函式 216
4.3.3 ezcontour——繪製符號函式的等高線圖 218
4.3.4 ezcontourf——用不同顏色填充的等高線圖 219
4.3.5 ezpolor——繪製極坐標圖形 220
4.3.6 ezmesh——符號函式的三維格線圖 221
4.3.7 ezmeshc——同時畫曲面格線圖與等高線圖 222
4.3.8 ezsurf——三維帶顏色的曲面圖 223
4.3.9 ezsurfc——同時畫出曲面圖與等高線圖 225
4.4 積分變換 226
4.4.1 fourier——Fourier變換 226
4.4.2 ifourier——Fourier逆變換 227
4.4.3 laplace——Laplace變換 229
4.4.4 ilaplace——Laplace逆變換 230
4.4.5 ztrans——Z-變換 231
4.4.6 iztrans——逆Z-變換 232
4.5 其他符號運算函式 233
4.5.1 vpa——可變精度算法 233
4.5.2 subs——替換符號表達式中的變數 234
4.5.3 taylor——符號函式的Taylor級數展開式 235
4.5.4 jacobian——計算雅可比矩陣 237
4.5.5 rsums——互動式計算Riemann積分 238
4.5.6 latex——符號表達式的LaTeX表達式 239
4.5.7 syms——快速創建多個符號對象 240
4.5.8 mfun——特殊函式的數值計算 241
4.5.9 sym2poly——將符號多項式轉為數值形式 243
4.5.10 ccode——符號表達式的C語言代碼 243
4.5.11 fortran——符號表達式的FORTRAN語言代碼 244
4.5.12 pretty——排版輸出符號表達式 245
4.5.13 digit——精確度函式 247
4.5.14 符號表達式的四則運算與冪運算 248
第5章 程式控制與設計 251
5.1 input——接受用戶的鍵盤輸入 251
5.2 disp——顯示字元串或數組 253
5.3 pause——暫停程式運行 256
5.4 for循環 258
5.5 while循環 263
5.6 if-else-end條件結構 267
5.7 switch-case-end條件結構 269
5.8 try-catch-捕獲異常 271
5.9 continue——轉到下一次循環 274
5.10 break——跳出循環 276
5.11 return——函式返回 277
5.12 keyboard模式 278
5.13 error——顯示錯誤信息 279
5.14 warning——顯示警告信息 281
第6章 MATLAB 繪圖 283
6.1 圖形繪製函式 283
6.1.1 plot——繪製二維曲線 283
6.1.2 subplot——視窗分區繪圖 287
6.1.3 figure——創建新視窗或選中視窗 288
6.1.4 fplot——繪製函式曲線 290
6.1.5 loglog——繪製雙對數坐標圖形 292
6.1.6 semilogx/semilogy——繪製單對數坐標圖形 294
6.1.7 ezplot——繪製隱函式曲線圖 296
6.1.8 plot3——繪製三維曲線 298
6.1.9 stem——繪製二維離散序列 299
6.1.10 bar——繪製二維柱狀圖 300
6.1.11 errorbar——繪製誤差圖 302
6.1.12 hist——繪製二維直方圖 304
6.1.13 pie——繪製餅圖 305
6.1.14 mesh——繪製三維格線圖 307
6.1.15 surf——繪製三維曲面圖 308
6.1.16 contour——繪製二維等高線 309
6.1.17 contour3——繪製三維等高線 310
6.1.18 contourf——填充二維等高線 311
6.1.19 sphere——繪製球體 313
6.1.20 cylinder——繪製圓柱 314
6.2 圖形設定函式 315
6.2.1 設定圖形標題、坐標軸標籤、坐標軸範圍 316
6.2.2 grid、box——添加格線和框線 318
6.2.3 legend——添加圖例 319
6.2.4 text——添加字元串 320
6.2.5 hold——圖形保持 321
6.2.6 clabel——繪製等高線高度標籤 323
6.2.7 colormap——設定色圖 324
第7章 用Simulink進行系統仿真 328
7.1 Simulink基本操作命令 328
7.1.1 simulink——打開Simulink模組庫瀏覽器 328
7.1.2 find_system——查找仿真系統或系統中的模組 329
7.1.3 load_system——載入仿真系統 332
7.1.4 open_system——打開仿真系統或模組 332
7.1.5 set_param——設定系統或模組的參數 336
7.1.6 get_param——獲取系統或模組的參數 337
7.1.7 gcs——獲得當前系統名稱 338
7.1.8 gcb——獲得當前模組名稱 339
7.1.9 gcbh——獲得當前模組句柄 340
7.1.10 getfullname——獲得當前模組的全路徑名稱 340
7.1.11 slupdate——更新舊版本的仿真模組 341
7.1.12 bdclose——無條件關閉仿真系統視窗 342
7.1.13 slhelp——查看Simulink幫助信息 342
7.2 仿真控制命令 343
7.2.1 sim——動態系統仿真 344
7.2.2 linmod——模型線性化 347
7.2.3 trim——求解系統平衡點 349
第8章 GUI圖形用戶界面 351
8.1 對象與屬性 351
8.1.1 figure——創建視窗對象 351
8.1.2 uimenu——創建選單或子選單 353
8.1.3 set——設定圖形對象屬性 354
8.1.4 get——獲得圖形對象屬性 357
8.1.5 gcf——返回當前圖形視窗句柄 358
8.2 預定義對話框 359
8.2.1 helpdlg——創建幫助對話框 359
8.2.2 errordlg——創建錯誤對話框 360
8.2.3 warndlg——創建警告對話框 361
8.2.4 uisetcolor——標準顏色選擇對話框 362
8.2.5 questdlg——創建問題對話框 363
8.2.6 msgbox——創建訊息對話框 365
8.3 編寫控制項內容 366
8.3.1 uicontrol——控制項編寫 366
8.3.2 Button——按鈕控制項編寫 370
第9章 MATLAB在信號處理領域的套用 375
9.1 測試信號的生成 375
9.1.1 生成階躍信號 375
9.1.2 diric——生成狄利克雷(Dirichlet)信號 377
9.1.3 sawtooth——生成鋸齒波或三角波 378
9.1.4 sinc——生成sinc信號 380
9.1.5 chirp——生成掃頻信號 382
9.2 在時域、頻域進行信號分析 384
9.2.1 mean——求信號的均值 384
9.2.2 std——信號的標準差 385
9.2.3 xcorr——信號的自相關或互相關 386
9.2.4 conv——信號卷積 388
9.2.5 fft——快速傅立葉變換 390
9.2.6 hilbert——希爾伯特(Hilbert)變換 393
9.2.7 residuez——Z-變換的部分分式展開 394
9.3 濾波器函式 396
9.3.1 buttap——設計巴特沃斯模擬低通濾波器 396
9.3.2 butter——設計巴特沃斯濾波器 397
9.3.3 cheb1ap——設計切比雪夫1型模擬低通濾波器 400
9.3.4 cheb2ap——設計切比雪夫2型模擬低通濾波器 401
9.3.5 cheby1——設計切比雪夫1型濾波器 403
9.3.6 besselap——設計貝塞爾模擬低通濾波器 405
9.3.7 besself——設計貝塞爾模擬濾波器 406
9.3.8 ellip——設計橢圓濾波器 408
9.3.9 impinvar——用脈衝回響不變法將模擬濾波器轉為數字濾波器 410
9.3.10 bilinear——用雙線性變換法將模擬濾波器轉為數字濾波器 412
9.3.11 yulewalk——設計IIR數字濾波器 414
9.3.12 fir1——設計基於窗的FIR濾波器 416
9.3.13 fir2——設計基於頻率採樣的FIR濾波器 417
第10章 MATLAB與數理統計 419
10.1 滿足特定分布的隨機數生成 419
10.1.1 binornd——生成二項分布隨機數 419
10.1.2 normrnd——生成常態分配隨機數 421
10.1.3 random——生成指定分布的隨機數 422
10.2 分布、機率與機率密度 423
10.2.1 binopdf——計算二項分布的機率 424
10.2.2 normpdf——計算常態分配的機率密度 425
10.2.3 lognpdf——計算對數常態分配的機率密度 426
10.2.4 chi2pdf——計算卡方分布的機率密度 428
10.2.5 ncx2pdf——計算非中心卡方分布的機率密度 429
10.2.6 fpdf——計算F分布的機率密度 431
10.2.7 ncfpdf——計算非中心F分布的機率密度 432
10.2.8 poisspdf——計算泊松分布的機率 433
10.2.9 tpdf——計算T分布的機率密度 435
10.2.10 raylpdf——計算瑞利分布的機率密度 436
10.2.11 wblpdf——計算韋伯分布的機率密度 438
10.2.12 gampdf——計算伽馬分布的機率密度 439
10.2.13 nbinpdf——計算負二項分布的機率 440
10.2.14 exppdf——計算指數分布的機率密度 442
10.2.15 pdf——計算指定分布的機率密度函式 443
10.3 隨機變數的累積分布 445
10.3.1 binocdf——計算二項分布的累積機率 445
10.3.2 normcdf——計算常態分配的累積機率 446
10.3.3 cdf——計算指定分布的累積分布 446
10.3.4 norminv——計算常態分配的逆累積分布 448
10.3.5 icdf——計算指定分布的逆累積分布 449
10.4 隨機變數的數字特徵 450
10.4.1 mean——求樣本均值 450
10.4.2 geomean——求幾何平均數 451
10.4.3 nanmean——求忽略NaN的均值 452
10.4.4 harmmean——求調和平均數 453
10.4.5 var——求樣本方差 454
10.4.6 std——求樣本標準差 455
10.4.7 nanstd——求忽略NaN的標準差 455
10.4.8 median——計算中位數 456
10.4.9 nanmedian——求忽略NaN的中位數 457
10.4.10 range——求最大值與最小值之差 457
10.4.11 skewness——求樣本偏斜度 458
10.4.12 unifstat——求均勻分布的期望和方差 460
10.4.13 normstat——求常態分配的期望和方差 461
10.4.14 binostat——求二項分布的期望和方差 462
10.4.15 cov——求協方差 463
10.4.16 corrcoef——求相關係數 464
10.5 參數估計 466
10.5.1 unifit——均勻分布的參數估計 466
10.5.2 normfit——常態分配的參數估計 467
10.5.3 binofit——二項分布的參數估計 468
10.5.4 betafit——beta分布的參數估計 469
10.5.5 expfit——指數分布的參數估計 470
10.5.6 gamfit——伽馬分布的參數估計 471
10.5.7 wblfit——韋伯分布的參數估計 471
10.5.8 poissfit——泊松分布的參數估計 473
10.5.9 mle——指定分布的參數估計 473
10.5.10 nlparci——非線性模型參數估計的置信區間 475
10.5.11 nlpredci——非線性模型預測值的置信區間 477
10.5.12 lsqnonneg——非負約束的最小二乘 479
10.5.13 nlinfit——非線性回歸 481
10.5.14 nlintools——互動式非線性回歸 483
10.5.15 betalike——beta分布的負對數似然函式 485
10.5.16 gamlike——伽馬分布的負對數似然函式 487
10.5.17 normlike——常態分配的負對數似然函式 488
10.5.18 wbllike——常態分配的負對數似然函式 488
10.6 假設檢驗 489
10.6.1 ttest——T檢驗 490
10.6.2 ztest——Z檢驗 491
10.6.3 signtest——符號檢驗 493
10.6.4 ranksum——秩和檢驗 495
10.6.5 signrank——符號秩檢驗 495
10.6.6 ttest2——兩個樣本的t檢驗 496
10.6.7 jbtest——總體分布的正態性檢驗 497
10.6.8 kstest——單樣本的Kolmogorov-Smirnov檢驗 499
10.6.9 kstest2——兩個樣本的Kolmogorov-Smirnov檢驗 500
10.7 機率統計的圖像表示 502
10.7.1 lsline——為散點圖添加最小二乘擬合直線 502
10.7.2 normplot——繪製常態分配機率圖形 503
10.7.3 tabulate——數據的頻率表顯示 504
10.7.4 capaplot——繪製機率圖形 505
10.7.5 cdfplot——繪製經驗累積分布函式圖 506
10.7.6 wblplot——韋伯分布機率圖形 507
10.7.7 histfit——帶機率分布擬合的直方圖 508
10.7.8 boxplot——盒須圖 509
10.7.9 refline——為圖形添加參考直線 511
10.7.10 refcurve——為圖形添加多項式參考曲線 512
10.7.11 normspec——在指定區間繪製常態分配曲線 514