×

数值方法。原理、分析和算法。 (英语) Zbl 1196.65001号

牛津:牛津大学出版社(ISBN 978-0-19-569375-1/pbk)。xii,第812页。(2009).
这本写得很好的书是为任何分支的工科学生设计的,它是基于作者在过去二十年中所开设的本科课程。
这本812页长的专著由23章组成,分为几个部分。该文本由许多图表、流程图、所述方法的分步步骤和编程文本完成。读者将在所有章节中找到大量任何分支的练习和解决的示例。这本书的结尾是一个相对简短的参考书目,只包括专著标题、一个包含最重要概念的索引,以及对课后练习的一些回答。历史评论被整合在文本中。
除了基本概念,如数字系统、误差及其传播,以及对最重要的编程语言和一些编程工具的特性的简短介绍之外,本书还包含代数和超越方程、插值和外推的数值方法,对于线性代数应用(线性方程组、最小二乘、特征值和特征向量问题的直接和迭代算法),对于非线性方程组,对于数值微分和积分,对于常微分方程的初值和边值问题,以及对于抛物线,双曲型和椭圆型微分方程。并行计算、使用神经网络处理数值问题、所谓的神经计算和差分方程的求解是最后三章的主题。
无需事先了解该科目。从基础课文开始,为初学者提供越来越多的高级主题。
为了突出数值方法的主题,作者在前言中已经区分了“数学家的数”和根据实现的“构造方法”在计算机计算结果中使用的具有有限精度算法的数。作者将“构造方法”的概念用于数学的这一部分,该部分通过实际计算提供结果,与仅说明解的存在性而不提供任何结果查找方法的定理不同。考虑到“构造方法”中的有限精度算法,给出了数值方法。作者明确建议不要不加批判地使用“建设性方法”。(按照作者的想法,人们可能会觉得数值方法不是数学的一部分。没有使用数值数学的概念。)
与这些引言相对应的是,第一章专门讨论了数制的基本概念。广泛描述了“数学家的数字”与用有限精度算术进行数字逼近的区别。考虑了二进制、十进制、八进制和十六进制数字系统,它们的转换及其在计算机中的表示。处理当数字超过计算机格式的存储容量时发生的上溢和下溢。详细描述了定点和浮点表示中有限精度算术的有符号加法、减法、乘法和除法规则,包括单、双、,以及由IEEE、IBM和VAX定义的实际计算机编号系统的扩展精度。
在第二章中,作者指出,数值方法的主题不仅仅是“构造算法”的应用,还包括计算机算法的考虑。也就是说,举例来说,通过计算机中的有限级数逼近收敛的无限数学级数,通过数学上等价的公式在无限精度下给出完全相同的结果,在有限精度下给出不同的解,等等。总结了一些避免错误结果的实用指南。描述了绝对误差和相对误差的含义。
在前两章中,描述了由有限精度算法、在有限级数中只考虑有限数量的项等引起的不精确结果,如果将这些数字用于进一步的步骤,则会传播这些结果。因此,必须测量这种不精确性。这是第三章的主题。描述了影响结果精度的一些误差,例如建模、测量、截断误差、舍入和残差。证明了有限精度表示中误差的传播。考虑了扩展精度、正向和反向误差分析、误差界和常规舍入的方法。
第4章专门介绍编程语言和工具。介绍了算法的概念。从描述计算方案的流程图开始,作者介绍了最著名的编程语言BASIC、PASCAL、FORTRAN、C、C++、COBOL的特点,以及编程工具MATLAB、数值和数学符号计算交互式问题解决系统MATHEMATICA、,Lotus-1-2-3或Excel等工作表,以及Fox Pro/Dbase编程。对于简单的例子,读者将分别找到上述语言或工具的流程图和相应的编程文本或作业。
第5章着重于代数方程和超越方程的求解,从平分法、正则法尔西法及其变体——里德尔法开始。本章对这些算法以及以下大多数算法进行了几何解释。描述了一般迭代方法。此外,读者将找到一种线性迭代方法,包括具有收敛性证明的充分条件、误差估计和舍入误差处理,以及Aitken、Newton-Raphson、Kizner和Brent的方法。
下一节的主题是寻找多项式方程的根。举例说明了病态多项式的问题。描述了多项式的求值、Horner格式、压缩和迭代方法,如割线、Newton-Raphson和Lehmer方法。讨论了复根的Bairstov-Hitchcook方法、Laguerre和Müller算法、Bernoulli程序、Graeff的平方根方法和商-微分算法,最后包括稳定性分析和存储要求。
第6章讨论了用直接方法求解线性方程组的数值解。关于齐次方程是有平凡解还是有无穷多个解的定理,以及非齐次方程有无限多个解、否或唯一解的定理在介绍部分中进行了阐述。从三角系统的高斯消元和后向代换开始,用一般矩阵的前向代换进行消元,包括部分旋转、误差和灵敏度分析、条件数估计、迭代求精以及Crout和Doolittle的因式分解修正,并开发了具有行平衡的威尔金森算法。给出了与Gauss-Jordan方法的比较。简要描述了正定对称矩阵的Cholesky分解,它将计算工作量减半,并使用相应的实阶系统(2n)求解复杂的线性方程组。
所有方法都很成熟,但不包括使用现代计算机存储层次结构(缓存)的消除方法的有效修改。缺少对相应基本软件包(如BLAS和LAPACK)的提示。第7章、第9章和第11章也是如此。此外,也没有涵盖通过直接方法处理一般稀疏矩阵。
基于Gauss-Jordan算法,第7章将矩阵反演视为两个阵列和一个就地方法,包括无部分旋转和有部分旋转,包括三角矩阵和复矩阵的反演,最后使用实数算法。对于(A<1)情形,证明了矩阵求逆的迭代过程。
大型线性系统由于其高计算时间和存储要求,无法通过直接方法求解。因此,第8章重点介绍了迭代方法,这些方法也非常适用于稀疏矩阵,因为在迭代过程中原始矩阵不会改变。推导了Jacobi、Gauss-Seidel和逐次过松弛(SOR)的点迭代方法和块迭代方法(对于划分为\(m)阶一致块的\((n,n)\)矩阵)。给出了保证方法收敛的矩阵条件的提示。根据乘法次数,对直接迭代法、点迭代法和块迭代法进行了比较。讨论了一些计算技术,如在块迭代算法的每次迭代中用直接方法求解较小尺寸的(m)线性系统。
不包括诸如Krylov子空间算法(如GMRES、CG或BiCGSTAB)、预处理、多重网格方法或相应软件包的提示等现代方法。
线性最小二乘问题在第9章中讨论。对于超定系统(Ax=b\),其中(A\)是一个((m,n)矩阵,(m>n\),需要找到一个向量(x\),它使函数({\rho}^2(x)={\|b-Ax\|}_2^2)最小化。从解的存在性和早期使用的相应正规方程对解的批评开始,这些方程通常是有条件的,例如Gram-Schmidt和Householder的(QR)分解和Givens(QR为了解决最小二乘问题,对因子分解进行了两步分解和反向替换。
第10章将非线性方程的数值解扩展到非线性方程组。作者从广义迭代法的问题形式和收敛条件(不动点定理)开始。不动点迭代法是由赛德尔迭代法改进而来的,本文首先描述了二维问题的牛顿法和牛顿-拉夫森法,然后对n维情况进行了公式化。用内迭代法求解牛顿法中的线性问题,给出了所描述的Newton-Gauss-Seidel和Newton-SOR方法。
第11章讨论矩阵特征值问题。给出了特殊和广义特征值问题以及特征值的一些性质和应用。推导了矩阵a的特征方程和确定a的特征值和特征向量的多项式方法,包括计算特征多项式系数的Leverier算法。描述了Danilewsky的方法,即当特征值已知时计算特征向量的算法。讨论了幂、逆幂法和瑞利商迭代法,与多项式算法相比,它们也可以应用于高阶矩阵。此外,还描述了应用雅可比方法计算对称矩阵的特征对以及Pope和Tompkin的修改。使用多项式序列从三对角矩阵中确定特征对的计算方法被视为矩阵三对角化的基础,可以通过该方法或Householder程序实现。描述了确定三对角实对称矩阵特征值的包括移位的(QL)算法。对于一般实矩阵,考虑了(QR)算法。简述了任意非对称矩阵特征对的Rutishauser(LU)方法以及广义特征值问题(Ax=lambda-Bx)、(A)对称、(B)对角矩阵或对称正定的解。
在介绍了可以用不同方法解决的插值和外推问题之后,第12章描述了大量方法。从简单的线性插值——拉格朗日插值法入手,讨论了具有理论价值而非实用价值的拉格朗基插值法、艾特肯·奈维尔法和牛顿差分插值法。介绍了有限差分算子的一种分类,推导了几种差分方法。读者将找到牛顿的正向和反向插值公式、中心差分、高斯的正向和逆向、斯特林和贝塞尔公式等。进一步的要点是逆插值、厄米特和切比雪夫插值、多维和分段多项式的自然样条插值。
利用插值微分公式的知识,如牛顿的正向和反向差分导数和斯特林的中心差分导数,第13章讨论了数值微分问题,包括求解微分方程导数的有限差分逼近的计算问题。
第14章主要讨论数值积分。读者将找到对梯形规则和辛普森规则、隆伯格方法、高斯求积、样条积分和其他方法的描述,包括误差分析和比较。进一步的自适应方法,奇异积分,多重积分,蒙特卡罗方法,以及作为应用,积分方程的求解都将被涵盖。
常微分方程的初值问题是第15章的主题。在公式化问题和唯一解的条件后,首先考虑半数值方法,如泰勒级数和皮卡德方法,然后考虑简单差分方法,如欧拉法、梯形法、Heun法和中点法,以及单步方法,这里由Runge-Kutta方法的一些变体表示,包括Runge-Kutta-Fehlberg和隐式Runge-库塔方法。包括离散化误差、方法一致性和收敛性备注以及步长控制。接下来的部分专门介绍预测器-校正器算法形式的多步骤方法,如Milne Simpson、Hamming和Adams-Bashforth-Moulton方法,包括与单步过程的比较、离散化误差和稳定性定义,其次是多值方法和一阶常微分方程组的处理,二阶保守常微分方程的高阶方程和差分方法(Numerov方法,Störmer规则)。
尽管包括了稳定性定义,但实际重要的刚性方程的处理却不包括在内。
第16章讨论了常微分方程的边值问题。从确定确保任务唯一解决方案的条件入手,向读者介绍了简单的拍摄方法,并将其扩展到多种拍摄方法。在接下来的部分中,将讨论考虑线性和非线性情况的有限差分方法。与上述仅在离散点集上提供解的方法相比,有限元方法能够在每个点上生成解。考虑了配置法、Galerkin方法和使用变分法和最小化泛函的Rayleigh-Ritz方法。
偏微分方程在第17章至第20章中讨论。
第17章对方程以及相应的初始和边界条件进行了分类。将一系列标准偏微分方程(拉普拉斯方程、泊松方程、亥姆霍兹方程、波方程、扩散方程、薛定谔方程等)分为双曲方程、抛物方程和椭圆方程。概述了求解该问题的有限差分法和有限元法。
第18章中的抛物型偏微分方程的数值解集中在标准热方程上,因为许多抛物型方程都可以转换为这些方程。从一维和多维热方程的推导出发,导出了有限差分方法的显式和隐式格式,包括收敛结果。考虑了Crank-Nicolson方法和交替方向隐式(ADI)程序,包括用迭代算法求解相应的差分方程。
双曲型微分方程在第19章中讨论。波动方程可以描述许多物理问题。因此,这个双曲线方程是本章的中心点。在推导了一维二阶波动方程之后,将该方程改写为一阶方程组。针对这些方程提出了有限差分方法(显式、隐式、Lax-Wendroff、蛙跳法),包括收敛条件(Courant-Freedrichs-Lewy条件,CFL)和二阶方程的格式。其他主题包括D’Alembert的解析解、特征线方法以及二维和三维问题的考虑。
第20章介绍了椭圆偏微分方程的方法,重点讨论了拉普拉斯方程、泊松方程和亥姆霍兹方程。讨论了几种有限差分方法,如拉普拉斯2D的五点公式、拉普拉斯3D的七点公式、泊松和亥姆霍兹2D的五点公式等。包括特殊坐标系和不规则网格。对泊松方程进行了有限元分析。
第21章介绍了并行计算和编程。读者将找到Flynn并行计算机体系结构分类方案、共享和分布式存储系统、并行编程技术(如消息传递和数据并行模型)以及并行编程语言(如高性能FORTRAN)的简短描述。本文介绍了并行计算中基本数值运算(例如积分、插值、高斯消去)的一些逐步步骤。
有趣的第22章介绍了基于大脑认知过程的神经计算,这是一种获得数值解的替代模型。介绍了人工神经网络的数学模型、基本组成、人工神经元、神经元的激活函数以及获取存储在突触中的知识的学习过程。描述了一些特殊的网络:多层感知网络、径向基函数网络和几个Hopfield网络。给出了基于网络的线性方程、非线性方程、插值和外推方程以及常微分方程的数值微分和积分方法。
最后一章是关于差分方程的求解。将求解连接序列中多个连续元素的关系或方程。正向和反向递归的舍入误差需要精确的数值分析。通过计算多项式的实根和二阶边值问题等例子证明了这些问题。
这本专著对重要的数值方法进行了多样化的探讨,并且非常有资格帮助读者开发自己的代码。但是,在高级数值方法和特殊软件包中添加一些提示,可能会对未来的现代工程师有所帮助。

MSC公司:

65-01 与数值分析有关的介绍性阐述(教科书、辅导论文等)
65传真 数值线性代数
65磅 常微分方程的数值方法
6500万 偏微分方程、初值和含时初边值问题的数值方法
65新元 偏微分方程边值问题的数值方法
65年xx月 数值算法的计算机方面
65D05型 数值插值
65D07年 使用样条曲线进行数值计算
65天30分 数值积分
65克50 舍入误差
65小时04 多项式方程根的数值计算
65小时05 单方程解的数值计算
65H10型 方程组解的数值计算
92B20型 用于/用于生物研究、人工生命和相关主题的神经网络
97M50型 物理、天文学、技术、工程(数学教育方面)
00A06号 非数学工作者的数学(工程、社会科学等)
65二氧化碳 蒙特卡罗方法
65兰特 积分方程的数值解法

关键词:

数字系统;有限精度算法;数值方法;代数方程和超越方程;数值线性代数;方程的系统非线性;数值微分与积分;初边值问题;常微分方程;抛物型、双曲型和椭圆型微分方程;有限差分法;有限元方法;并行计算;神经计算;程序设计语言;专著;截断误差;舍入误差;残余误差;正向和反向误差分析;误差界限;基本;PASCAL公司;FORTRAN公司;C;C类++;COBOL公司;MATLAB软件;数学;二等分;正规镰刀;Ridders方法;迭代法;汇聚;误差估计;Aitken、Newton-Raphson、Kizner和Brent的方法;多项式方程的根;秦九韶算法;莱默法;Bairstov-Hitchcook方法;复数根;拉盖尔和米勒算法;伯努利程序;格雷菲平方根法;商微分算法;稳定性分析;直接方法;高斯消去;条件编号;迭代精化;Crout和Doolittle的因式分解修正;威尔金森算法;高斯-乔丹法;Cholesky因子分解;BLAS公司;LAPACK公司;矩阵反演;部分旋转;迭代法;稀疏矩阵;雅各比;高斯-赛德尔;连续过度松弛;Krylov子空间算法;GMRES公司;CG公司;稳定双共轭梯度法;预处理;多重网格方法;线性最小二乘问题;\(QR)分解;克-施密特;住户;Givens(QR)因子分解;赛德尔迭代;牛顿法;牛顿-拉斐逊法;矩阵特征值问题;勒维里算法;丹尼尔斯基方法;逆功率法;瑞利商迭代;雅可比方法;\(QL\)算法;吕蒂绍泽(LU)方法;插值;外推;拉格朗日插值法;艾特肯·奈维尔方法;牛顿差分插值;斯特林公式和贝塞尔公式;Hermite和Chebyshev插值;辛普森法则;Romberg方法;高斯求积;样条积分;蒙特卡罗方法;积分方程;泰勒级数;皮卡德法;龙格-库塔法;一致性;步长控制;多步骤方法;预测-校正算法;Milne-Simpson公司;汉明;亚当斯·巴什福特·穆尔顿法;稳定性;Numerov方法;斯托默法则;射击方法;配置法;伽辽金法;Rayleigh-Ritz方法;拉普拉斯;泊松;亥姆霍兹;波动;扩散,扩散;薛定谔方程;热量方程;Crank-Nicolson方法;交替方向隐式程序;波动方程;克斯·温德罗夫;Courant-Freedrichs-Lewy条件;特征线法;人工神经网络;霍普菲尔德网络
PDF格式BibTeX公司 XML格式引用