前言
本书主要介绍数值分析方面的基础知识,适用于数学、计算机、物理及工程专业的本科生。本书要求读者熟悉微积分知识,并接受过结构化编程的训练。本书提供了丰富的教学内容,可以满足一个学期甚至一个学年的课程量,教师们可以根据自己的需要对内容进行适当的剪裁。
对于各个专业领域的学生而言,数值方法都是非常有用的。这一指导思想贯穿于本书的各个章节中,因此本书提供了丰富的范例与典型问题,帮助读者从理论与实践两方面提高数值分析的技能。本书尽可能地以图形和图表形式显示计算结果,以便读者更好地了解数值逼近的效果。本书利用MATLAB程序实现数值算法。
本书的重点在于帮助读者理解数值方法如何工作以及有哪些限制。由于需要兼顾理论、误差分析以及可读性,达到这个目标并不容易。在本书中,对每种方法都给出了以微积分基本结论为基础的推导,并进行了适当的误差分析,以使读者易于理解。通过这些学习,读者能够更好地理解微积分知识。采用MATLAB编程的计算机习题,为学生提供了锻炼科学计算编程能力的机会。
在本书中,简单的数值练习题可以用计算器或者掌上电脑完成,而较复杂的习题需要借助于MATLAB子程序。如何指导学生上机进行数值计算由各个教师完成,他们可以根据现有的计算机资源布置适当的教学任务。本书鼓励使用MATLAB子程序库,它们可以帮助学生实现计算机实验题中的数值分析组件。
本书的这个版本在第5章最后增加了一节,讨论贝塞尔曲线。对讨论数值优化的第8章也进行了扩充,介绍了单变量和多变量最优函数的直接方法和基于导数的方法。
笔者以前认为,无论使用哪种编程语言都可以学习这门课程。但后来笔者发现大多数学生(除计算机专业的学生外)都需要学习新的编程语言。MATLAB现在已经成为工程和应用数学必不可少的工具,它的最新版本也加强了编程方面的功能。因此笔者希望本书的MATLAB程序能使书中的内容更易掌握,使学习更为有效。
致谢
笔者对参与编辑、出版本书各个版本的所有人员表示感谢!笔者(John Mathews)首先要感谢加利福尼亚州立大学富勒顿分校的学生们。同时,感谢我的同事Stephen Goode,Mathew Koshy,Edward Sabotka,Harris Schultz和Soo Tang Tan在本书第一版中给予的支持;感谢Russell Egbert,William Gearhart,Ronald Miller和Greg Pierce对本书第二版的建议。笔者还要感谢加利福尼亚州立大学富勒顿分校数学系主任James Friel的鼓励。
许多评阅人对本书第一版提出了有效建议,包括兰德学院的Walter M. Patterson, III,中康涅狄格州立大学的George B. Miller,阿克伦大学的Peter J. Gingo,阿拉斯加大学费尔班克斯分校的Michael A. Freedman,加利福尼亚大学洛杉矶分校的Kenneth P. Bube。对于本书的第二版,笔者向罗格斯大学的Richard Bumby,美国陆军的Robert L. Curry,佛罗里达大学的Bruce Edwards以及坦普尔大学的David R. Hill致谢。
关于本书的第三版,笔者向乔治梅森大学的Tim Sauer,俄克拉荷马大学的Gerald M. Pitstick和Victor De Brunner,西弗吉尼亚大学的George Trapp,阿拉巴马大学享茨维尔分校的Tad Jarik,北卡罗莱纳州立大学的Jeffrey S. Scroggs,科罗拉多州立大学的Kurt Georg以及南伊利诺伊大学卡本代尔分校的James N. Craddock表示感谢。
本书第四版的评阅人是阿克伦大学的Kevin Kreider,华盛顿大学圣路易斯分校的Demetrio Labate,弗吉尼亚理工学院的Lee Johnson和路易斯安娜大学拉法叶分校的Azmy Ackleh。笔者对这些评阅人所付出的努力和提出的建议,表示深深的感谢。
恳请读者对本书不吝赐教,联系地址如下:
John H. Mathews
Mathematics Department
California State University
Fullerton,CA 92634
mathews@fullerton.edu
Kurtis D. Fink
Department of Mathematics
Northwest Missouri State University
Maryville,MO 64468
kfink@mail.nwmissouri.edu