第1章 绪论 1
1.1 概述 1
1.2 数值计算的误差 2
1.2.1 误差的来源 2
1.2.2 误差的概念 2
1.2.3 函数值的误差估计 4
1.3 误差定性分析与避免误差危害 6
1.3.1 算法的数值稳定性 6
1.3.2 病态数学问题与条件数 8
1.3.3 避免误差危害的若干原则 8
评注 11
习题 11
实验题 12
第2章 线性方程组的直接解法 13
2.1 引言 13
2.1.1 引例 13
2.1.2 预备知识 15
2.2 高斯消去法 18
2.2.1 高斯消去法的算法公式 19
2.2.2 高斯消去法的可行性与运算量 22
2.2.3 高斯变换约化 24
2.3 高斯主元素消去法 26
2.3.1 列主元素消去法 27
2.3.2 行主元素消去法 28
2.3.3 完全主元素消去法 28
2.3.4 列主元素高斯-约当消去法 31
2.4 矩阵的三角分解 34
2.4.1 直接三角分解法 34
2.4.2 列主元素三角分解法 39
2.4.3 平方根法 41
2.4.4 追赶法 46
2.5 向量和矩阵的范数 48
2.5.1 向量序列的极限 48
2.5.2 向量的范数 49
2.5.3 矩阵的范数 51
2.6 矩阵的条件数与直接法的误差分析 53
2.6.1 线性方程组的误差分析 54
2.6.2 矩阵的条件数及其性质 56
2.6.3 病态方程组的处理 58
评注 60
习题 61
实验题 62
第3章 线性方程组的迭代解法 64
3.1 引言 64
3.2 基本迭代法 64
3.2.1 雅可比迭代法 64
3.2.2 高斯-赛德尔迭代法 69
3.2.3 逐次超松弛迭代法 74
3.3 迭代法的收敛性 77
3.3.1 迭代法的收敛性判别 78
3.3.2 特殊方程组的迭代法的收敛性 80
3.3.3 迭代法的收敛速度 83
3.4 稀疏方程组及Matlab实现 83
3.4.1 分块迭代法 84
3.4.2 Matlab的稀疏矩阵简介 85
评注 88
习题 88
实验题 90
第4章 非线性方程(组)的数值解法 92
4.1 引言 92
4.1.1 人口增长模型 92
4.1.2 数值求解方程(组)的必要性 93
4.1.3 方程求根的理论依据 93
4.2 二分法 95
4.3 迭代法及其收敛性 97
4.3.1 不动点迭代法 97
4.3.2 迭代法的收敛性 99
4.3.3 局部收敛性与收敛阶 101
4.3.4 迭代算法与Matlab程序 103
4.4 迭代收敛的加速方法 104
4.4.1 埃特金加速法 104
4.4.2 斯蒂芬森迭代法 105
4.5 牛顿迭代法 108
4.5.1 牛顿迭代法及其收敛性 108
4.5.2 简化牛顿法与牛顿下山法 110
4.5.3 割线法 112
4.5.4 求重根的修正牛顿法 114
4.6 非线性方程组的数值解法 115
4.6.1 简单迭代法 115
4.6.2 牛顿法 117
4.6.3 最速下降法 122
4.7 求解非线性方程(组)的Matlab函数 123
4.7.1 solve函数 123
4.7.2 fzero函数 124
4.7.3 fsolve函数 126
评注 128
习题 129
实验题 130
第5章 插值法 132
5.1 引言 132
5.2 拉格朗日插值 134
5.2.1 线性插值与抛物插值 134
5.2.2 n次拉格朗日插值 135
5.2.3 插值余项与误差估计 136
5.3 差商与牛顿插值 139
5.3.1 差商的概念和性质 140
5.3.2 牛顿插值公式 140
5.3.3 插值余项与误差估计 142
5.4 差分与等距节点插值 144
5.4.1 差分的概念和性质 144
5.4.2 等距节点插值公式 145
5.5 埃尔米特插值 149
5.5.1 埃尔米特插值多项式的存在唯一性 149
5.5.2 埃尔米特插值余项 150
5.5.3 三次埃尔米特插值多项式 151
5.6 分段低次插值 153
5.6.1 高次插值的病态性质 153
5.6.2 分段低次插值方法 155
5.6.3 分段低次插值余项 155
5.7 三次样条插值 158
5.7.1 三次样条插值函数 159
5.7.2 三弯矩法 160
5.7.3 三次样条插值函数的收敛性与误差估计 162
5.8 插值运算的Matlab函数 164
5.8.1 一维插值函数 164
5.8.2 高维插值函数 168
评注 170
习题 171
实验题 172
第6章 函数逼近 175
6.1 引言 175
6.1.1 科学计算中的两类逼近问题 175
6.1.2 已学过的多项式逼近方法 175
6.1.3 函数逼近的基本问题 175
6.2 最佳一致逼近 177
6.2.1 最佳一致逼近问题 177
6.2.2 最佳一致逼近多项式的存在唯一性 177
6.2.3 最佳一致逼近多项式的解法 180
6.3 切比雪夫多项式及其应用 180
6.3.1 正交多项式 180
6.3.2 切比雪夫多项式及其性质 181
6.3.3 f(x)为多项式时的逼近方法 183
6.3.4 近似最佳一致逼近算法 183
6.4 最佳平方逼近 186
6.4.1 最佳平方逼近多项式及其计算 186
6.4.2 正交多项式 189
6.4.3 正交多项式族作最佳平方逼近 192
6.5 离散数据的最小二乘法 195
6.5.1 最小二乘解的计算 195
6.5.2 常用的多项式拟合 196
6.6 离散数据拟合的Matlab函数 199
6.6.1 polyfit 199
6.6.2 lsqcurvefit 200
6.6.3 lsqnonlin 200
6.6.4 nlinfit 201
评注 201
习题 202
实验题 203
第7章 数值积分与数值微分 205
7.1 引言 205
7.2 牛顿-柯特斯求积公式 207
7.2.1 牛顿-柯特斯求积公式 207
7.2.2 截断误差 208
7.2.3 代数精度 210
7.2.4 求积公式的收敛性与稳定性 210
7.3 复化求积公式 211
7.3.1 复化梯形公式 211
7.3.2 复化辛普森公式 212
7.3.3 复化柯特斯公式 212
7.3.4 复化求积公式的截断误差 213
7.3.5 计算机算法 214
7.4 龙贝格求积公式 216
7.4.1 梯形公式的递推化 216
7.4.2 龙贝格算法 218
7.5 自适应辛普森求积公式 222
7.6 高斯求积公式 225
7.6.1 高斯求积公式简介 225
7.6.2 高斯求积公式的截断误差及稳定性、收敛性 226
7.6.3 常用的高斯求积公式 228
7.7 二重积分 232
7.7.1 复化辛普森求积公式 233
7.7.2 二重积分的高斯求积公式 234
7.7.3 蒙特卡罗方法 235
7.8 数值微分 237
7.8.1 差商求导方法 237
7.8.2 插值型求导方法 239
7.8.3 数值微分的外推算法 241
7.8.4 Matlab的微分函数 242
7.9 数值积分的Matlab函数 242
7.9.1 常用的Matlab函数 242
7.9.2 广义积分的数值方法 244
评注 247
习题 247
实验题 249
第8章 常微分方程数值解法 250
8.1 引言 250
8.2 一阶初值问题的欧拉方法 252
8.2.1 欧拉方法 252
8.2.2 后退的欧拉方法 253
8.2.3 梯形方法 254
8.2.4 改进的欧拉方法 254
8.3 龙格-库塔方法 259
8.4 单步法的收敛性与稳定性 262
8.4.1 收敛性 262
8.4.2 数值稳定性 264
8.5 线性多步法 266
8.5.1 Adams方法 267
8.5.2 一般线性多步法 269
8.6 高阶方程与一阶方程组初值问题 274
8.6.1 高阶方程初值问题 274
8.6.2 一阶方程组初值问题 274
8.7 刚性问题 277
8.8 边值问题 280
8.8.1 打靶法 280
8.8.2 有限差分法 282
8.9 求解常微分方程的Matlab函数 286
评注 291
习题 292
实验题 293
第9章 矩阵特征问题的数值计算 295
9.1 引言 295
9.2 幂法 296
9.2.1 幂法算法 296
9.2.2 改进的幂法 297
9.2.3 加速技巧 299
9.3 反幂法 302
9.4 QR方法 304
9.4.1 矩阵的两种正交变换 304
9.4.2 QR算法 308
评注 313
习题 313
实验题 314
习题答案 316
参考文献 330