常用数值算法及其MATLAB实现

常用数值算法及其MATLAB实现 pdf epub mobi txt 电子书 下载 2025

夏省祥,于正文 著
图书标签:
  • 数值算法
  • MATLAB
  • 科学计算
  • 工程数学
  • 算法实现
  • 数值分析
  • 计算方法
  • 数学建模
  • 高等数学
  • 程序实现
想要找书就要到 静流书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 清华大学出版社
ISBN:9787302353348
版次:1
商品编码:11454624
品牌:清华大学
包装:平装
开本:16开
出版时间:2014-04-01
用纸:胶版纸
页数:361
字数:563000
正文语种:中文

具体描述

内容简介

  《常用数值算法及其MATLAB实现》详细介绍了求解数值问题的常用算法的算法原理及其MATLAB实现,偏重于算法的实现,强调例题的分析和应用。主要内容包括:线性方程组的直接解法和迭代解法、插值和函数逼近、数值积分、数值优化、矩阵的特征值问题、解非线性方程和方程组的数值方法及常微分方程和偏微分方程的数值解法。
  《常用数值算法及其MATLAB实现》可作为高等院校数学与应用数学专业、信息与计算科学专业和计算机应用等专业的本科生及工科硕士研究生的教材或参考书,也可供从事科学与工程计算的技术人员参考。

内页插图

目录

第1章 引论
1.1 误差的来源
1.1.1 舍入误差
1.1.2 截断误差
1.2 误差的传播
1.2.1 尽量避免两个相近的数相减
1.2.2 防止接近零的数做除数
1.2.3 防止大数吃小数
1.2.4 简化计算步骤,减少运算次数
1.3 数值算法的稳定性

第2章 线性方程组的解法
2.1 Gauss消顺序消去法
2.2 Gauss列主元消去法
2.3 Gauss-Jordan消去法
2.4 LU分解法
2.5 平方根法
2.6 改进的平方根法
2.7 追赶法
2.8 QR分解法
2.9 方程组的性态与误差分析
2.9.1 误差分析
2.9.2 迭代改善
2.10 Jacobi迭代法
2.11 Gauss-Seidel迭代法
2.12 松弛迭代法
2.13 迭代法的收敛性分析

第3章 函数的插值
3.1 Lagrange插值
3.2 牛顿插值
3.3 Hermite插值
3.4 分段三次Hermite插值
3.5 三次样条插值函数
3.5.1 紧压样条插值函数
3.5.2 端点曲率调整样条插值函数
3.5.3 非节点样条插值函数
3.5.4 周期样条插值函数
3.5.5 MATLAB的内置三次样条插值函数简介

第4章 函数的逼近
4.1 最佳一致逼近多项式
4.2 近似最佳一致逼近多项式
4.3 最佳平方逼近多项式
4.4 用正交多项式作最佳平方逼近多项式
4.4.1 用Legendre多项式作最佳平方逼近多项式
4.4.2 用Chebyshev多项式作最佳平方逼近多项式
4.5 曲线拟合的最小二乘法
4.5.1 线性最小二乘拟合
4.5.2 用正交多项式作最小二乘拟合
4.5.3 非线性最小二乘拟合举例
4.6 Pade有理逼近

第5章 数值积分
5.1 复合求积公式
5.1.1 复合梯形公式
5.1.2 复合Simpson公式
5.1.3 复合Cotes公式
5.2 变步长的求积公式
5.2.1 变步长的梯形公式
5.2.2 变步长的Simpson公式
5.2.3 变步长的Cotes公式
5.3 Romberg积分法
5.4 自适应积分法
5.5 Gauss求积公式
5.5.1 Gauss-Legendre求积公式
5.5.2 Gauss-Chebyshev求积公式
5.5.3 Gauss-Laguerre求积公式
5.5.4 Gauss-Hermite求积公式
5.6 预先给定节点的Gauss求积公式
5.6.1 Gauss-Radau求积公式
5.6.2 Gauss-Lobatto求积公式
5.7 二重积分的数值计算
5.7.1 复合Simpson公式
5.7.2 变步长的Simpson公式
5.7.3 复合Gauss公式
5.8 三重积分的数值计算

第6章 数值优化
6.1 一元函数的极小值
6.1.1 黄金分割搜索法
6.1.2 Fibonacci搜索法
6.1.3 二次逼近法
6.1.4 三次插值法
6.1.5 牛顿法
6.2 Nelder-Mead方法
6.3 最速下降法
6.4 牛顿法
6.5 共轭梯度法
6.6 拟牛顿法
6.6.1 DFP法
6.6.2 BFGS法
6.7 模拟退火算法
6.8 遗传算法

第7章 矩阵特征值与特征向量的计算
7.1 上Hessenberg矩阵和QR分解
7.1.1 化矩阵为上Hessenberg矩阵
7.1.2 矩阵的QR分解
7.2 乘幂法与反幂法
7.2.1 乘幂法
7.2.2 反幂法
7.2.3 移位反幂法
7.3 Jacobi 方法
7.4 对称QR方法
7.5 QR方法
7.5.1 上Hessenberg的QR方法
7.5.2 原点移位的QR方法
7.5.3 双重步QR方法

第8章 非线性方程求根
8.1 迭代法
8.2 迭代法的加速收敛
8.2.1 Aitken加速法
8.2.2 Steffensen加速法
8.3 二分法
8.4 试位法
8.5 牛顿-拉夫森法
8.6 割线法
8.7 改进的牛顿法
8.8 Halley法
8.9 Brent法
8.10 抛物线法

第9章 非线性方程组的数值解法
9.1 不动点迭代法
9.2 牛顿法
9.3 修正牛顿法
9.4 拟牛顿法
9.4.1 Broyden方法
9.4.2 DFP方法
9.4.3 BFS方法
9.5 数值延拓法
9.6 参数微分法

第10章 常微分方程初值问题的数值解法
10.1 Euler方法
10.1.1 Euler方法
10.1.2 改进的Euler方法
10.2 Runge-Kutta方法
10.2.1 二阶Runge-Kutta方法
10.2.2 三阶Runge-Kutta方法
10.2.3 四阶Runge-Kutta方法
10.3 高阶Runge-Kutta方法
10.3.1 Kutta-Nystrom五阶六级方法
10.3.2 Huta六阶八级方法
10.4 Runge-Kutta-Fehlberg方法
10.5 线性多步法
10.6 预测-校正方法
10.6.1 四阶Adams预测-校正方法
10.6.2 改进的Adams四阶预测-校正方法
10.6.3 Hamming预测-校正方法
10.7 变步长的多步法
10.8 Gragg外推法
10.9 常微分方程组和高阶微分方程的数值解法
10.9.1 常微分方程组的数值解法
10.9.2 高阶微分方程的数值解法

第11章 常微分方程边值问题的数值解法
11.1 打靶法
11.1.1 线性边值问题的打靶法
11.1.2 非线性边值问题的打靶法
11.2 有限差分法
11.2.1 线性边值问题的差分方法
11.2.2 非线性边值问题的差分方法

第12章 偏微分方程的数值解法
12.1 椭圆型方程
12.2 抛物型方程
12.2.1 显式向前Euler方法
12.2.2 隐式向后Euler方法
12.2.3 Crank-Nicholson方法
12.2.4 二维抛物型方程
12.3 双曲型方程
12.3.1 一维波动方程
12.3.2 二维波动方程
程序索引
参考文献

前言/序言

  随着社会的发展和科学技术的进步,需要解决的问题越来越多,也越来越复杂,计算机与计算数学的关系也越来越密切,古老的计算数学发展成了一门现代意义下的新学科——科学计算。科学计算在国防、经济、天气预报、工程、航空航天工业、自然科学等领域有着广泛的应用,科学计算已和理论计算、实验并列为三大科学方法。科学计算离不开计算机,但它更离不开计算方法。美国著名的计算数学家Babuska曾说过:“没有好的计算方法,超级计算机就是超级废铁。”人类的计算能力等于计算工具的效率与计算方法的效率的乘积,这一形象化的公式表达了硬件与计算方法对于计算能力的同等重要性。现代意义下的计算数学要研究的是在计算机上进行大规模计算的有效算法及其相应的数学理论,它是科学计算的核心。
  本书详细、系统地阐述了常用的数值算法和一些现代算法的原理,并用目前最流行的三大数学软件MATLAB,Maple和Mathematica之一的MATLAB全部实现了这些数值算法,本书偏重于算法的实现,强调例题的分析和应用,引导读者轻松入门,深刻理解、掌握算法原理,并迅速应用。
  在结构体系方面,先介绍数值算法的详细计算方法(公式)和相关概念,其次给出实现算法的MATLAB程序,最后给出范例。力求把最实用、最重要的知识讲清楚,把最有效的算法和最实用的程序展现给读者。每个算法后都列举了典型范例,对大多数例题采用多种数值解法(包括MATLAB程序包中的数值算法),并尽量用图形显示计算结果,以便直观观察和比较不同方法的计算效果。对有精确解(解析解)的问题,将数值算法求出的数值解与精确解比较,客观地评价数值算法的优劣,以便选择精度高的最佳数值算法。在编程过程中采用高效的计算方式,减少不必要的重复计算,尽量少调用函数且注重误差的传播等编程细节,并对一些算法的适用范围、优劣和误差以及参数和初始值对计算结果的影响进行了分析。帮助读者理解、掌握、改进数值算法,提高数值分析的技能和编程能力。
  本书从二十多本国内外教材和十几篇国内外公开发表的论文中精选了170多个典型例题,并通过大量的数据结果和150多幅图表详细地介绍了常用的经典数值算法和一些现代算法的算法原理及其应用。所有源程序完全开放,程序全部用形式参数书写,读者只需输人参数、函数和数据等就可方便地使用它们,当然也可以根据自己的需求更改这些程序。书中的所有算法程序都在MATLAB7.1中验证通过,并通过不同的算法或精确解检验了程序的正确性。
《现代计算机图形学:原理、算法与应用》 图书简介 本书深入探讨了现代计算机图形学的核心原理、关键算法及其在实际应用中的实现技术。计算机图形学作为连接数学、艺术与计算机科学的前沿领域,是虚拟现实、游戏开发、电影制作、医学成像乃至科学可视化的基石。本书旨在为读者构建一个全面且扎实的知识体系,从基础的几何表示到复杂的光影渲染,再到交互式系统的设计。 第一部分:图形学基础与几何建模(约400字) 本部分从基础概念入手,确立了理解后续复杂算法所需的数学和几何框架。首先详细介绍了二维和三维空间变换,包括平移、旋转、缩放、投影等核心变换,并阐述了齐次坐标系在连续变换链中的重要性。随后,重点讲解了图形的表示方法,涵盖了从经典的线框模型、多边形网格到更先进的隐式曲面和细分曲面技术(如Bézier、B-Spline以及NURBS)。NURBS作为工业设计和CAD领域的主流表示,其数学特性、控制点定义和曲面生成过程被进行了详尽的数学推导和算法剖析。 此外,本书还深入分析了三维几何体的处理,包括如何有效地进行碰撞检测、布尔运算(交集、并集、差集)的算法实现,以及如何利用空间数据结构(如BSP树、八叉树/四叉树)来加速场景管理和查询,这对于构建大规模、高效率的图形系统至关重要。对曲面参数化和纹理映射的数学基础也进行了必要的铺垫,为后续的渲染部分打下坚实的基础。 第二部分:光栅化与几何处理算法(约450字) 光栅化是将几何信息转换为屏幕像素集的核心过程。本部分详细阐述了扫描转换算法,包括直线(中点算法)、圆弧以及多边形的填充算法,并讨论了如何优化这些算法以达到实时性能要求。消隐技术是三维场景显示的关键,本书系统地介绍了画家算法、Z-Buffer(深度缓冲)算法、以及更高效的基于区域或基于扫描线的遮挡剔除方法。 几何处理部分侧重于变换管线(Transformation Pipeline)的各个阶段。从模型空间到世界空间、观察空间、裁剪空间,再到屏幕空间的坐标转换流程被清晰地梳理。特别强调了投影技术,对比了正交投影和透视投影的数学模型及其在不同应用场景中的适用性。裁剪算法(如Cohen-Sutherland、Liang-Barsky)在确定哪些几何体可见,从而减少后续处理量方面起着关键作用,这些算法的实现细节和效率分析被充分展开。 此外,本书还包含了一章专门讨论反走样(Anti-aliasing)技术。由于离散像素的限制,图形边缘常出现锯齿现象,本书介绍了超级采样(SSAA)、多重采样(MSAA)等空间域处理技术,并探讨了它们在计算成本与视觉质量之间的权衡。 第三部分:高级渲染技术与着色模型(约400字) 渲染是图形学的核心,它决定了图像的最终视觉效果。本部分聚焦于光照模型与着色。首先,系统介绍了局部光照模型,如Phong模型和Blinn-Phong模型,深入剖析了漫反射、镜面反射和环境光的数学表述。接着,本书将内容提升至全局光照的范畴,详细讲解了辐射度(Radiosity)方法,用于处理色彩的间接扩散,以及光线追踪(Ray Tracing)的基础理论和算法实现,包括光线与各类几何体的求交测试(如三角形、球体、二次曲面)。 纹理映射是增加表面细节的关键技术,本书讨论了二维纹理的投影方式、纹理坐标的生成,以及Mipmap技术在消除纹理在远距离细节丢失和闪烁问题上的应用。程序化纹理(如噪声函数Perlin Noise)的生成算法也被纳入讨论范围。 在高级渲染器方面,本书对渲染方程(Rendering Equation)进行了详细阐述,这是现代照片级渲染的理论基础。通过蒙特卡洛(Monte Carlo)积分方法来求解这一方程,介绍了解析光线追踪、路径追踪(Path Tracing)等先进的渲染技术,并讨论了它们在实现次表面散射(SSS)和焦散(Caustics)等复杂光照现象时的优势与挑战。 第四部分:交互性、动画与实时系统(约300字) 最后一部分关注图形学在动态和交互系统中的应用。三维动画的基础在于关键帧插值,本书分析了线性插值、样条插值在时间轴上生成平滑运动轨迹的方法。骨骼动画与蒙皮(Skeletal Animation and Skinning)技术,作为角色动画的核心,其权重计算和矩阵变换被详尽解析。 人机交互(HCI)部分讨论了如何捕获用户输入(鼠标、键盘、传感器)并将其转换为图形系统中的有效指令。在实时图形系统的语境下,本书讨论了图形硬件架构(如GPU的工作原理),以及如何利用OpenGL或Vulkan等API,有效地管理渲染状态、缓冲区对象和着色器程序,以确保在有限的计算预算内实现高帧率的视觉体验。本书也简要涉及了后处理效果(如深度模糊、运动模糊)在提升沉浸感中的作用。 本书的特点在于理论的深度与实现的实践性相结合,为希望深入理解计算机图形学并在相关领域进行研发的读者提供了坚实的理论基石和实用的技术指导。

用户评价

评分

这本书如同一位循循善诱的老师,将那些曾经在数学或计算机科学课程中令人望而却步的数值算法,用一种亲切且易于理解的方式呈现在我面前。从最基础的插值与逼近,到求解线性方程组的各种方法,再到更复杂的数值积分与微分方程的求解,作者都以严谨的理论推导为基础,配以清晰的算法描述,让我得以一窥其背后深刻的数学思想。尤其令我惊喜的是,书中并没有止步于理论层面,而是巧妙地融入了MATLAB的实现代码。这就像为抽象的算法概念注入了生命,我可以直接运行这些代码,观察它们的表现,甚至动手修改参数,直观地感受算法的特性和局限性。这种理论与实践相结合的学习方式,极大地提升了我对数值算法的理解深度和掌握程度。过去,我常常在阅读算法描述时感到困惑,不知道如何将其转化为实际可用的程序;而现在,有了MATLAB代码作为对照,我能够更有效地将理论知识转化为解决实际问题的工具。书中的代码风格规范,注释详细,即使是初学者也能轻松上手。我尤其喜欢书中对不同算法的比较分析,指出了它们各自的优缺点以及适用场景,这为我在选择合适的算法时提供了宝贵的参考。总而言之,这本书是我学习数值算法道路上的一盏明灯,让我能够扎实地掌握这些重要的数学工具,并自信地应用于各种工程和科学计算领域。

评分

作为一名长期在工程领域工作的开发者,我一直深陷于各种软件库和API的使用中,对于底层算法的原理常常是知之甚少。这本书就像一股清流,让我重新审视了我们日常工作中依赖的许多工具的“心脏”。我尤其赞赏书中对“理解”的强调。例如,在讲解优化算法时,作者并没有直接给出求解器,而是先从目标函数的几何意义入手,层层递进,分析了梯度下降、牛顿法等经典方法的原理和优劣。这种“溯本追源”式的讲解,让我能够真正理解为什么这些算法能够找到最优解,以及在什么条件下它们会失效。MATLAB的实现部分,更是将理论与实践紧密联系。书中提供的代码,既是算法的生动演示,也是一份可供参考的优秀工程代码模板。我能够通过运行这些代码,直观地观察算法的收敛过程,甚至可以尝试一些“破坏性”的输入,来测试算法的鲁棒性。这对于我来说,是一种全新的学习体验。它让我不再仅仅是调用一个函数,而是真正理解了这个函数的“灵魂”。书中对算法的评价和比较,更是为我指明了方向,让我能够根据实际问题的需求,选择最合适、最高效的算法。这本书让我意识到,掌握核心算法的原理,比仅仅会使用现成的库更为重要,因为它赋予了我解决未知问题的能力。

评分

坦白说,初读这本书时,我有些被它严谨的数学论证吓到。我一直以为数值算法只是工程上的技巧,需要死记硬背一些公式和代码。但这本书彻底颠覆了我的认知。作者以一种近乎艺术的笔触,将枯燥的数学理论与实际的编程实现巧妙地融合在一起。例如,在介绍差分法求解偏微分方程时,书中不仅给出了具体的离散格式,更深入地探讨了截断误差、相容性、稳定性和收敛性之间的复杂关系。这让我明白了为什么看似简单的数值方法,在实际应用中却需要如此多的理论支撑来保证其可靠性。MATLAB的实现部分,对于我这样的实践者来说,更是如鱼得水。书中提供的代码,不仅能够直接运行,还能通过参数的调整,直观地展示出不同算法在精度、速度和稳定性上的差异。我甚至可以在此基础上进行二次开发,解决我工作中遇到的更具挑战性的问题。更让我印象深刻的是,作者在讲解一些高级算法时,并没有回避其复杂性,而是通过精妙的图示和详实的步骤,将它们化繁为简,让我能够逐步理解其核心思想。这本书并非易于速成的“速成指南”,而是需要读者投入时间和精力去细细品味。但一旦你沉浸其中,你就会发现,你所获得的不仅仅是算法的知识,更是对计算思维和数学建模能力的深刻提升。它让我明白了,真正的“常用”算法,之所以常用,是因为它们在数学的深度和工程的实用性之间找到了绝佳的平衡。

评分

我一直觉得,数值算法是连接理论数学和工程实践的桥梁,但很多时候,这种桥梁显得摇摇欲坠,难以跨越。这本书,却为我搭建了一座坚实的、宽敞的大道。作者的写作风格非常独特,既有数学的严谨,又不失工程的实用性。他不会上来就扔给你一堆公式,而是先从问题的本质出发,然后逐步引导你走向算法的解决方案。比如说,在讲解傅里叶变换及其在信号处理中的应用时,书中对时域和频域之间关系的阐述,以及对离散傅里叶变换(DFT)和快速傅里叶变换(FFT)的对比分析,都让我豁然开朗。MATLAB的实现代码,更是这本书的灵魂所在。我可以直接复制代码,运行,然后通过修改参数来观察结果的变化。这种“即学即用”的学习方式,极大地提升了我学习的效率和兴趣。我不再只是被动地接受信息,而是主动地参与到算法的探索过程中。书中对各种算法的优缺点、适用范围的详细分析,也为我提供了宝贵的参考。我能够根据实际问题,更明智地选择适合的算法,而不是盲目地尝试。这本书让我深刻体会到,数值算法并非高不可攀的象牙塔,而是可以被理解、被掌握、并最终应用于解决实际问题的强大工具。它不仅提升了我对数值计算的认知,更激发了我对进一步探索更复杂算法的兴趣。

评分

我拿到这本书时,原本期望能快速找到一些解决我项目中遇到的具体数值问题的代码片段,但很快我就发现,这本书的价值远超我的初始预期。它不仅仅是一本“菜谱”,教你如何“做菜”,而是更像一本“食材学”的百科全书,深入剖析了各种“食材”(数值算法)的“生长环境”(数学原理)、“营养成分”(性能特点)以及“烹饪方法”(MATLAB实现)。作者在介绍每一种算法时,都从其数学根源出发,娓娓道来,引人入胜。例如,在讲解最小二乘法时,书中不仅给出了直接的公式推导,还探讨了其几何意义,以及在实际应用中可能遇到的病态问题。而当我翻阅到关于迭代法求解非线性方程的部分时,我更是被书中对收敛性条件的严谨分析所吸引,这让我明白了为什么有些方法会失效,而另一些则表现得异常稳定。MATLAB的实现部分,更是画龙点睛。书中的代码不是简单地堆砌,而是经过精心设计,力求清晰、高效,并配以详尽的解释,让我能理解每一行代码背后的逻辑。我甚至可以拿着这些代码去和更专业的同事讨论,而不再是那种“我有一个程序,但不知道它为什么工作”的尴尬境地。这本书的结构安排也十分合理,从基础到进阶,循序渐进,让我在不经意间就建立了起对数值计算的系统性认知。它为我打开了一扇新的大门,让我看到了算法背后更广阔的世界,也让我对解决复杂计算问题充满了信心。

评分

物流很好,用起来很方便

评分

挺不错的书,价格有点贵。

评分

评分

评分

书的表面全是灰尘!!很旧的

评分

纸张质量不错,内容实用。

评分

挺不错的书,价格有点贵。

评分

好好好好好好好好好好好好好好。

评分

专业用

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.coffeedeals.club All Rights Reserved. 静流书站 版权所有