全書以MATLAB 2020為基礎(chǔ),結(jié)合高等學(xué)校的教學(xué)任務(wù)和計算科學(xué)的應(yīng)用,詳細(xì)講解了數(shù)學(xué)計算和仿真分析的各種方法和技巧,力爭讓學(xué)生與零基礎(chǔ)讀者最終脫離書本,將所學(xué)知識應(yīng)用于工程實踐中。
本書主要內(nèi)容包括MATLAB基礎(chǔ)知識,程序設(shè)計基礎(chǔ),二維圖形、三維圖形繪制,圖像繪制,數(shù)列、級數(shù)與極限計算,符號運算,積分計算,微分方程,圖形用戶界面設(shè)計,Simulink仿真基礎(chǔ),MATLAB聯(lián)合編程,優(yōu)化設(shè)計,供應(yīng)中心選址設(shè)計實例,數(shù)字低通信號頻譜分析設(shè)計實例,函數(shù)最優(yōu)化解設(shè)計實例等。本書內(nèi)容覆蓋數(shù)學(xué)計算與仿真分析的各個方面,既有MATLAB基本函數(shù)的介紹,又有用MATLAB編寫的計算程序,以及利用函數(shù)解決不同數(shù)學(xué)應(yīng)用問題的方案等。
本書既可作為MATLAB初學(xué)者的入門用書,又可作為相關(guān)工程技術(shù)人員、大學(xué)生、研究生的工具書。
620分鐘同步教學(xué)視頻,325個實戰(zhàn)案例分析,提供源文件。
·作者實力雄厚
本書由著名CAD/CAM/CAE圖書出版專家胡仁喜博士指導(dǎo),大學(xué)資深專家教授團隊執(zhí)筆編寫。作者總結(jié)自己多年的設(shè)計經(jīng)驗及教學(xué)心得體會,力求在本書中全面細(xì)致地展現(xiàn)MATLAB 在工程分析與數(shù)學(xué)計算應(yīng)用領(lǐng)域的各種功能和使用方法。
·實例專業(yè)典型
本書中的很多實例本身就是工程分析與數(shù)學(xué)計算項目案例,這些案例經(jīng)過作者的精心提煉和改編,不僅保證了讀者能夠?qū)W好知識點,更重要的是能幫助讀者掌握實際的操作技能。
·注重實操技能
本書從全面提升讀者的MATLAB工程分析與數(shù)學(xué)計算能力角度出發(fā),結(jié)合大量的案例來講解如何利用MATLAB進行工程分析與數(shù)學(xué)計算,讓讀者真正掌握計算機輔助工程分析與數(shù)學(xué)計算。
·內(nèi)容全面深入
“秀才不出門,能知天下事”,讀者只要有本書在手,MATLAB數(shù)學(xué)計算與工程分析知識便能全精通。本書不僅有透徹的講解,還有豐富的實例供讀者演練,能夠幫助讀者找到一條學(xué)習(xí)MATLAB的終南捷徑。
·實現(xiàn)知行合一
本書提供了使用MATLAB解決數(shù)學(xué)問題的實踐性指導(dǎo),它基于MATLAB 2020a版本,內(nèi)容由淺入深,特別是對每一條命令的調(diào)用格式都做了詳細(xì)的說明,并為讀者提供了大量的例題,這對于初學(xué)者自學(xué)很有幫助。本書還對數(shù)學(xué)中的一些知識如優(yōu)化理論與算法及概率問題、數(shù)理統(tǒng)計問題等各種數(shù)學(xué)問題進行了較為詳細(xì)的介紹,因此,本書也可作為科技工作者的科學(xué)計算工具書。
槐創(chuàng)鋒,博士,華東交通大學(xué)機械工程系副教授。主要從事機械工程相關(guān)專業(yè)教學(xué)和科研工作,主持和參與省部級科研項目20多項,發(fā)表SEI等高水平論文50多篇,并出版著作20多部。
第 1章 MATLAB基礎(chǔ)知識 1
1.1 MATLAB中的科學(xué)計算概述 1
1.1.1 MATLAB的發(fā)展歷程 1
1.1.2 MATLAB系統(tǒng) 2
1.2 MATLAB 2020的工作界面 3
1.2.1 標(biāo)題欄 3
1.2.2 功能區(qū) 4
1.2.3 工具欄 4
1.2.4 命令行窗口 4
1.2.5 命令歷史記錄窗口 6
1.2.6 當(dāng)前文件夾窗口 7
1.2.7 工作區(qū)窗口 8
1.2.8 圖像窗口 11
1.3 MATLAB命令的組成 11
1.3.1 基本符號 12
1.3.2 功能符號 13
1.3.3 常用命令 14
1.3.4 基本數(shù)學(xué)函數(shù) 16
1.4 M文件 16
1.4.1 命令式文件 17
1.4.2 函數(shù)式文件 19
第 2章 程序設(shè)計基礎(chǔ) 20
2.1 數(shù)據(jù)類型 20
2.1.1 變量與常量 20
2.1.2 數(shù)值 22
2.1.3 字符串 26
2.1.4 向量 29
2.1.5 矩陣 32
2.1.6 單元型變量 37
2.1.7 結(jié)構(gòu)型變量 40
2.2 運算符 41
2.2.1 算術(shù)運算符 41
2.2.2 關(guān)系運算符 42
2.2.3 邏輯運算符 42
2.3 數(shù)值運算 42
2.3.1 矩陣運算 42
2.3.2 向量運算 49
2.4 MATLAB的幫助系統(tǒng) 52
2.4.1 聯(lián)機幫助系統(tǒng) 52
2.4.2 幫助命令 52
2.4.3 聯(lián)機演示系統(tǒng) 54
2.4.4 網(wǎng)絡(luò)資源 56
2.5 MATLAB程序設(shè)計 57
2.5.1 表達(dá)式、表達(dá)式語句與賦值語句 57
2.5.2 程序結(jié)構(gòu) 58
2.5.3 程序流程控制指令 64
2.5.4 人機交互語句 65
2.5.5 MATLAB程序的調(diào)試命令 67
2.6 函數(shù)句柄 67
2.6.1 函數(shù)句柄的創(chuàng)建與顯示 67
2.6.2 函數(shù)句柄的調(diào)用與操作 68
2.6.3 輔助函數(shù) 68
2.7 操作實例——調(diào)用記錄結(jié)果的顯示 72
第3章 二維圖形繪制 76
3.1 二維曲線的繪制 76
3.1.1 繪制二維圖形 76
3.1.2 多圖形顯示 82
3.1.3 函數(shù)圖形的繪制 86
3.2 圖形屬性設(shè)置 90
3.2.1 圖形窗口的屬性 90
3.2.2 圖形放大與縮小 94
3.2.3 顏色控制 95
3.2.4 坐標(biāo)系與坐標(biāo)軸 96
3.2.5 圖形注釋 100
3.3 操作實例——編寫一個普通話等級考試評定函數(shù) 106
第4章 三維圖形繪制 109
4.1 三維繪圖 109
4.1.1 三維曲線繪圖函數(shù) 109
4.1.2 三維網(wǎng)格函數(shù) 113
4.1.3 三維曲面函數(shù) 117
4.1.4 柱面與球面 120
4.1.5 散點圖 122
4.1.6 三維圖形等值線 123
4.2 三維圖形修飾處理 129
4.2.1 視角處理 129
4.2.2 顏色處理 131
4.2.3 光照處理 134
4.3 操作實例——繪制函數(shù)的三維視圖 138
第5章 圖像繪制 141
5.1 網(wǎng)格圖形 141
5.2 彗星圖 142
5.3 向量圖形 144
5.4 圖像處理 146
5.4.1 圖像的顯示 146
5.4.2 圖像的讀寫 149
5.4.3 圖像格式的轉(zhuǎn)換 151
5.4.4 圖像信息查詢 153
5.5 動畫演示 154
5.5.1 動畫幀 155
5.5.2 動畫線條 157
5.5.3 生成動畫 160
5.6 操作實例——正弦函數(shù)運動動畫 162
第6章 數(shù)列、級數(shù)與極限計算 164
6.1 數(shù)列 164
6.1.1 數(shù)列求和 165
6.1.2 數(shù)列求積 172
6.1.3 數(shù)列擴展 176
6.2 級數(shù) 179
6.2.1 級數(shù)求和函數(shù) 179
6.2.2 級數(shù)累乘函數(shù) 180
6.3 極限與導(dǎo)數(shù) 181
6.3.1 極限 181
6.3.2 導(dǎo)數(shù) 183
6.4 操作實例——三角函數(shù)的近似導(dǎo)數(shù) 185
第7章 符號運算 187
7.1 符號與數(shù)值 187
7.1.1 符號與數(shù)值間的轉(zhuǎn)換 187
7.1.2 符號與數(shù)值間的精度設(shè)置 188
7.2 符號矩陣 189
7.2.1 符號矩陣的創(chuàng)建 190
7.2.2 符號矩陣的其他運算 192
7.2.3 符號多項式的簡化 195
7.3 多元函數(shù)分析 198
7.3.1 雅可比矩陣 198
7.3.2 實數(shù)矩陣的梯度 199
7.4 方程的運算 200
7.4.1 方程組的介紹 201
7.4.2 方程式的解 201
7.4.3 線性方程求解 203
7.5 線性方程組求解 203
7.5.1 線性方程組定義 203
7.5.2 利用矩陣的基本運算 204
7.5.3 利用矩陣分解法求解 207
7.5.4 非負(fù)最小二乘解 211
7.6 操作實例——四元一次方程組求解 212
第8章 積分計算 218
8.1 積分 218
8.1.1 定積分與廣義積分 218
8.1.2 不定積分 220
8.1.3 多重積分 220
8.2 積分變換 224
8.2.1 傅里葉(Fourier)變換 224
8.2.2 傅里葉(Fourier)逆變換 225
8.2.3 快速傅里葉(Fourier)變換 226
8.2.4 拉普拉斯(Laplace)變換 228
8.2.5 拉普拉斯(Laplace)逆變換 229
8.3 復(fù)雜函數(shù) 230
8.3.1 泰勒(Taylor)展開 230
8.3.2 傅里葉(Fourier)展開 232
8.4 操作實例——正弦信號頻譜圖 233
第9章 微分方程 236
9.1 歐拉方法 236
9.2 龍格-庫塔方法 238
9.2.1 龍格-庫塔方法 239
9.2.2 龍格-庫塔(Runge-Kutta)方法解剛性問題 244
9.3 PDE模型方法 245
9.3.1 PDE模型函數(shù) 246
9.3.2 網(wǎng)格圖 247
9.3.3 幾何圖形 252
9.3.4 邊界條件 255
9.4 偏微分方程 256
9.4.1 偏微分方程介紹 256
9.4.2 偏微分方程求解 257
9.5 操作實例——帶雅克比矩陣的非線性方程組求解 261
第 10章 圖形用戶界面設(shè)計 263
10.1 用戶界面概述 263
10.1.1 用戶界面對象 263
10.1.2 圖形用戶界面 264
10.2 圖形用戶界面設(shè)計方法 266
10.2.1 GUI概述 266
10.2.2 創(chuàng)建控件 266
10.2.3 控件屬性編輯 271
10.3 控件編程 274
10.3.1 菜單設(shè)計 274
10.3.2 回調(diào)函數(shù) 277
10.4 操作實例——圖片縮放 280
第 11章 Simulink仿真基礎(chǔ) 285
11.1 Simulink簡介 285
11.1.1 Simulink模型的特點 286
11.1.2 Simulink的數(shù)據(jù)類型 288
11.2 Simulink模塊庫 290
11.2.1 常用模塊庫 291
11.2.2 子系統(tǒng)及其封裝 293
11.3 模塊的創(chuàng)建 298
11.3.1 創(chuàng)建模塊文件 298
11.3.2 模塊的基本操作 300
11.3.3 模塊參數(shù)設(shè)置 301
11.3.4 模塊的連接 302
11.4 仿真分析 305
11.4.1 仿真參數(shù)設(shè)置 305
11.4.2 仿真的運行和分析 307
11.4.3 仿真錯誤診斷 308
11.5 回調(diào)函數(shù) 309
11.6 操作實例——彈球模型動態(tài)系統(tǒng) 311
第 12章 MATLAB聯(lián)合編程 317
12.1 應(yīng)用程序接口介紹 317
12.1.1 MEX文件簡介 317
12.1.2 API庫函數(shù)和MEX文件的區(qū)別 318
12.1.3 MAT文件 318
12.2 MEX文件的編輯與使用 318
12.2.1 編寫C語言MEX文件 319
12.2.2 編寫FORTRAN語言MEX文件 320
12.3 MATLAB與.NET聯(lián)合編程 320
12.3.1 MATLAB Builder for.NET主要功能 321
12.3.2 MATLAB Builder for.NET原理 321
12.4 操作實例——MATLAB Builder for.NET
應(yīng)用實例 322
第 13章 優(yōu)化設(shè)計 327
13.1 優(yōu)化問題概述 327
13.2 MATLAB中的工具箱 328
13.2.1 MATLAB中常用的工具箱 328
13.2.2 工具箱和工具箱函數(shù)的查詢 329
13.3 優(yōu)化工具箱中的函數(shù) 332
13.4 優(yōu)化函數(shù)的變量 333
13.5 參數(shù)設(shè)置 336
13.5.1 optimoptions函數(shù) 336
13.5.2 optimset函數(shù) 337
13.5.3 optimget函數(shù) 340
13.6 模型輸入時需要注意的問題 340
13.7 句柄函數(shù) 341
13.8 優(yōu)化算法介紹 341
13.8.1 參數(shù)優(yōu)化問題 341
13.8.2 無約束優(yōu)化問題 342
13.8.3 擬牛頓法實現(xiàn) 344
13.8.4 最小二乘優(yōu)化 344
13.8.5 非線性最小二乘實現(xiàn) 345
13.8.6 約束優(yōu)化 345
13.8.7 SQP實現(xiàn) 346
13.9 無約束非線性規(guī)劃問題 347
13.9.1 數(shù)學(xué)原理及模型 347
13.9.2 MATLAB工具箱中的基本函數(shù) 348
13.10 操作實例——求最優(yōu)化問題 352
第 14章 供應(yīng)中心選址設(shè)計實例 355
14.1 最大值最小化概述 355
14.2 基本函數(shù) 356
14.3 供應(yīng)中心選址設(shè)計 357
14.3.1 目標(biāo)函數(shù)文件 358
14.3.2 設(shè)定初始值 358
14.3.3 調(diào)用函數(shù)求解 358
第 15章 數(shù)字低通信號頻譜分析設(shè)計實例 361
15.1 數(shù)字低通信號頻譜輸出 361
15.2 數(shù)字低通信號分析 366
15.2.1 繪制功率譜 366
15.2.2 數(shù)字信號譜分析 368
第 16章 函數(shù)最優(yōu)化解設(shè)計實例 371
16.1 半無限概述 371
16.2 基本函數(shù) 371
16.3 函數(shù)最優(yōu)化解 373
16.3.1 目標(biāo)函數(shù)文件和約束函數(shù)文件 374
16.3.2 調(diào)用函數(shù)求解 374