本書從高校數(shù)學(xué)課程的教學(xué)出發(fā),結(jié)合科學(xué)研究和工程計(jì)算的實(shí)際,系統(tǒng)詳細(xì)地介紹了MATLAB語言的強(qiáng)大功能及其在科學(xué)計(jì)算領(lǐng)域中的應(yīng)用。本書的前身――《MATLAB與科學(xué)計(jì)算》作為工具書已出版3版,受到了廣大讀者的一致好評;為了適應(yīng)高校的教學(xué)需求,本書在內(nèi)容上做了調(diào)整,增加了課后習(xí)題和例題,以適應(yīng)教學(xué)和課程學(xué)習(xí)的不同需求。
本書可作為MATLAB的教學(xué)用書,也可作為高等數(shù)學(xué)、線性代數(shù)、計(jì)算方法、復(fù)變函數(shù)、概率統(tǒng)計(jì)、數(shù)學(xué)規(guī)劃等課程的教學(xué)輔導(dǎo)書,還可作為科研人員及工程計(jì)算人員學(xué)習(xí)和使用MATLAB的工具書。
王沫然,
2004.10-2006.02 美國約翰霍普金斯大學(xué)機(jī)械工程系,博士后 (Postdoctoral Fellow)
2006.03-2008.05 美國加州大學(xué)戴維斯分校生物與農(nóng)工系,博士后 (Research Associate)
2008.05-2011.05 美國洛斯阿洛莫斯國家實(shí)驗(yàn)室,奧本海默研究員 (Oppenheimer Fellow)
2007.01-至今 美國約翰霍普金斯大學(xué),訪問科學(xué)家 (Visiting Scientist),兼職
2011.03-至今 清華大學(xué)航天航空學(xué)院工程力學(xué)系,教授
第1章 緒論 1
1.1 MATLAB簡介 1
1.1.1 21世紀(jì)的科學(xué)計(jì)算語言 1
1.1.2 MATLAB的發(fā)展歷史 3
1.1.3 MATLAB的應(yīng)用和網(wǎng)上資源 3
1.2 MATLAB的桌面平臺(tái) 4
1.2.1 啟動(dòng)MATLAB 4
1.2.2 桌面平臺(tái) 4
1.3 幫助系統(tǒng) 7
1.3.1 聯(lián)機(jī)幫助系統(tǒng) 7
1.3.2 命令窗口查詢幫助 9
1.3.3 聯(lián)機(jī)演示系統(tǒng) 11
1.3.4 常用的命令和技巧 12
1.4 MATLAB的搜索路徑與擴(kuò)展 13
1.4.1 MATLAB的搜索路徑 14
1.4.2 擴(kuò)展MATLAB的搜索路徑 15
第2章 數(shù)值計(jì)算功能 17
2.1 MATLAB的數(shù)據(jù)類型 17
2.1.1 變量與常量 17
2.1.2 數(shù)字變量 18
2.1.3 字符串 21
2.1.4 矩陣 24
2.1.5 單元型變量 24
2.1.6 結(jié)構(gòu)型變量 26
2.2 向量及其運(yùn)算 28
2.2.1 向量的生成 28
2.2.2 向量的基本運(yùn)算 30
2.2.3 點(diǎn)積、叉積及混合積的實(shí)現(xiàn) 30
2.3 矩陣及其運(yùn)算 31
2.3.1 矩陣的生成 31
2.3.2 矩陣的基本數(shù)學(xué)運(yùn)算 32
2.3.3 矩陣的基本函數(shù)運(yùn)算 38
2.3.4 矩陣分解函數(shù) 43
2.3.5 特殊矩陣的生成 45
2.3.6 矩陣的一些特殊操作 47
2.4 數(shù)組及其運(yùn)算 50
2.4.1 基本數(shù)組運(yùn)算 50
2.4.2 數(shù)組函數(shù)運(yùn)算 52
2.4.3 數(shù)組邏輯運(yùn)算 52
2.5 多項(xiàng)式運(yùn)算 54
2.5.1 多項(xiàng)式的表示方法 54
2.5.2 多項(xiàng)式運(yùn)算 55
習(xí)題 58
第3章 符號(hào)運(yùn)算功能 65
3.1 符號(hào)表達(dá)式的生成 66
3.2 符號(hào)和數(shù)值之間的轉(zhuǎn)換 67
3.3 符號(hào)函數(shù)的運(yùn)算 68
3.3.1 復(fù)合函數(shù)運(yùn)算 68
3.3.2 反函數(shù)的運(yùn)算 69
3.4 符號(hào)矩陣的創(chuàng)立 69
3.4.1 使用sym函數(shù)直接創(chuàng)建符號(hào)
矩陣 69
3.4.2 用創(chuàng)建子陣的方法創(chuàng)建符號(hào)
矩陣 69
3.4.3 將數(shù)值矩陣轉(zhuǎn)化為符號(hào)矩陣 70
3.4.4 符號(hào)矩陣的索引和修改 70
3.5 符號(hào)矩陣的運(yùn)算 70
3.5.1 基本運(yùn)算 70
3.5.2 矩陣分解 72
3.5.3 矩陣的空間運(yùn)算 73
3.5.4 符號(hào)矩陣的簡化 74
3.6 符號(hào)微積分 76
3.6.1 符號(hào)極限 76
3.6.2 符號(hào)積分 77
3.6.3 符號(hào)微分和差分 77
3.7 符號(hào)代數(shù)方程求解 79
3.7.1 線性方程組的符號(hào)解法 79
3.7.2 非線性方程的符號(hào)解法 80
3.8 符號(hào)微分方程求解 81
3.9 符號(hào)函數(shù)的二維圖 81
3.9.1 符號(hào)函數(shù)的簡易繪圖函數(shù) ezplot 81
3.9.2 繪制函數(shù)圖函數(shù)fplot 82
3.10 圖示化函數(shù)計(jì)算器 83
3.10.1 輸入框的控制操作 83
3.10.2 命令按鈕的操作 84
習(xí)題 85
第4章 圖形處理功能 89
4.1 二維圖形 89
4.1.1 基本繪圖命令 89
4.1.2 特殊的二維圖形函數(shù) 93
4.2 三維圖形 98
4.2.1 基本繪圖命令 98
4.2.2 特殊的三維圖形函數(shù) 102
4.3 四維表現(xiàn)圖 105
4.4 圖形處理的基本技術(shù) 106
4.4.1 圖形的控制 106
4.4.2 圖形的標(biāo)注 109
4.4.3 圖形的保持與子圖 115
4.5 圖形處理的高級(jí)技術(shù) 116
4.5.1 顏色映像 116
4.5.2 視角與光照 122
4.5.3 圖像處理 127
4.5.4 圖形的輸出 129
4.6 圖形窗口 129
4.6.1 圖形窗口的菜單操作 129
4.6.2 圖形窗口的工具欄 130
4.7 句柄圖形 131
4.7.1 句柄圖形的層次結(jié)構(gòu) 131
4.7.2 句柄的訪問 132
4.7.3 句柄的操作 132
4.8 圖形用戶界面操作GUI 137
4.8.1 GUI設(shè)計(jì)工具簡介 137
4.8.2 GUI向?qū)гO(shè)計(jì) 143
4.8.3 GUI程序設(shè)計(jì) 146
4.9 動(dòng)畫 153
習(xí)題 155
第5章 程序設(shè)計(jì) 161
5.1 M文件介紹 161
5.1.1 M文件的特點(diǎn)與形式 161
5.1.2 命令式文件 162
5.1.3 函數(shù)式文件 163
5.2 控制語句 164
5.2.1 循環(huán)語句 164
5.2.2 選擇語句 166
5.2.3 分支語句switch-case-
otherwise 167
5.2.4 人機(jī)交互語句 168
5.3 函數(shù)變量及變量作用域 170
5.4 子函數(shù)與局部函數(shù) 172
5.5 程序設(shè)計(jì)的輔助函數(shù) 173
5.6 程序設(shè)計(jì)的優(yōu)化 176
5.7 程序調(diào)試 177
5.7.1 M文件錯(cuò)誤的種類 177
5.7.2 錯(cuò)誤的識(shí)別 178
5.7.3 調(diào)試過程 179
5.8 M文件的調(diào)用記錄 180
5.9 函數(shù)句柄 181
5.9.1 函數(shù)句柄的創(chuàng)建和顯示 181
5.9.2 函數(shù)句柄的調(diào)用和操作 182
習(xí)題 182
第6章 應(yīng)用程序接口 189
6.1 應(yīng)用程序接口介紹 189
6.1.1 MEX文件 189
6.1.2 MATLAB計(jì)算引擎 190
6.1.3 MAT文件 191
6.2 MEX文件的編輯與使用 191
6.2.1 C語言MEX文件 191
6.2.2 FORTRAN語言MEX文件 194
6.3 MATLAB計(jì)算引擎 194
6.3.1 C語言MATLAB計(jì)算引擎 194
6.3.2 FORTRAN語言MATLAB
計(jì)算引擎 196
6.4 MAT文件的編輯與使用 198
6.4.1 MATLAB中的數(shù)據(jù)處理 198
6.4.2 C語言MAT文件 198
6.4.3 FORTRAN語言MAT文件 201
6.5 創(chuàng)建獨(dú)立應(yīng)用程序 203
6.5.1 轉(zhuǎn)化為C/C++語言程序 204
6.5.2 創(chuàng)建獨(dú)立的可執(zhí)行程序 205
習(xí)題 206
第7章 MATLAB在計(jì)算方法中的應(yīng)用 207
7.1 插值與擬合 207
7.1.1 Lagrange插值 207
7.1.2 Runge現(xiàn)象的產(chǎn)生和分段
插值 208
7.1.3 Hermite插值 211
7.1.4 樣條插值 212
7.1.5 最小二乘法擬合 215
7.1.6 快速Fourier變換簡介 217
7.2 積分與微分 219
7.2.1 Newton-Cotes系列數(shù)值求積
公式 219
7.2.2 Gauss 求積公式 226
7.2.3 Romberg求積公式 228
7.2.4 Monte-Carlo方法簡介 229
7.2.5 符號(hào)積分 230
7.2.6 微分和差分 230
7.3 求解線性方程組 232
7.3.1 直接解法 232
7.3.2 迭代解法的幾種形式 234
7.3.3 線性方程組的符號(hào)解法 238
7.3.4 稀疏矩陣技術(shù) 239
7.4 求解非線性方程組 243
7.4.1 非線性方程的解法 243
7.4.2 方程組解法 247
7.4.3 非線性方程(組)的符號(hào)
解法 249
7.5 特征值問題 249
7.5.1 特征值函數(shù) 249
7.5.2 廣義特征值分解 250
7.5.3 其他分解 251
7.6 常微分方程的解法 252
7.6.1 歐拉方法 252
7.6.2 Runge-Kutta方法 255
7.6.3 剛性問題的解 257
7.6.4 常微分方程的符號(hào)解 259
習(xí)題 259
第8章 MATLAB在復(fù)變函數(shù)中的應(yīng)用 265
8.1 復(fù)數(shù)和復(fù)矩陣的生成 265
8.1.1 復(fù)數(shù)的生成 265
8.1.2 創(chuàng)建復(fù)矩陣 265
8.2 復(fù)數(shù)的運(yùn)算 266
8.2.1 復(fù)數(shù)的實(shí)部和虛部 266
8.2.2 共軛復(fù)數(shù) 266
8.2.3 復(fù)數(shù)的模和輻角 266
8.2.4 復(fù)數(shù)的乘除法 266
8.2.5 復(fù)數(shù)的平方根 267
8.2.6 復(fù)數(shù)的冪運(yùn)算 267
8.2.7 復(fù)數(shù)的指數(shù)和對數(shù)運(yùn)算 267
8.2.8 復(fù)數(shù)的三角函數(shù)運(yùn)算 267
8.2.9 復(fù)數(shù)方程求根 268
8.3 留數(shù) 268
8.4 Taylor級(jí)數(shù)展開 269
8.5 Laplace變換及其逆變換 270
8.6 Fourier變換及其逆變換 272
習(xí)題 273
第9章 MATLAB在概率統(tǒng)計(jì)中的應(yīng)用 275
9.1 統(tǒng)計(jì)量的數(shù)字特征 275
9.1.1 簡單數(shù)學(xué)期望和幾種均值 275
9.1.2 數(shù)據(jù)比較 276
9.1.3 累積與累和 277
9.1.4 方差和標(biāo)準(zhǔn)差 277
9.1.5 偏斜度和峰度 278
9.1.6 協(xié)方差和相關(guān)系數(shù) 279
9.1.7 協(xié)方差矩陣 280
9.2 常用的統(tǒng)計(jì)分布量 280
9.2.1 給定分布下的期望和方差 280
9.2.2 概率密度函數(shù) 282
9.2.3 概率值函數(shù)(概率累積函數(shù)) 284
9.2.4 分值點(diǎn)函數(shù)(逆概率累積
函數(shù)) 285
9.2.5 隨機(jī)數(shù)生成函數(shù) 286
9.3 參數(shù)估計(jì) 287
9.3.1 正態(tài)分布參數(shù)估計(jì) 287
9.3.2 指數(shù)最大似然參數(shù)估計(jì) 289
9.4 區(qū)間估計(jì) 289
9.4.1 Gauss-Newton法的非線性
最小二乘數(shù)據(jù)擬合 289
9.4.2 非線性擬合和預(yù)測的交互
圖形工具 289
9.4.3 非線性最小二乘預(yù)測的置信
區(qū)間 290
9.4.4 非線性模型的參數(shù)置信區(qū)間 290
9.4.5 非負(fù)最小二乘 290
9.5 假設(shè)檢驗(yàn) 290
9.5.1 單個(gè)總體N(?,?2)均值?的
檢驗(yàn) 291
9.5.2 兩個(gè)正態(tài)總體均值差的檢驗(yàn)
(t檢驗(yàn)) 292
9.5.3 秩和檢驗(yàn) 293
9.6 方差分析和回歸診斷 294
9.6.1 方差分析 294
9.6.2 回歸分析 296
9.7 統(tǒng)計(jì)圖 297
9.7.1 直方圖 297
9.7.2 角度扇形圖 297
9.7.3 正態(tài)分布圖 297
9.7.4 參考線 298
9.7.5 顯示數(shù)據(jù)采樣的盒圖 298
9.7.6 對離散圖形加最小二乘法
直線 299
9.7.7 QQ圖 299
習(xí)題 300
第10章 MATLAB在運(yùn)籌優(yōu)化問題中的
應(yīng)用 306
10.1 線性優(yōu)化 306
10.2 二次優(yōu)化 309
10.3 非線性無約束優(yōu)化問題 311
10.3.1 fminbnd 311
10.3.2 fminsearch 312
10.3.3 fminunc 313
10.3.4 options選項(xiàng) 315
10.4 最小二乘優(yōu)化問題 317
10.4.1 最小二乘優(yōu)化 317
10.4.2 最小二乘曲線/面擬合 319
10.5 非線性約束問題優(yōu)化 320
10.5.1 函數(shù)介紹 320
10.5.2 應(yīng)用舉例 320
10.6 多任務(wù)“目標(biāo)-達(dá)到”問題的
優(yōu)化 322
10.7 非線性方程的優(yōu)化解 324
習(xí)題 325
附錄A MATLAB的設(shè)置 333
附錄B 主要函數(shù)命令注釋 342
參考文獻(xiàn) 365