第0章 基础知识 1
0.1 多项式求值 1
0.2 二进制数字 5
0.2.1 将十进制转化为二进制 5
0.2.2 将二进制转化为十进制 6
0.3 实数的浮点表示 7
0.3.1 浮点格式 7
0.3.2 机器表示 10
0.3.3 浮点数加法 12
0.4 有效数字缺失 14
0.5 微积分回顾 18
软件与进一步阅读 21
第1章 求解方程 22
1.1 二分法 22
1.1.1 把根括住 22
1.1.2 多准?多快 25
1.2 不动点迭代 27
1.2.1 函数的不动点 27
1.2.2 不动点迭代几何 30
1.2.3 不动点迭代的线性收敛 31
1.2.4 终止条件 36
1.3 精度的极限 39
1.3.1 前向与后向误差 39
1.3.2 威尔金森多项式 42
1.3.3 根搜索的敏感性 43
1.4 牛顿方法 46
1.4.1 牛顿方法的二次收敛 47
1.4.2 牛顿方法的线性收敛 49
1.5 不需要导数的根求解 54
1.5.1 割线方法及其变体 54
1.5.2 Brent方法 57
事实验证1 Stewart平台运动学 59
软件与进一步阅读 61
第2章 方程组 62
2.1 高斯消去法 62
2.1.1 朴素的高斯消去法 62
2.1.2 操作次数 64
2.2 LU分解 69
2.2.1 高斯消去法的矩阵形式 69
2.2.2 使用LU分解回代 71
2.2.3 LU分解的复杂度 73
2.3 误差来源 75
2.3.1 误差放大和条件数 75
2.3.2 淹没 80
2.4 PA=LU分解 83
2.4.1 部分主元 83
2.4.2 置换矩阵 85
2.4.3 PA=LU分解 86
事实验证2 欧拉-伯努利横梁 91
2.5 迭代方法 94
2.5.1 雅可比方法 94
2.5.2 高斯-塞德尔方法和SOR 96
2.5.3 迭代方法的收敛 99
2.5.4 稀疏矩阵计算 100
2.6 用于对称正定矩阵的方法 105
2.6.1 对称正定矩阵 105
2.6.2 楚列斯基分解 106
2.6.3 共轭梯度方法 109
2.6.4 预条件 113
2.7 非线性方程组 118
2.7.1 多元牛顿方法 118
2.7.2 Broyden方法 120
软件与进一步阅读 123
第3章 插值 124
3.1 数据和插值函数 124
3.1.1 拉格朗日插值 125
3.1.2 牛顿差商 127
3.1.3 经过n个点的d阶多项式有多少 130
3.1.4 插值代码 131
3.1.5 通过近似多项式表示函数 132
3.2 插值误差 136
3.2.1 插值误差公式 136
3.2.2 牛顿形式和误差公式的证明 137
3.2.3 龙格现象 139
3.3 切比雪夫插值 141
3.3.1 切比雪夫理论 141
3.3.2 切比雪夫多项式 143
3.3.3 区间的变化 145
3.4 三次样条 149
3.4.1 样条的性质 150
3.4.2 端点条件 156
3.5 贝塞尔曲线 160
事实验证3利用贝塞尔曲线定义字体 164
软件与进一步阅读 167
第4章 最小二乘 168
4.1 最小二乘与法线方程 168
4.1.1 不一致的方程组 168
4.1.2 数据的拟合模型 172
4.1.3 最小二乘的条件 176
4.2 模型概述 179
4.2.1 周期数据 179
4.2.2 数据线性化 182
4.3 QR分解 188
4.3.1 格拉姆-施密特正交与最小二乘 188
4.3.2 改进的格拉姆-施密特正交 194
4.3.3 豪斯霍尔德反射子 196
4.4 广义最小余项(GMRES)方法 201
4.4.1 Krylov方法 201
4.4.2 预条件GMRES 203
4.5 非线性最小二乘 205
4.5.1 高斯-牛顿方法 205
4.5.2 具有非线性参数的模型 208
4.5.3 Levenberg-Marquardt方法 210
事实验证4 GPS、条件和非线性最小二乘 212
软件与进一步阅读 214
第5章 数值微分和积分 216
5.1 数值微分 216
5.1.1 有限差分公式 216
5.1.2 舍入误差 219
5.1.3 外推 221
5.1.4 符号微分和积分 222
5.2 数值积分的牛顿-科特斯公式 225
5.2.1 梯形法则 226
5.2.2 辛普森法则 227
5.2.3 复合牛顿-科特斯公式 229
5.2.4 开牛顿-科特斯方法 231
5.3 龙贝格积分 234
5.4 自适应积分 237
5.5 高斯积分 241
事实验证5计算机辅助建模中的运动控制 245
软件与进一步阅读 247
第6章 常微分方程 248
6.1 初值问题 248
6.1.1 欧拉方法 250
6.1.2 解的存在性、唯一性和连续性 254
6.1.3 一阶线性方程 256
6.2 IVP求解器的分析 258
6.2.1 局部和全局截断误差 258
6.2.2 显式梯形方法 262
6.2.3 泰勒方法 264
6.3 常微分方程组 266
6.3.1 高阶方程 267
6.3.2 计算机仿真:钟摆 268
6.3.3 计算机仿真:轨道力学 271
6.4 龙格-库塔方法和应用 276
6.4.1 龙格-库塔家族 276
6.4.2 计算机仿真:Hodgkin-Huxley神经元 278
6.4.3 计算机仿真:Lorenz方程 281
事实验证6 Tacoma Narrows大桥 283
6.5 可变步长方法 286
6.5.1 龙格-库塔嵌入对 286
6.5.2 4/5阶方法 288
6.6 隐式方法和刚性方程 292
6.7 多步方法 295
6.7.1 构造多步方法 295
6.7.2 显式多步方法 298
6.7.3 隐式多步方法 301
软件与进一步阅读 305
第7章 边值问题 306
7.1 打靶方法 306
7.1.1 边值问题的解 306
7.1.2 打靶方法的实现 309
事实验证7 圆环的扭曲 312
7.2 有限差分方法 314
7.2.1 线性边值问题 314
7.2.2 非线性边值问题 316
7.3 排列与有限元方法 321
7.3.1 排列 321
7.3.2 有限元以及Galerkin方法 323
软件与进一步阅读 328
第8章 偏微分方程 329
8.1 抛物线方程 329
8.1.1 前向差分方法 330
8.1.2 前向差分方法的稳定分析 332
8.1.3 后向差分方法 334
8.1.4 Crank-Nicolson方法 338
8.2 双曲线方程 344
8.2.1 波动方程 345
8.2.2 CFL条件 347
8.3 椭圆方程 349
8.3.1 椭圆方程的有限差分方法 351
事实验证8冷却散热片的热分布 355
8.3.2 椭圆方程的有限元方法 357
8.4 非线性偏微分方程 366
8.4.1 隐式牛顿求解器 367
8.4.2 二维空间中的非线性方程 372
软件与进一步阅读 378
第9章 随机数和应用 380
9.1 随机数 380
9.1.1 伪随机数 381
9.1.2 指数和正态随机数 385
9.2 蒙特卡罗模拟 387
9.2.1 幂律和蒙特卡罗模拟 387
9.2.2 拟随机数 389
9.3 离散和连续布朗运动 392
9.3.1 随机游走 393
9.3.2 连续布朗运动 394
9.4 随机微分方程 397
9.4.1 有噪声的微分方程 397
9.4.2 数值方法求解SDE 399
事实验证9 Black-Scholes公式 405
软件与进一步阅读 407
第10章 三角插值和FFT 408
10.1 傅里叶变换 408
10.1.1 复数算术 408
10.1.2 离散傅里叶变换 410
10.1.3 快速傅里叶变换 413
10.2 三角插值 415
10.2.1 DFT插值定理 415
10.2.2 三角插值函数的效率 418
10.3 FFT和信号处理 421
10.3.1 正交性和插值 421
10.3.2 用三角函数进行最小二乘拟合 424
10.3.3 声音、噪声和滤波 427
事实验证10维纳滤波 429
软件与进一步阅读 431
第11章 压缩 432
11.1 离散余弦变换 432
11.1.1 一维DCT 432
11.1.2 DCT变换和最小二乘近似 435
11.2 二维DCT和图像压缩 437
11.2.1 二维DCT 437
11.2.2 图像压缩 440
11.2.3 量化 443
11.3 霍夫曼编码 449
11.3.1 信息论和编码 449
11.3.2 JPEG格式中的霍夫曼编码 452
11.4 改进的DCT和音频压缩 454
11.4.1 改进的DCT 455
11.4.2 位量化 460
事实验证11 一个简单的音频编解码器 462
软件与进一步阅读 464
第12章 特征值与奇异值 465
12.1 幂迭代方法 465
12.1.1 幂迭代 466
12.1.2 幂迭代的收敛 468
12.1.3 幂迭代的逆 469
12.1.4 瑞利商迭代 470
12.2 QR算法 472
12.2.1 同时迭代 472
12.2.2 实数舒尔形式和QR算法 475
12.2.3 上海森伯格形式 477
事实验证12搜索引擎如何评价页面质量 481
12.3 奇异值分解 484
12.3.1 找出一般的SVD 486
12.3.2 特例:对称矩阵 487
12.4 SVD的应用 489
12.4.1 SVD的性质 489
12.4.2 降维 490
12.4.3 压缩 492
12.4.4 计算SVD 493
软件与进一步阅读 494
第13章 最优化 496
13.1 不使用导数的无约束优化 497
13.1.1 黄金分割搜索 497
13.1.2 持续的抛物线插值 500
13.1.3 Nelder-Mead搜索 502
13.2 使用导数的无约束优化 505
13.2.1 牛顿方法 505
13.2.2 最速下降 507
13.2.3 共轭梯度搜索 507
事实验证13分子形态和数值优化 509
软件与进一步阅读 511
附录A 矩阵代数 512
附录B MATLAB介绍 518
部分习题答案 527
参考文献 558
索引 569