前言 习近平总书记在中国共产党第二十次全国代表大会上的报告中指出,教育、科技、人才是全面建设社会主义现代化国家的基础性、战略性支撑。我们要坚持教育优先发展、科技自立自强、人才引领驱动,加快建设教育强国、科技强国、人才强国。这一系列重要讲话,为“计算方法”课程建设提供了理论指导和根本遵循。 计算方法在科学研究、工程实践中被广泛应用,特别是在当前的计算机时代,不但算法被计算机大量地实现,而且适应计算机的新算法的研究也十分活跃,可以说计算方法如虎添翼,生机焕发,进入了研究、应用和发展的新时期。计算方法一般作为计算机专业、数学专业本科生的必修课程,也可以作为理工科其他专业本科生、研究生的选修课程。 本人从事计算方法课程的教学工作十多年,却一直没有找到一本很合适的教材。有的教材没有把数学知识与编程知识紧密结合,程序较少甚至没有程序,实用性不强;有的教材类似程序集,与数学理论知识结合不密切、不系统;有的教材内容太广、太深,解析却不够详尽,与高校40~50学时的教学安排不吻合,也不适合自学。有鉴于此,作者总结了十多年来计算方法研究应用和教学经验的成果,参考大量的国内、外资料,精心编写了本书。 Python作为一种新兴的编程语言,具有语法简洁、功能强大、既支持面向对象也支持面向过程等优点。目前,很多高校开设了Python语言这门课程,教育部考试中心也于2015年确定增加“Python语言程序设计”为全国计算机二级考试科目。与此对应,作者编写了Python版的计算方法教材,以满足众多Python爱好者的需要。 本书的特色和优势如下。 (1) 区别于程序较少甚至没有程序、实用性不强的教材和程序集式的教材,本书注重算法与程序实现,强调理论知识与程序设计的紧密结合,既有理论性,也有实用性。本书对每个常用方法配有一个NS图算法和一个独立完整的Python程序,所有程序都已在Python 3.6.1和Python 3.10.6下调试通过。既讲明理论,又将算法用计算机程序实现,是读者十分需要的。这是本书的显著特色和优势。 (2) 重点突出,解析详尽,有助于教学和自学。在内容的组织方面,对每个问题,一般遵循下面的次序讲解: 问题的提出→问题解决方法的主要思想→基本公式→具体实现→举例→分析与比较。考虑到非数学专业读者的特点,注重对基本原理、基本方法的讲解,较少涉及烦琐难懂的数学推证。这是区别于内容太广、太深,解析却不够详尽的教材的显著特点。 (3) 配有图形,侧重从几何含义的角度直观地说明问题,有助于读者理解问题,减少学习困难。 (4) 设置了例题,加强了对基本原理、基本方法的应用,有助于读者理解和掌握理论,有助于提高应用技能。 (5) 每章末有小结,有助于读者厘清各章的要点和思路。 (6) 最后一章是与所学内容紧密结合的上机实验与指导,有助于学以致用,强化操作,提高上机的针对性。 (7) 本书配有教学课件、部分习题答案和Python程序库,可从清华大学出版社官网(www.tup.com.cn)下载。 总之,努力做到提升学生的知识、能力、素质,把握教学的难度、深度、强度,体现基础、技术、应用,提供教材、实验、课件支持,更好地为培养高素质人才服务。 在学习本课程之前,应先修高等数学、线性代数和高级语言程序设计等课程。 全书适合讲授40学时左右,建议讲授第1章: 2~3学时;第2章: 8~9学时;第3章: 7~8学时;第4章: 2~3学时;第5章: 5~6学时;第6章: 3~4学时;第7章: 2~3学时;第8章: 4~5学时,余下的课时可以安排习题课和复习。除此之外,还应安排8~16学时的课内或课外上机实习。第9章为上机实验与指导,读者可以有针对性地上机实验,提高编程能力,巩固所学知识。 本书虽经反复修改,但难免有疏漏,恳请各位专家和读者提出宝贵意见,以便重印、再版时加以修正,使本书更好地为读者服务。 作者2023年9月