第6版前言
本书第5版已经出版17年了,在此期间,深度学习、机器学习、大数据等与数学及计算机技术密切相关的人工智能分支都取得了突飞猛进的发展,数值分析的重要性也愈发凸显,开设“数值分析”课程的专业也逐渐增多,这些对“数值分析”课程提出了新的要求,为此,有必要对《数值分析》第5版进行适当的修改,以适应新的形势及新的变革.
数值分析涉及两方面的内容:一个是理论层面,包括解决一个数学问题的数值算法的原理阐述、收敛性、稳定性的分析等内容;另一个是实践层面,包括算法的具体实现,这涉及程序的编写和调试,具体算例的输入和输出等.在一般的教学环节(讲授、练习、考查等)中大多侧重于理论层面,而对实践层面的重视程度是不够的. 但数值分析这门课程是实践性很强的课程, 读者在需要具体实现某个算法的时候,可能就要自己查找相关的资料了. 为了弥补这方面的不足,此次修订对于各章中的主要算法给出了算法的MATLAB程序. 选择用MATLAB语言来编程,是因为MATLAB是最接近数学演算的科学计算语言, 其表达形式与框图的差距比较小,这样做既便于读者用这些程序来演练书中的算例, 也有助于读者对算法的理解,以及关注编程过程中要注意的问题,同时,还给出了一些例题的MATLAB程序及运算结果,同时为了便于读者使用MATLAB的内置函数,对于可以用内置函数实现的例题,也给出了内置函数的实现方式. 但限于教材的篇幅,将这部分内容放在云盘上,读者可以扫描各章末尾处的二维码获取.
在第5版中,图、表的编号是按章排序的, 因此图、表的编号是唯一的;但定义、定理、例的编号是各章独自排序的,没有反映出章的信息,因此一些编号是重复的; 公式的编号是各节独自排序的,也没有反映出章的信息,重复的编号更多. 为了使图、表、定义、定理、例、公式的编号唯一,此次修订将定义、定理、例、公式的编号均按章排序,并删去了后续表述中没有被引用的公式编号.
对几个回顾性质的概念,在表述时对其突出程度进行了调整,由原来赋予定义编号的突出方式,改为不赋予定义编号而在段中直接表述的一般方式,比如有效数字、线性相关、线性无关、特征值、特征向量等,而有的概念由原来不赋予定义编号而在段中直接表述的方式,改成赋予定义编号的突出方式,比如条件数.
对一些后续没有直接引用的内容进行了删减(如若当标准型定理);添加了一些有助于丰富理论依据的内容(如格拉姆施密特正交化方法). 出于内容衔接方面的考虑,对一些内容进行了移位,例如,将向量的范数与一般的范数内容合并在一起讲述;前移了关于格拉姆矩阵的定理;前移对称矩阵的特征值和特征向量的定理,为推导矩阵的2范数的表示形式提供理论依据;将对角占优矩阵的定义及其性质由迭代法收敛性部分移到追赶法前,为所讨论的三对角线方程组的解存在唯一提供理论依据;将矩阵的特征多项式的内容后移到矩阵的特征值和特征向量部分. 为了更直观地帮助读者理解所讲述的内容,添加了几张图和表,如在二维向量空间中几种单位范数所对应的图像,一些函数及其最佳平方逼近多项式的对照,最小二乘函数的选择过程,泰勒展开近似与帕德逼近的对比图,二元情形线性方程组的迭代法的几何背景,二元情形共轭梯度法的空间表示,多元非线性方程组解的复杂性展示等. 为了便于读者反向查阅,在书后安排了索引;另外,修改了一些表述,更正了一些例题中的数据.
如果学时不足,可略去加星号“”的小节.
本书的修订是在清华大学出版社及责任编辑刘颖博士的推动和支持下完成的, 在此对他们的支持和帮助表示衷心感谢.
本书第5版曾收到一些读者反馈的勘误信息,使存在的问题得以及时修正. 希望使用本书的老师和同学对本书存在的问题给予批评指正.
李庆扬
2024年11月