數值方法(MATLAB版)(第四版)
本書介紹了數值方法的理論及實用知識,并講述了如何利用MATLAB軟件實現各種數值算法,以便為讀者今后的學習打下堅實的數值分析與科學計算基礎。教師可以根據不同的學習對象和學習目的選擇相應章節,形成理論與實踐相結合的學習策略。書中每個概念均以實例說明,同時還包含大量習題,范圍涉及多個不同領域。 通過這些實例進一步說明數值方法的實際應用。本書強調利用MATLAB進行數值方法的程序設計,可提高讀者的實踐能力并加深對數值方法理論的理解。本書適合作為大專院校計算機、 工程和應用數學專業的教材和參考書。根據作者在網站上公布的勘誤表,中譯本已做了相應修改。采用本書作為教材的教師,可聯系te_service@phei.com.cn獲取相關教輔資料。
第1章 ?預備知識
1.1 ?微積分回顧
1.1.1 ?極限和連續性
1.1.2 ?可微函數
1.1.3 ?積分
1.1.4 ?級數
1.1.5 ?多項式求值
1.1.6 ?習題
1.2 ?二進制數
1.2.1 ?二進制數
1.2.2 ?序列與級數
1.2.3 ?二進制分數
1.2.4 ?二進制移位
1.2.5 ?科學計數法
1.2.6 ?機器數
1.2.7 ?計算機精度
1.2.8 ?計算機浮點數
1.2.9 ?習題
1.3 ?誤差分析
1.3.1 ?截斷誤差
1.3.2 ?舍入誤差
1.3.3 ?舍去和舍入
1.3.4 ?精度損失
1.3.5 ?O(hn)階逼近
1.3.6 ?序列的收斂階
1.3.7 ?誤差傳播
1.3.8 ?數據的不確定性
1.3.9 ?習題
1.3.10算法與程序
第2章 ?非線性方程f(x)=0的解法
2.1 ?求解x=g(x)的迭代法
2.1.1 ?尋找不動點
2.1.2 ?不動點迭代的圖形解釋
2.1.3 ?考慮絕對誤差和相對誤差
2.1.4 ?習題
2.1.5 ?算法與程序
2.2 ?定位一個根的分類方法
2.2.1 ?波爾查諾二分法
2.2.2 ?試值法的收斂性
2.2.3 ?習題
2.2.4 ?算法與程序
2.3 ?初始近似值和收斂判定準則
2.3.1 ?檢測收斂性
2.3.2 ?有問題的函數
2.3.3 ?習題
2.3.4 ?算法與程序
2.4 ?牛頓拉夫森法和割線法
2.4.1 ?求根的斜率法
2.4.2 ?被零除錯誤
2.4.3 ?收斂速度
2.4.4 ?缺陷
2.4.5 ?割線法
2.4.6 ?加速收斂
2.4.7 ?習題
2.4.8 ?算法與程序
2.5 ?埃特金過程、斯蒂芬森法和
米勒法(選讀)
2.5.1 ?埃特金過程
2.5.2 ?米勒法
2.5.3 ?方法之間的比較
2.5.4 ?習題
2.5.5 ?算法與程序
第3章 ?線性方程組AX=B的數值解法
3.1 ?向量和矩陣簡介
3.1.1 ?矩陣和二維數組
3.1.2 ?習題
3.2 ?向量和矩陣的性質
3.2.1 ?矩陣乘
3.2.2 ?特殊矩陣
3.2.3 ?非奇異矩陣的逆
3.2.4 ?行列式
3.2.5 ?平面旋轉
3.2.6 ?MATLAB實現
3.2.7 ?習題
3.2.8 ?算法與程序
3.3 ?上三角線性方程組
3.3.1 ?習題
3.3.2 ?算法與程序
3.4 ?高斯消去法和選主元
3.4.1 ?選主元以避免a(p)pp=0
3.4.2 ?選主元以減少誤差
3.4.3 ?病態情況
3.4.4 ?MATLAB實現
3.4.5 ?習題
3.4.6 ?算法與程序
3.5 ?三角分解法
3.5.1 ?線性方程組的解
3.5.2 ?三角分解法
3.5.3 ?計算復雜性
3.5.4 ?置換矩陣
3.5.5 ?擴展高斯消去過程
3.5.6 ?MATLAB實現
3.5.7 ?習題
3.5.8 ?算法與程序
3.6 ?求解線性方程組的迭代法
3.6.1 ?雅可比迭代
3.6.2 ?高斯賽德爾迭代法
3.6.3 ?收斂性
3.6.4 ?習題
3.6.5 ?算法與程序
3.7 ?非線性方程組的迭代法:賽德爾法和牛頓法(選讀)
3.7.1 ?理論
3.7.2 ?廣義微分
3.7.3 ?接近不動點處的收斂性
3.7.4 ?賽德爾迭代
3.7.5 ?求解非線性方程組的
牛頓法
3.7.6 ?牛頓法概要
3.7.7 ?MATLAB實現
3.7.8 ?習題
3.7.9 ?算法與程序
第4章 ?插值與多項式逼近
4.1 ?泰勒級數和函數計算
4.1.1 ?多項式計算方法
4.1.2 ?習題
4.1.3 ?算法與程序
4.2 ?插值介紹
4.2.1 ?習題
4.2.2 ?算法與程序
4.3 ?拉格朗日逼近
4.3.1 ?誤差項和誤差界
4.3.2 ?精度與O(hN+1)
4.3.3 ?MATLAB實現
4.3.4 ?習題
4.3.5 ?算法與程序
4.4 ?牛頓多項式
4.4.1 ?嵌套乘法
4.4.2 ?多項式逼近、節點和中心
4.4.3 ?習題
4.4.4 ?算法與程序
4.5 ?切比雪夫多項式(選讀)
4.5.1 ?切比雪夫多項式性質
4.5.2 ?最小上界
4.5.3 ?等距節點
4.5.4 ?切比雪夫節點
4.5.5 ?龍格現象
4.5.6 ?區間變換
4.5.7 ?正交性
4.5.8 ?MATLAB實現
4.5.9 ?習題
4.5.10算法與程序
4.6 ?帕德逼近
4.6.1 ?連分式
4.6.2 ?習題
4.6.3 ?算法與程序
第5章 ?曲線擬合
5.1 ?最小二乘擬合曲線
5.1.1 ?求最小二乘曲線
5.1.2 ?冪函數擬合y=AxM
5.1.3 ?習題
5.1.4 ?算法與程序
5.2 ?曲線擬合
5.2.1 ?y=CeAx的線性化方法
5.2.2 ?求解y=CeAx的非線性最小
二乘法
5.2.3 ?數據線性化變換
5.2.4 ?線性最小二乘法
5.2.5 ?矩陣公式
5.2.6 ?多項式擬合
5.2.7 ?多項式擺動
5.2.8 ?習題
5.2.9 ?算法與程序
5.3 ?樣條函數插值
5.3.1 ?分段線性插值
5.3.2 ?分段三次樣條曲線
5.3.3 ?三次樣條的存在性
5.3.4 ?構造三次樣條
5.3.5 ?端點約束
5.3.6 ?三次樣條曲線的適宜性
5.3.7 ?習題
5.3.8 ?算法與程序
5.4 ?傅里葉級數和三角多項式
5.4.1 ?三角多項式逼近
5.4.2 ?習題
5.4.3 ?算法與程序
5.5 ?貝塞爾曲線
5.5.1 ?伯恩斯坦多項式的性質
5.5.2 ?貝塞爾曲線的性質
5.5.3 ?習題
5.5.4 ?算法與程序
第6章 ?數值微分
6.1 ?導數的近似值
6.1.1 ?差商的極限
6.1.2 ?中心差分公式
6.1.3 ?誤差分析和步長優化
6.1.4 ?理查森外推法
6.1.5 ?習題
6.1.6 ?算法與程序
6.2 ?數值差分公式
6.2.1 ?更多的中心差分公式
6.2.2 ?誤差分析
6.2.3 ?拉格朗日多項式微分
6.2.4 ?牛頓多項式微分
6.2.5 ?習題
6.2.6 ?算法與程序
第7章 ?數值積分
7.1 ?積分簡介
7.1.1 ?習題
7.2 ?組合梯形公式和辛普森公式
7.2.1 ?誤差分析
7.2.2 ?習題
7.2.3 ?算法與程序
7.3 ?遞歸公式與龍貝格積分
7.3.1 ?龍貝格積分
7.3.2 ?習題
7.3.3 ?算法與程序
7.4 ?自適應積分
7.4.1 ?區間細分
7.4.2 ?精度測試
7.4.3 ?算法與程序
7.5 ?高斯勒讓德積分(選讀)
7.5.1 ?習題
7.5.2 ?算法與程序
第8章 ?數值優化
8.1 ?單變量函數的極小值
8.1.1 ?分類搜索方法
8.1.2 ?利用導數求極小值
8.1.3 ?習題
8.1.4 ?算法與程序
8.2 ?內德米德方法和鮑威爾方法
8.2.1 ?內德米德方法
8.2.2 ?鮑威爾方法
8.2.3 ?習題
8.2.4 ?算法與程序
8.3 ?梯度和牛頓方法
8.3.1 ?最速下降法(梯度方法)
8.3.2 ?牛頓方法
8.3.3 ?習題
8.3.4 ?算法與程序
第9章 ?微分方程求解
9.1 ?微分方程導論
9.1.1 ?初值問題
9.1.2 ?幾何解釋
9.1.3 ?習題
9.2 ?歐拉方法
9.2.1 ?幾何描述
9.2.2 ?步長與誤差
9.2.3 ?習題
9.2.4 ?算法與程序
9.3 ?休恩方法
9.3.1 ?步長與誤差
9.3.2 ?習題
9.3.3 ?算法與程序
9.4 ?泰勒級數法
9.4.1 ?習題
9.4.2 ?算法與程序
9.5 ?龍格庫塔方法
9.5.1 ?關于該方法的討論
9.5.2 ?步長與誤差
9.5.3 ?N=2的龍格庫塔方法
9.5.4 ?龍格庫塔費爾伯格方法
9.5.5 ?習題
9.5.6 ?算法與程序
9.6 ?預報校正方法
9.6.1 ?亞當斯巴什福斯莫爾頓
方法
9.6.2 ?誤差估計與校正
9.6.3 ?實際考慮
9.6.4 ?米爾恩辛普森方法
9.6.5 ?誤差估計與校正
9.6.6 ?正確的步長
9.6.7 ?習題
9.6.8 ?算法與程序
9.7 ?微分方程組
9.7.1 ?數值解
9.7.2 ?高階微分方程
9.7.3 ?習題
9.7.4 ?算法與程序
9.8 ?邊值問題
9.8.1 ?分解為兩個初值問題:線性打靶法
9.8.2 ?習題
9.8.3 ?算法與程序
9.9 ?有限差分方法
9.9.1 ?習題
9.9.2 ?算法與程序
第10章 ?偏微分方程數值解
10.1 ?雙曲型方程
10.1.1 ?波動方程
10.1.2 ?差分公式
10.1.3 ?初始值
10.1.4 ?達朗貝爾方法
10.1.5 ?給定的兩個確定行
10.1.6 ?習題
10.1.7 ?算法與程序
10.2 ?拋物型方程
10.2.1 ?熱傳導方程
10.2.2 ?差分公式
10.2.3 ?克蘭克尼科爾森法
10.2.4 ?習題
10.2.5 ?算法與程序
10.3 ?橢圓型方程
10.3.1 ?拉普拉斯差分方程
10.3.2 ?建立線性方程組
10.3.3 ?導數邊界條件
10.3.4 ?迭代方法
10.3.5 ?泊松方程和亥姆霍茨方程
10.3.6 ?改進
10.3.7 ?習題
10.3.8 ?算法與程序
第11章 ?特征值與特征向量
11.1 ?齊次方程組:特征值問題
11.1.1 ?背景
11.1.2 ?特征值
11.1.3 ?對角化
11.1.4 ?對稱性的優勢
11.1.5 ?特征值范圍估計
11.1.6 ?方法綜述
11.1.7 ?習題
11.2 ?冪方法
11.2.1 ?收斂速度
11.2.2 ?移位反冪法
11.2.3 ?習題
11.2.4 ?算法與程序
11.3 ?雅可比方法
11.3.1 ?平面旋轉變換
11.3.2 ?相似和正交變換
11.3.3 ?雅可比變換序列
11.3.4 ?一般步驟
11.3.5 ?使dpq和dqp為零
11.3.6 ?一般步驟小結
11.3.7 ?修正矩陣的特征值
11.3.8 ?消去apq的策略
11.3.9 ?習題
11.3.10算法與程序
11.4 ?對稱矩陣的特征值
11.4.1 ?Householder法
11.4.2 ?Householder變換
11.4.3 ?三角形式歸約
11.4.4 ?QR法
11.4.5 ?加速移位
11.4.6 ?習題
11.4.7 ?算法與程序
附錄A ?MATLAB簡介
部分習題答案
中英文術語對照