本書比較全面地介紹了現(xiàn)代科學(xué)與工程計算中常用的數(shù)值計算方法。全書共分11章,主要內(nèi)容有:引論、計算方法的數(shù)學(xué)基礎(chǔ)、MATLAB編程基礎(chǔ)、方程求根、解線性方程組的直接法、解線性方程組的迭代法、函數(shù)插值、數(shù)值積分與數(shù)值微分、常微分方程初值問題的數(shù)值解法、矩陣特征值計算、函數(shù)優(yōu)化計算。本書知識體系完整,既簡要回顧了與計算方法有關(guān)的數(shù)學(xué)基礎(chǔ)知識,又介紹了現(xiàn)代計算軟件MATLAB,書中每個算法都配有結(jié)構(gòu)化流程圖,幾乎所有算法都給出了MATLAB語言代碼和MATLAB函數(shù),部分算法給出了C語言代碼,書后附有上機(jī)實(shí)驗(yàn)題目。可從華信教育資源網(wǎng)(www.hxedu.com.cn)免費(fèi)下載的教學(xué)資源包括:電子教案、各章習(xí)題解答和模擬試題。
李桂成,1985年畢業(yè)于山西大學(xué)計算數(shù)學(xué)專業(yè),畢業(yè)后在山西大學(xué)計算機(jī)與信息技術(shù)學(xué)院任教,主講計算方法,期間獲計算機(jī)科學(xué)與技術(shù)工學(xué)碩士學(xué)位,現(xiàn)從事智能計算和數(shù)據(jù)挖掘方向的研究。
第1章 引論 1
1.1 從數(shù)學(xué)到計算 1
1.2 誤差理論初步 5
1.2.1 誤差的來源 5
1.2.2 誤差的度量 6
1.2.3 誤差的傳播 9
1.2.4 數(shù)值穩(wěn)定性 11
1.3 數(shù)值計算的若干原則 12
1.3.1 避免兩個相近數(shù)相減 12
1.3.2 避免用絕對值過小的數(shù)作為除數(shù) 13
1.3.3 要防止大數(shù)“吃掉”小數(shù) 13
1.3.4 簡化計算步驟,提高計算效率 14
1.3.5 使用數(shù)值穩(wěn)定的算法 15
本章小結(jié) 16
習(xí)題1 17
第2章 計算方法的數(shù)學(xué)基礎(chǔ) 19
2.1 微積分的有關(guān)概念和定理 19
2.1.1 數(shù)列與函數(shù)的極限 19
2.1.2 連續(xù)函數(shù)的性質(zhì) 21
2.1.3 羅爾定理和微分中值定理 21
2.1.4 積分加權(quán)平均值定理 22
2.1.5 權(quán)函數(shù)和函數(shù)的內(nèi)積 23
2.1.6 正交函數(shù)系 23
2.1.7 勒讓德多項式 25
2.2 微分方程的有關(guān)概念和定理 26
2.2.1 基本概念 26
2.2.2 初值問題解的存在唯一性 28
2.3 線性代數(shù)的有關(guān)概念和定理 28
2.3.1 線性相關(guān)和線性無關(guān) 28
2.3.2 方陣及其初等變換 30
2.3.3 線性方程組解的存在唯一性 32
2.3.4 特殊矩陣 33
2.3.5 方陣的逆及其運(yùn)算性質(zhì) 35
2.3.6 矩陣的特征值及其運(yùn)算性質(zhì) 36
2.3.7 對稱正定矩陣 39
2.3.8 對角占優(yōu)矩陣 40
2.3.9 向量的內(nèi)積 41
2.3.10 向量、矩陣和連續(xù)函數(shù)的范數(shù) 41
2.3.11 向量序列與矩陣序列的極限 46
本章小結(jié) 47
習(xí)題2 47
第3章 MATLAB編程基礎(chǔ) 49
3.1 MATLAB R2018b簡介 49
3.2 MATLAB R2018b的工作環(huán)境 51
3.2.1 MATLAB R2018b的工具箱 51
3.2.2 MATLAB R2018b的命令行窗口 53
3.2.3 MATLAB R2018b的工作區(qū) 54
3.2.4 MATLAB R2018b的當(dāng)前文件夾 54
3.3 MATLAB的變量、常量和數(shù)據(jù)類型 55
3.3.1 常量 55
3.3.2 變量 56
3.3.3 數(shù)據(jù)類型 56
3.4 MATLAB的數(shù)值運(yùn)算 58
3.4.1 向量運(yùn)算 58
3.4.2 矩陣運(yùn)算 59
3.5 MATLAB的符號運(yùn)算 64
3.5.1 字符串運(yùn)算 64
3.5.2 符號表達(dá)式運(yùn)算 65
3.5.3 符號矩陣運(yùn)算 68
3.5.4 符號微積分運(yùn)算 69
3.5.5 符號方程求解 71
3.6 MATLAB圖形可視化 73
3.6.1 繪制二維圖形 73
3.6.2 繪制三維圖形 74
3.7 MATLAB程序設(shè)計 75
3.7.1 MATLAB程序的控制結(jié)構(gòu) 75
3.7.2 MATLAB文件 78
3.7.3 MATLAB R2018b程序調(diào)試方法 78
本章小結(jié) 81
習(xí)題3 81
第4章 方程求根 83
4.1 引言 83
4.2 二分法 84
4.3 迭代法 87
4.3.1 不動點(diǎn)迭代 87
4.3.2 迭代法的收斂性 88
4.3.3 迭代法的改善 95
4.4 牛頓迭代法 96
4.4.1 牛頓迭代公式及其幾何意義 96
4.4.2 牛頓迭代公式的收斂性 97
4.4.3 重根情形 101
4.5 弦截法 102
4.6 算法實(shí)現(xiàn) 103
4.6.1 MATLAB編程實(shí)現(xiàn) 103
4.6.2 MATLAB函數(shù)實(shí)現(xiàn) 106
本章小結(jié) 107
習(xí)題4 108
第5章 解線性方程組的直接法 110
5.1 引言 110
5.2 高斯消去法 111
5.2.1 順序高斯消去法 111
5.2.2 主元素高斯消去法 115
5.2.3 高斯-約當(dāng)消去法 117
5.3 矩陣三角分解法 119
5.3.1 高斯消去法與矩陣三角分解法 119
5.3.2 直接三角分解法 120
5.4 解三對角線性方程組的追趕法 124
5.5 誤差分析 127
5.5.1 病態(tài)方程組與條件數(shù) 127
5.5.2 病態(tài)方程組的解法 130
5.6 算法實(shí)現(xiàn) 131
5.6.1 MATLAB編程實(shí)現(xiàn) 131
5.6.2 MATLAB函數(shù)實(shí)現(xiàn) 135
本章小結(jié) 137
習(xí)題5 137
第6章 解線性方程組的迭代法 139
6.1 引言 139
6.2 雅可比迭代法 141
6.3 高斯-塞德爾迭代法 142
6.4 迭代法的收斂性 144
6.5 算法實(shí)現(xiàn) 151
6.5.1 MATLAB編程實(shí)現(xiàn) 151
6.5.2 MATLAB函數(shù)實(shí)現(xiàn) 155
本章小結(jié) 156
習(xí)題6 156
第7章 函數(shù)插值 159
7.1 引言 159
7.1.1 插值問題 159
7.1.2 插值多項式的存在唯一性 160
7.2 拉格朗日插值 161
7.2.1 線性插值與拋物插值 161
7.2.2 拉格朗日插值 163
7.2.3 插值余項與誤差估計 165
7.3 牛頓插值 169
7.4 埃爾米特插值 173
7.5 分段低次插值 175
7.5.1 高次插值與龍格現(xiàn)象 175
7.5.2 分段線性插值 176
7.5.3 分段三次埃爾米特插值 178
7.6 樣條插值 180
7.6.1 三次樣條插值函數(shù) 180
7.6.2 三次樣條插值函數(shù)的求法 182
7.7 離散數(shù)據(jù)的曲線擬合 185
7.7.1 曲線擬合問題 185
7.7.2 多項式擬合 186
7.7.3 正交多項式擬合 188
7.8 算法實(shí)現(xiàn) 189
7.8.1 MATLAB編程實(shí)現(xiàn) 189
7.8.2 MATLAB函數(shù)實(shí)現(xiàn) 191
本章小結(jié) 195
習(xí)題7 195
第8章 數(shù)值積分與數(shù)值微分 199
8.1 引言 199
8.1.1 數(shù)值積分的必要性 199
8.1.2 數(shù)值積分的基本思想 200
8.1.3 代數(shù)精度 200
8.1.4 插值型求積公式 202
8.2 牛頓-柯特斯求積公式 204
8.2.1 牛頓-柯特斯求積公式的導(dǎo)出 204
8.2.2 牛頓-柯特斯求積公式的誤差估計 207
8.3 復(fù)合求積公式 209
8.3.1 復(fù)合梯形求積公式 209
8.3.2 復(fù)合辛普生求積公式 210
8.4 外推算法與龍貝格算法 212
8.4.1 變步長的求積公式 212
8.4.2 外推算法 214
8.4.3 龍貝格求積公式 214
8.5 高斯求積公式 218
8.5.1 高斯點(diǎn)與高斯求積公式 218
8.5.2 高斯-勒讓德求積公式 219
8.5.3 高斯求積公式的穩(wěn)定性和收斂性 222
8.6 數(shù)值微分 223
8.6.1 中點(diǎn)公式 223
8.6.2 插值型微分公式 225
8.7 算法實(shí)現(xiàn) 227
8.7.1 MATLAB編程實(shí)現(xiàn) 227
8.7.2 MATLAB函數(shù)實(shí)現(xiàn) 230
本章小結(jié) 233
習(xí)題8 233
第9章 常微分方程初值問題的數(shù)值解法 237
9.1 引言 237
9.2 歐拉公式 238
9.2.1 歐拉公式及其意義 238
9.2.2 歐拉公式的變形 239
9.3 單步法的局部截斷誤差和方法的階 242
9.4 龍格-庫塔方法 245
9.4.1 龍格-庫塔方法的基本思想 245
9.4.2 二階龍格-庫塔方法的推導(dǎo) 246
9.4.3 經(jīng)典四階龍格-庫塔方法 249
9.5 單步法的收斂性和穩(wěn)定性 251
9.5.1 單步法的收斂性 251
9.5.2 單步法的穩(wěn)定性 254
9.6 算法實(shí)現(xiàn) 257
9.6.1 MATLAB編程實(shí)現(xiàn) 257
9.6.2 MATLAB函數(shù)實(shí)現(xiàn) 260
本章小結(jié) 263
習(xí)題9 264
第10章 矩陣特征值計算 266
10.1 引言 266
10.2 冪法及反冪法 268
10.2.1 冪法 268
10.2.2 反冪法 271
10.3 QR方法 272
10.3.1 反射變換 272
10.3.2 矩陣的QR分解 274
10.3.3 QR方法的實(shí)現(xiàn) 275
10.4 雅可比方法 276
10.4.1 平面旋轉(zhuǎn)矩陣 276
10.4.2 雅可比方法及其改進(jìn) 278
10.5 算法實(shí)現(xiàn) 280
10.5.1 MATLAB編程實(shí)現(xiàn) 280
10.5.2 MATLAB函數(shù)實(shí)現(xiàn) 286
本章小結(jié) 289
習(xí)題10 290
第11章 函數(shù)優(yōu)化計算 291
11.1 引言 291
11.2 一元函數(shù)優(yōu)化計算 292
11.2.1 牛頓法 292
11.2.2 擬牛頓法 294
11.2.3 黃金分割法 294
11.3 多元函數(shù)優(yōu)化計算 296
11.3.1 多元函數(shù)有最優(yōu)解的條件 296
11.3.2 多元函數(shù)數(shù)值求解的原則 297
11.3.3 梯度法 298
11.3.4 牛頓法 300
11.3.5 共軛方向法 301
11.4 算法實(shí)現(xiàn) 304
11.4.1 MATLAB編程實(shí)現(xiàn) 304
11.4.2 MATLAB函數(shù)實(shí)現(xiàn) 307
本章小結(jié) 309
習(xí)題11 309
附錄A 計算方法實(shí)驗(yàn) 310
實(shí)驗(yàn)1 方程求根 311
實(shí)驗(yàn)2 解線性方程組的直接法 312
實(shí)驗(yàn)3 解三對角線性方程組的追趕法 313
實(shí)驗(yàn)4 解線性方程組的迭代法 314
實(shí)驗(yàn)5 函數(shù)插值問題 315
實(shí)驗(yàn)6 數(shù)值積分 316
實(shí)驗(yàn)7 數(shù)值微分 318
實(shí)驗(yàn)8 常微分方程初值問題的數(shù)值解法 319
實(shí)驗(yàn)9 矩陣特征值計算 320
實(shí)驗(yàn)10 函數(shù)優(yōu)化計算 321
參考文獻(xiàn) 323