第1章 预备知识 1
1.1 微积分回顾 1
1.1.1 极限和连续性 1
1.1.2 可微函数 3
1.1.3 积分 5
1.1.4 级数 6
1.1.5 多项式求值 7
1.1.6 习题 9
1.2 二进制数 10
1.2.1 二进制数 10
1.2.2 序列与级数 12
1.2.3 二进制分数 13
1.2.4 二进制移位 15
1.2.5 科学计数法 15
1.2.6 机器数 15
1.2.7 计算机精度 16
1.2.8 计算机浮点数 17
1.2.9 习题 17
1.3 误差分析 19
1.3.1 截断误差 20
1.3.2 舍入误差 20
1.3.3 舍去和舍入 21
1.3.4 精度损失 21
1.3.5 O(hn)阶逼近 23
1.3.6 序列的收敛阶 25
1.3.7 误差传播 25
1.3.8 数据的不确定性 28
1.3.9 习题 29
1.3.10 算法与程序 31
第2章 非线性方程f(x)=0的解法 32
2.1 求解x=g(x)的迭代法 33
2.1.1 寻找不动点 33
2.1.2 不动点迭代的图形解释 36
2.1.3 绝对误差和相对误差考虑 38
2.1.4 习题 39
2.1.5 算法与程序 40
2.2 定位一个根的分类方法 40
2.2.1 波尔查诺二分法 42
2.2.2 试值法的收敛性 45
2.2.3 习题 48
2.2.4 算法与程序 49
2.3 初始近似值和收敛判定准则 49
2.3.1 检测收敛性 50
2.3.2 有问题的函数 53
2.3.3 习题 54
2.3.4 算法与程序 54
2.4 牛顿-拉夫森法和割线法 54
2.4.1 求根的斜率法 54
2.4.2 被零除错误 58
2.4.3 收敛速度 59
2.4.4 缺陷 60
2.4.5 割线法 61
2.4.6 加速收敛 64
2.4.7 习题 66
2.4.8 算法与程序 68
2.5 埃特金过程、斯蒂芬森法和米勒法(选读) 69
2.5.1 埃特金过程 70
2.5.2 米勒法 71
2.5.3 方法之间的比较 72
2.5.4 习题 76
2.5.5 算法与程序 77
第3章 线性方程组AX=B的数值解法 79
3.1 向量和矩阵简介 79
3.1.1 矩阵和二维数组 82
3.1.2 习题 84
3.2 向量和矩阵的性质 85
3.2.1 矩阵乘 86
3.2.2 特殊矩阵 87
3.2.3 非奇异矩阵的逆 87
3.2.4 行列式 88
3.2.5 平面旋转 89
3.2.6 MATLAB实现 91
3.2.7 习题 91
3.2.8 算法与程序 93
3.3 上三角线性方程组 93
3.3.1 习题 96
3.3.2 算法与程序 97
3.4 高斯消去法和选主元 97
3.4.1 选主元以避免a(p) pp=0 102
3.4.2 选主元以减少误差 102
3.4.3 病态情况 104
3.4.4 MATLAB实现 105
3.4.5 习题 106
3.4.6 算法与程序 108
3.5 三角分解法 109
3.5.1 线性方程组的解 110
3.5.2 三角分解法 111
3.5.3 计算复杂性 114
3.5.4 置换矩阵 115
3.5.5 扩展高斯消去过程 116
3.5.6 MATLAB实现 117
3.5.7 习题 119
3.5.8 算法与程序 120
3.6 求解线性方程组的迭代法 121
3.6.1 雅可比迭代 122
3.6.2 高斯-赛德尔迭代法 124
3.6.3 收敛性 126
3.6.4 习题 128
3.6.5 算法与程序 129
3.7 非线性方程组的迭代法:赛德尔法和牛顿法(选读) 130
3.7.1 理论 132
3.7.2 广义微分 133
3.7.3 接近不动点处的收敛性 134
3.7.4 赛德尔迭代 135
3.7.5 求解非线性方程组的牛顿法 136
3.7.6 牛顿法概要 137
3.7.7 MATLAB实现 138
3.7.8 习题 140
3.7.9 算法与程序 143
第4章 插值与多项式逼近 145
4.1 泰勒级数和函数计算 146
4.1.1 多项式计算方法 151
4.1.2 习题 151
4.1.3 算法与程序 154
4.2 插值介绍 155
4.2.1 习题 159
4.2.2 算法与程序 160
4.3 拉格朗日逼近 161
4.3.1 误差项和误差界 164
4.3.2 精度与O(hN+1) 166
4.3.3 MATLAB实现 167
4.3.4 习题 169
4.3.5 算法与程序 171
4.4 牛顿多项式 171
4.4.1 嵌套乘法 172
4.4.2 多项式逼近、节点和中心 172
4.4.3 习题 177
4.4.4 算法与程序 178
4.5 切比雪夫多项式(选读) 179
4.5.1 切比雪夫多项式性质 179
4.5.2 最小上界 181
4.5.3 等距节点 181
4.5.4 切比雪夫节点 182
4.5.5 龙格现象 183
4.5.6 区间变换 183
4.5.7 正交性 184
4.5.8 MATLAB实现 186
4.5.9 习题 187
4.5.10 算法与程序 188
4.6 帕德逼近 188
4.6.1 连分式 191
4.6.2 习题 192
4.6.3 算法与程序 194
第5章 曲线拟合 195
5.1 最小二乘拟合曲线 195
5.1.1 求最小二乘曲线 196
5.1.2 幂函数拟合y=AxM 199
5.1.3 习题 200
5.1.4 算法与程序 202
5.2 曲线拟合 203
5.2.1 y=CeAx的线性化方法 203
5.2.2 求解y=CeAx的非线性最小二乘法 205
5.2.3 数据线性化变换 207
5.2.4 线性最小二乘法 208
5.2.5 矩阵公式 209
5.2.6 多项式拟合 210
5.2.7 多项式摆动 211
5.2.8 习题 213
5.2.9 算法与程序 215
5.3 样条函数插值 216
5.3.1 分段线性插值 216
5.3.2 分段三次样条曲线 217
5.3.3 三次样条的存在性 218
5.3.4 构造三次样条 219
5.3.5 端点约束 220
5.3.6 三次样条曲线的适宜性 225
5.3.7 习题 227
5.3.8 算法与程序 229
5.4 傅里叶级数和三角多项式 230
5.4.1 三角多项式逼近 234
5.4.2 习题 237
5.4.3 算法与程序 238
5.5 贝塞尔曲线 239
5.5.1 伯恩斯坦多项式的性质 239
5.5.2 贝塞尔曲线的性质 241
5.5.3 习题 245
5.5.4 算法与程序 246
第6章 数值微分 247
6.1 导数的近似值 247
6.1.1 差商的极限 247
6.1.2 中心差分公式 249
6.1.3 误差分析和步长优化 251
6.1.4 理查森外推法 254
6.1.5 习题 257
6.1.6 算法与程序 260
6.2 数值差分公式 261
6.2.1 更多的中心差分公式 261
6.2.2 误差分析 262
6.2.3 拉格朗日多项式微分 264
6.2.4 牛顿多项式微分 266
6.2.5 习题 268
6.2.6 算法与程序 270
第7章 数值积分 271
7.1 积分简介 272
7.1.1 习题 278
7.2 组合梯形公式和辛普森公式 280
7.2.1 误差分析 283
7.2.2 习题 287
7.2.3 算法与程序 290
7.3 递归公式与龙贝格积分 291
7.3.1 龙贝格积分 294
7.3.2 习题 299
7.3.2 算法与程序 301
7.4 自适应积分 302
7.4.1 区间细分 302
7.4.2 精度测试 303
7.4.3 算法与程序 307
7.5 高斯-勒让德积分(选读) 308
7.5.1 习题 312
7.5.2 算法与程序 314
第8章 数值优化 315
8.1 单变量函数的极小值 315
8.1.1 分类搜索方法 316
8.1.2 利用导数求极小值 321
8.1.3 习题 329
8.1.4 算法与程序 331
8.2 内德-米德方法和鲍威尔方法 332
8.2.1 内德-米德方法 333
8.2.2 鲍威尔方法 336
8.2.3 习题 342
8.2.4 算法与程序 342
8.3 梯度和牛顿方法 343
8.3.1 最速下降法(梯度方法) 343
8.3.2 牛顿方法 345
8.3.3 习题 351
8.3.4 算法与程序 351
第9章 微分方程求解 353
9.1 微分方程导论 353
9.1.1 初值问题 355
9.1.2 几何解释 355
9.1.3 习题 356
9.2 欧拉方法 358
9.2.1 几何描述 359
9.2.2 步长与误差 360
9.2.3 习题 363
9.2.4 算法与程序 364
9.3 休恩方法 365
9.3.1 步长与误差 366
9.3.2 习题 369
9.3.3 算法与程序 370
9.4 泰勒级数法 371
9.4.1 习题 375
9.4.2 算法与程序 375
9.5 龙格-库塔方法 376
9.5.1 关于该方法的讨论 377
9.5.2 步长与误差 378
9.5.3 N=2的龙格-库塔方法 380
9.5.4 龙格-库塔-费尔伯格方法 382
9.5.5 习题 386
9.5.6 算法与程序 387
9.6 预报-校正方法 388
9.6.1 亚当斯-巴什福斯-莫尔顿方法 389
9.6.2 误差估计与校正 389
9.6.3 实际考虑 390
9.6.4 米尔恩-辛普森方法 390
9.6.5 误差估计与校正 391
9.6.6 正确的步长 392
9.6.7 习题 397
9.6.8 算法与程序 398
9.7 微分方程组 399
9.7.1 数值解 399
9.7.2 高阶微分方程 401
9.7.3 习题 402
9.7.4 算法与程序 403
9.8 边值问题 406
9.8.1 分解为两个初值问题:线性打靶法 407
9.8.2 习题 411
9.8.3 算法与程序 412
9.9 有限差分方法 412
9.9.1 习题 417
9.9.2 算法与程序 418
第10章 偏微分方程数值解 419
10.1 双曲型方程 421
10.1.1 波动方程 421
10.1.2 差分公式 421
10.1.3 初始值 422
10.1.4 达朗贝尔方法 423
10.1.5 给定的两个确定行 423
10.1.6 习题 427
10.1.7 算法与程序 427
10.2 抛物型方程 428
10.2.1 热传导方程 428
10.2.2 差分公式 428
10.2.3 克兰克-尼科尔森法 432
10.2.4 习题 435
10.2.5 算法与程序 436
10.3 椭圆型方程 437
10.3.1 拉普拉斯差分方程 437
10.3.2 建立线性方程组 438
10.3.3 导数边界条件 440
10.3.4 迭代方法 442
10.3.5 泊松方程和亥姆霍茨方程 445
10.3.6 改进 446
10.3.7 习题 447
10.3.8 算法与程序 448
第11章 特征值与特征向量 450
11.1 齐次方程组:特征值问题 450
11.1.1 背景 450
11.1.2 特征值 452
11.1.3 对角化 455
11.1.4 对称性的优势 457
11.1.5 特征值范围估计 458
11.1.6 方法综述 458
11.1.7 习题 459
11.2 幂方法 460
11.2.1 收敛速度 463
11.2.2 移位反幂法 463
11.2.3 习题 468
11.2.4 算法与程序 468
11.3 雅可比方法 469
11.3.1 平面旋转变换 470
11.3.2 相似和正交变换 470
11.3.3 雅可比变换序列 471
11.3.4 一般步骤 472
11.3.5 使dpq和dqp为零 473
11.3.6 一般步骤小结 473
11.3.7 修正矩阵的特征值 474
11.3.8 消去apq的策略 474
11.3.9 习题 477
11.3.10 算法与程序 478
11.4 对称矩阵的特征值 479
11.4.1 Householder法 479
11.4.2 Householder变换 481
11.4.3 三角形式归约 483
11.4.4 QR法 485
11.4.5 加速移位 486
11.4.6 习题 489
11.4.7 算法与程序 490
附录A MATLAB简介 491
部分习题答案 498
中英文术语对照 521