[内容简介]
本书比较全面地介绍现代科学与工程计算中常用的数值计算方法。全书共分9章,主要内容有:误差理论、计算方法的数学基础、非线性方程的数据值解法、线性方程组的直接解法和迭代解法、函数插值与曲线拟合、数值微分与数值积分、常微分方程数值解法,以及MATLAB编程基础及其在计算方法中的应用。
本书知识体系完整,从简要回顾与计算方法有关的数学基础知识,到介绍现代计算软件MATLAB在领域中的应用,书中每一个算法都配有结构化流程图,大部分算法给出了MATLAB语言和C语言的源代码,书后附有上机实验题目。可从网上免费下载的教学资源包括:电子教案、各章习题详解和模拟试题。
本书可作为高等院校理工科计算机、电子信息类及近电类本科教材使用,也可供从事科学与工程计算的科技工作者和研究人员参考。
前 言
随着科学技术的飞速发展和计算机的广泛应用,现代科学已呈现出理论科学、实验科学和计算科学三足鼎立的局面。作为计算科学的重要手段和工具,计算方法已成为当代理工科大学生必备的基础和技能。从20世纪80年代起,“计算方法”就成为信息和计算机等专业本科生的专业基础课。作者从事“计算方法”教学十余载,在教学过程中发现,学生在学习“计算方法”课程时,存在三个明显的问题:一是在学这门课时,学生学过的数学知识大多已淡忘,翻开《高等数学》和《线性代数》课本,也不知从何看起;二是在实践环节中,学生用所学过的程序设计语言编写计算方法试验程序,感到非常吃力;三是许多学生对计算方法中的算法,只知其然不知其所以然。鉴于此,作者将自己一直使用的讲义进行整理,编写了这本教材,以尝试解决这些?问题。
全书共分9章,第1章介绍计算方法研究的对象和特点,以及误差理论;第2章既简明又系统地介绍了计算方法的数学基础,主要包括微积分、微分方程和线性代数的有关概念和结论;第3章介绍非线性方程的数值解法,包括二分法、迭代法和牛顿法;第4章介绍解线性方程组的直接法,主要包括消去法、矩阵分解法和误差估计;第5章介绍解线性方程组的迭代法,主要包括Jacobi迭代法、Gauss-Seidel迭代法、SOR迭代法,以及迭代公式的收敛性;第6章介绍插值与曲线拟合,主要包括拉格朗日插值、牛顿插值、样条插值及基于最小二乘原理的多项式拟合;第7章介绍数值积分和数值微分,主要包括基于插值理论的牛顿?柯特斯求积公式、高斯求积公式、龙贝格求积公式及插值型求导公式;第8章介绍常微分方程初值问题的数值解法,主要包括欧拉方法及其变形、龙格?库塔方法及单步法的收敛性和稳定性;第9章介绍MATLAB编程基础及其在计算方法中的应用,主要介绍MATLAB编程环境、矩阵计算、图形功能,以及用MATLAB实现计算方法中的基本算法,并对这些算法配有MATLAB和C语言源代码。讲授全书内容,约需要40~60学时,另外,实验约需要12~18学时。
本书的特点是:
(1) 知识结构完整。既有计算方法所需的数学知识,又有现代数值计算软件MATLAB在计算方法中的应用,一书在手,无须其他资料。
(2) 注重实践和应用。书中提供约20个MATLAB和近10个C语言源代码,以实现本书介绍的主要算法,并对结果进行比较,测试数据全部选自本书的例题;附录中有精心设计的9个实验,供读者选用。
(3) 方便教学。全书每章都有内容提要、教学建议和本章小结,说明每章的重点、难点、选学内容和所需教学时数。书后的9个实验,可以加强计算方法课程的实践环节。本书还配有电子教案、模拟试题和各章习题详解,供教师使用。
(4) 便于自学。本书注重介绍算法的来龙去脉、基本思路和推导过程,每个算法都配有结构化流程图,并在第9章有示例源代码供读者参考。
特别值得一提的是,书中对比了C语言和MATLAB实现各算法的优劣,通过这种对比,读者有望深刻理解“计算方法”的精髓。
本书可作为大学本科计算机、电子信息和近电类专业的教材使用,也可供从事科学与工程计算的科技工作者和研究人员参考。
本书的出版得到了山西大学教材建设经费的资助;本书的编写得到了山西大学教务处、山西大学计算机与信息技术学院的大力支持,特别是梁吉业教授在百忙中审阅了本书的全稿,提出了许多宝贵的意见和建议;本书的出版也得到了电子工业出版社何雄编辑的帮助,他精心策划、积极申报,才使本书得以出版,在此一并表示感谢。
由于作者水平有限,书中难免有错误和疏漏之处,恳请读者指正。
目录
第1章 引论
第2章 计算方法的数学基础
第3章 方程求根
第4章 解线性方程组的直接法
第5章 解线性方程组的迭代法
第6章 插值与最小二乘法
第7章 数值积分与数值微分
第8章 常微分方程实值问题的数值解法
第9章 MATLAB编程基础及在计算方法中的应用