具体描述
《数值计算方法》阐述数值计算的基本理论和常用方法,包括:误差分析与算法设计、非线性方程的数值解法、线性方程组的直接法与迭代法、插值法与最小二乘拟合法、数值积分与数值微分、常微分方程的数值解法、矩阵特征值与特征向量的计算等,并在附录中介绍了数值实验报告的基本格式和matlab软件的基本使用方法,《普通高等院校“十二五”规划教材:数值计算方法》建议学时为54学时,其中含数值实验12学时、书中含有较丰富的例题、习题和数值实验题,给出了典型算法的伪代码描述及matlab软件提供的相应函数,并编写出版了与《普通高等院校“十二五”规划教材:数值计算方法》配套的复习与实验指导教材。
《数值计算方法》以实际应用为目的,选材恰当,体系完整,强调数值算法的设计方法和编程实现技能,可作为普通本科院校信息与计算科学、数学与应用数学、统计学、软件工程、计算机科学与技术等专业本科生学习数值分析或计算方法课程的教材,也可作为其他理工科专业本科生和研究生的参考教材。
作者简介
目录信息
1.1 数值计算方法的基本内容与特点
1.2 误差的基本理论
1.2.1 误差来源
1.2.2 绝对误差与相对误差
1.3 数值算法设计的原则
本章小结
习题1
第2章 非线性方程的数值解法
2.1 对分区间法
2.2 简单迭代法
2.2.1 简单迭代法
2.2.2 简单迭代法的收敛性定理
2.2.3 局部收敛性
2.2.4 收敛速度与收敛的阶
2.3 加速收敛迭代法
2.3.1 aitken加速迭代法
2.3.2 steffensen迭代法
2.4 newton迭代法
2.4.1 newton迭代法
2.4.2 newton下山法
2.5 正割法
本章小结
实验1非线性方程的迭代法
习题2
第3章 解线性方程组的直接法
3.1 gauss列主元消去法
3.1.1 gauss消去法
3.1.2 gauss列主元消去法
3.2 lu分解法
3.2.1 doolittle分解法
3.2.2 crout分解法
3.2.3 cholesky分解法
3.3 三对角方程组的追赶法
实验3三对角方程组的追赶法
习题3
第4章 线性方程组的迭代法
4.1 向量范数与矩阵范数
4.1.1 向量的范数
4.1.2 矩阵的范数
4.1.3 矩阵谱半径
4.2 jacobi迭代法
4.3 gauss-seidel迭代法
4.4 迭代法的收敛性
4.5 逐次超松弛迭代法
本章小结
实验4逐次超松弛迭代法
习题4
第5章 插值法与最小二乘拟合法
5.1 代数插值法及其唯一性
5.1.1 插值多项式及其唯一性
5.1.2 插值余项
5.1.3 代数插值的几何意义
5.2 lagrange插值法
5.3 newton插值法
5.3.1 差商及其性质
5.3.2 newton插值多项式
5.4 hermite插值法
5.4.1 hermite插值多项式
5.4.2 三次hermite插值
5.4.3 matlab中的插值函数
5.5 三次样条插值法
5.5.1 背景
5.5.2 三次样条插值的概念
5.5.3 三弯矩法
5.5.4 matlab中的三次样条函数
5.6 最小二乘拟合法
5.6.1 基本概念
5.6.2 直线拟合的最小二乘法
5.6.3 多项式拟合的最小二乘法
本章小结
实验5lagrange插值法与最小二乘拟合法
习题5
第6章 数值积分与数值微分
6.1 插值型求积公式
6.1.1 插值型求积公式的构造
6.1.2 插值型求积公式的余项
6.1.3 求积公式的代数精度
6.2 三个常用的求积公式及其误差
6.2.1 梯形公式
6.2.2 simpson公式
6.2.3 cotes公式
6.3 复化求积公式
6.3.1 复化梯形公式
6.3.2 复化simpson公式
6.3.3 复化cotes公式
6.3.4 算法实现
6.4 romberg求积公式
6.4.1 变步长求积公式
6.4.2 romberg求积公式
6.4.3 算法实现
6.5 gauss求积公式
6.5.1 gauss公式的定义
6.5.2 gauss点的性质
6.5.3 gauss公式的构造
6.6 数值微分法
本章小结
实验6复化求积法
习题6
第7章 常微分方程的数值解法
7.1 euler方法
7.1.1 euler方法
7.1.2 改进的euler公式(预测一校正法)
7.1.3 局部截断误差与方法的阶
7.2 高阶taylor方法
7.3 runge-kutta法
7.3.1 2阶r-k公式
7.3.2 3阶/4阶r-k公式
7.3.3 matlab中用r-k解常微分方程的函数
本章小结
实验7euler方法与r-k法
习题7
第8章 矩阵的特征值与特征向量的计算
8.1 乘幂法与反幂法
8.1.1 计算模最大特征值的乘幂法
8.1.2 算法实现
8.1.3 反幂法
8.2 qr方法
8.2.1 镜像矩阵
8.2.2 矩阵的qr分解
8.2.3 qr方法
本章小结
实验8求矩阵特征值的反幂法
习题8
附录A 数值实验报告的基本格式
附录B matlab简介
B.1 基本运算
B.2 绘图功能
B.3 编程入门
参考文献
· · · · · · (收起)
读后感
用户评价
这本《数值计算方法》简直是为我量身定制的“救星”!我最近在学习过程中遇到了瓶颈,尤其是在处理那些复杂的微分方程和优化问题时,传统的解析方法显得力不从心,每次计算都像在走钢丝,生怕一个不小心就全盘皆输。我之前尝试了好几本号称是入门级的教材,但那些书要么理论推导太晦涩,让我云里雾里,要么就是代码示例少得可怜,根本无法上手实践。直到我翻开这本,我的天,那种豁然开朗的感觉,简直无法用语言形容!作者的讲解方式非常接地气,仿佛一位经验丰富的老教授在我耳边耐心指导。他没有一上来就抛出一大堆高深的数学公式,而是先用生动的例子把问题背景讲清楚,再逐步引入数值方法的思想。比如,讲解有限差分法时,他竟然用了一个日常生活中水流扩散的模型来比喻,让我瞬间抓住了核心。而且,书里对每种算法的收敛性和稳定性分析都做了深入浅出的阐述,让我明白“为什么”要选择这种方法,而不是盲目地套用公式。那些原本让我头疼的迭代过程,现在在我眼里都成了一步步清晰的棋局。对于我这种既需要理论深度又追求实践指导的学习者来说,这本书的价值无可估量。我强烈推荐给所有在工程计算、数据科学领域摸爬滚打的朋友们,它绝对能帮你扫清障碍,直达真谛。
说实话,我对数学的敏感度一直不高,大学里学的那些偏理论的课程常常让我感到压力山大,总觉得一不小心就会迷失在复杂的符号和证明中。拿到这本《数值计算方法》时,我的预期是“可能又要啃很久才能啃明白”。然而,出乎意料的是,它的行文结构有一种奇妙的节奏感。作者似乎非常理解初学者的困境,他总是在关键的转折点设置“概念澄清”的小节,用非常口语化但又不失严谨的语言来解释那些抽象的概念。比如,当他讲解插值理论时,他会先讨论牛顿插值和拉格朗日插值的优缺点,然后才引出样条插值作为更平滑的替代方案,这种层层递进的构建方式,让我的知识体系非常扎实,没有出现“只见树木不见森林”的情况。而且,这本书对误差分析的讲解尤其出色。以往我总觉得误差分析是件玄学的事情,但这本书通过几何直观和具体的例子,把截断误差和舍入误差的来源和传播路径讲得明明白白。读完这一章,我对自己程序输出的结果有了更强的敬畏之心和更准确的判断力。这不再是一本只教你“怎么算”的书,更是一本教你“如何思考计算”的书,这种深层次的启迪,是我在其他教材中很少找到的。
如果让我用一个词来概括我对这本《数值计算方法》的整体感受,那就是“系统性”。很多市面上的参考书,要么只讲有限元法,要么只专注于傅里叶变换的应用,内容比较零散,很难形成一个完整的知识网络。但这本书的伟大之处在于,它巧妙地将基础的线性代数工具、微分方程的离散化技术、以及优化算法等看似不相关的领域,通过“数值求解”这个核心主线串联了起来。从最基础的插值与拟合,到中级的常微分方程(ODE)的数值解法(如龙格-库塔法),再到高级的偏微分方程(PDE)的网格划分思路,整个体系的逻辑链条非常清晰且完整。我特别欣赏作者在处理不同数值方法并存时所展现出的那种宏观视野,他没有偏袒任何一种方法,而是客观地比较了它们各自的适用场景和计算成本。这种全面的视角,让我对数值计算这门学科的理解不再停留在单一算法的层面,而是上升到了对整个计算策略的权衡和选择。它不仅仅是教会了我如何使用数值方法,更是培养了我从更广阔的学科背景下去审视和设计计算方案的能力,这对于我未来的学术研究至关重要。
这本书的装帧和排版也值得一提,这对于需要长时间阅读专业书籍的人来说非常重要。我经常需要带着书在图书馆和实验室之间来回奔波,一本厚重的书如果纸张质量太差或者字体太小,读起来简直是种折磨。这本《数值计算方法》的纸张用料很实在,字号适中,重点公式和定理都用粗体或不同的颜色块突显出来,非常方便快速定位和复习。更重要的是,它在章节末尾设置的“自测题”和“拓展阅读推荐”部分,对我后期的深入研究起到了关键的引导作用。那些自测题并非简单的重复计算,而是设计成了需要综合运用所学知识的小挑战,能有效巩固理解。至于拓展阅读,它推荐的几篇重量级期刊论文和经典著作,正好填补了课本内容的广度,让我知道下一步应该往哪个方向深挖。可以说,这本书的编辑团队对读者的阅读体验和学习路径规划考虑得相当周到,细节之处见真章。一本好的工具书,除了内容硬核,这种“用户友好性”也是决定它能否被长期使用的重要因素,而这本书在这方面做得非常出色。
我必须得给这本《数值计算方法》点个大大的赞,但我要从一个更偏向于“实用主义者”的角度来评价。说实话,我买书不图那些花里胡哨的理论,我最看重的是它能不能帮我解决实际项目中的计算难题。很多教科书写得跟天书一样,把所有算法都用大O符号堆砌起来,看得人头皮发麻,可真到了要写代码实现的时候,却发现关键的“陷阱”和“优化点”只字未提。这本书的处理方式就高明得多。它在介绍完基本原理后,会立刻给出伪代码或者直接是对应编程语言(我记得是Python和MATLAB混合着讲解)的实现片段。最让我惊喜的是,它对算法的“病态问题”的讨论非常到位。比如在讲矩阵求逆和线性方程组求解时,它详细分析了条件数对精度的影响,并且给出了如何使用预处理技术来改善效率的实例。我记得我之前处理一个稀疏矩阵问题时,程序跑了半天还没结果,用这本书里的方法优化了一下,速度立马提升了好几个数量级。这种直击痛点、提供解决方案的叙事风格,对于我这种时间就是金钱的工程师来说,简直是太给力了。它不是在“教”你数学,而是在“授”你解决问题的工具箱。这本书的插图和图表也做得非常清晰,对比了不同算法在相同数据集上的表现差异,这种直观的展示比任何枯燥的文字描述都更有说服力。
讲的很清楚明白,就是对于编程涉及不多,需要自己课下理解
讲的很清楚明白,就是对于编程涉及不多,需要自己课下理解
讲的很清楚明白,就是对于编程涉及不多,需要自己课下理解
讲的很清楚明白,就是对于编程涉及不多,需要自己课下理解
讲的很清楚明白,就是对于编程涉及不多,需要自己课下理解