摘要:计算方法是数学与应用数学专业的综合选修课。本文对该课程的特点分析归纳,并根据实践经验有针对性地进行探讨。结合matlab软件实现一些经典算例,提高学生的学习兴趣,并潜移默化地培养学生的数学思想与基础科研能力。
关键词:大学教育;计算方法;Matlab软件;教学改革
中图分类号:G642.4 文献标志码:A 文章编号:1674-9324(2012)09-0177-02
《计算方法》是大学里面数学与应用数学专业的综合选修课。虽名为选修,但好像可供选择的不多,比较难以绕过。学生普遍反映比较难,特别是对于非计算数学方向的同学。同时,自2007年工作以来,这已经是我第四遍讲授《计算方法》,在这里就这门课的教与学,谈一下个人的体会。最重要的感觉是与实验相结合,提高学生的学习兴趣,并潜移默化地培养学生的数学思想与基础科研能力。当然,这里要求精心设计实验,充实实验内容,合理组织实验,利用现代多媒体展示,在教学中加入数值实验结果。
在教学过程中,结合课堂教学与上机实验,是高等教育教学体系改革的一个部分,也是计算方法这种应用性很强的学科的必要手段。这种方法可以使学生加强理论知识学习的同时,培养他们的动手能力、综合应用能力和创新意识。现代数值计算方法的快速发展,传统的实验教学体系远不能满足教学和高素质人才培养的需要,因此,有必要积极探索与实验相结合的教学改革体系,建立跨学科、多层次的实验教学体系,这也是目前与实验相结合的教学改革的重要课题[1][2]。
MATLAB是MathWorks公司于1984年推出的一种面向科学工程的计算软件,其中,MATLAB是MATtrix LABoratory的简写,最早是由美国新墨西哥大学计算机科学系主任Cleve Moler开发,并已经有了很多改进版本。这种软件有开源的函数库,可以将不同领域的计算需求以函数的形式提供给用户,也可以在它们的基础上改进。同时,MATLAB提供了很多功能比较好的工具箱,如功能性工具箱,包括符号计算功能、图示建模仿真功能、文字处理功能、与硬件实时交互功能等,学科性工具箱,包括优化工具箱、控制工具箱、小波工具箱、图像处理工具箱、通信工具箱、样条工具箱等,便于用户进行系统建模和仿真分析。另外,MATLAB语言简单(类似于C语言),允许用户以数学形式的语言编写程序,易于扩充,用户可以自己修改和加入自己的文件,与库函数同样调用,操作和指令也很简单,接近自然语言,易于学习和掌握[3][4]。因此,MATLAB不仅可以作为理论教学的示范性工具,更适合作为仿真实验教学的主要工具。
通过MATLAB软件的结果演示,结合理论教学,可以使学生对所学知识点有个感性的认识,再通过让学生亲自操作实验,就会使学生有更为深刻的理解[5]。在实验教学中应该注意一些细节:首先,实验前的准备工作要做细,对于实验目的、实验原理、实验步骤要搞清楚;其次,实验要与课本上的理论知识相结合,加深学生对原理的理解,提高他们的动手能力;最后,要强调实验只是辅助手段,不要轻视理论。
另外一方面,为了使教学工作能顺利而有效地进行,教学方法的选择非常重要。教学方法是包括教师、学生、教学内容等教学因素之间的结合和联系方式[6]。教学方法涉及很多元素,如教学目标、教学过程的效率等,它是为实现教学目标服务的。不同的教学方法实现情况和效率各有不同,具有自己的特点,单纯的讲授法已经不能够满足计算方法的需要,下面将根据计算方法的特点,结合几年的教学实践,整体谈一下计算方法教与学的体会。
首先,兴趣是做好任何工作的动力和源泉。培养学习一门课程的兴趣,就要了解这门课程的研究对象是干什么的,有什么意义。计算方法是研究用计算工具得出数学问题数值解答的方法与算法的科学,所处理的问题都是科学与工程计算中最基本的内容,具有广泛的物理背景与适用性。很多数学问题没有解析解,或者有,但比较复杂,这时候就需要离散近似的解。一个简单的例子,20阶线性方程组求解,Cramer法则可以,但其运算次数(乘除法)需9.7×1020,用每秒1亿次的计算机也要30多万年,而用Gauss消去法,只需乘除运算3060次。我现在上课也会逐渐地增加一些具体的计算方法成功应用的例子,如令我们自豪的秦九韶方法等。当然,同学只有真正理解这些例子的含义,才能培养出学习兴趣,这是学好这门课的基础。
其次,认真踏实的态度是成功的保证。计算方法是一种离散的思想,不同于分析的思想,可能有些同学刚接触,不是很习惯,但要尊重不同的数学分支,认真对待。同时,计算方法是针对不同的问题,如大型线性代数方程组求解、矩阵特征值和特征向量计算、非线性方程求根、积分计算、常微分方程初值问题求解等,知识点比较零散,不是非常连贯。这是由这门课程的特点决定的,适应就好了,不能因为这样就不重视。实际上,现实生活中,离散近似的思想非常重要,如一些统计数据的模拟等。
再次,重视教科书的作用,分清主次。现在很多同学不怎么重视教科书,花了大量的时间去看一些课外辅导材料。须知,任何一门课所选用的教科书一般都是经典的教材,课本中的很多定理、公式包括习题都是比较经典权威的,研究透教材,才能准确掌握一门课程的知识。研究教材,就要清楚定义、定理,了解公式的推导过程。计算方法里面公式比较多(其实很多都是为了计算机编程使用),比较繁杂,这就要分清主次。同学可以掌握一般思想,对一些复杂的公式推导,不需要掌握,对于一些定理的证明,作为本科生的课程,也不要求。我在教2005级教育班时,由于自己的原因,比较注重讲解定理证明、公式讲解而不是展示,教学效果不是很好。后来,我根据同学的实际情况和需要,增加了一些Matlab程序讲解和效果展示,好了很多。
最后,勤学苦练永远不会过时。计算方法除了要学好课本知识外,由于这是一门与计算机使用紧密结合的实用性很强的数学课程,勤动手编程实践,才能掌握计算方法的精髓。在计算机上应用软件编程实践,几乎与课堂学习同等重要。当然,编程实现一些算法也不是很容易,但只有动手编程实现一些算法,才能发现原来这么多繁杂的公式是非常有用的。我在讲课的同时,会把教材上一些题目的Matlab程序给大家,并抽出一些时间讲解,也能提高大家的兴趣。
有人说,人类的计算能力等于计算工具的性能加上计算方法的效率。在1955年到1975年,计算机速度提高数千倍,而同一时间,解决一定规模的椭圆型偏微分方程计算方法效率提高约100万倍,这也是计算方法的魅力所在。在以后的教学过程中,我也会不断改进。上面是我现在的一些体会,希望能对大家学好《计算方法》有所帮助,更希望这门基础学科能对同学将来所从事的事业有所帮助。
参考文献:
[1]王丽.数值计算方法教学改革探究[J].科技情报开发与经济,2007,17(20).
[2]张韵华,陈效群.数值计算方法教学改革初步[J].大学数学,2003,19(3).
[3]张正言,田雨波,张冰.MATLAB在“信息论与编码”实验教学中的应用[J].实验室科学,2010,13(3).
[4]王沫然.MATLAB与科学计算.北京:电子工业出版社,2005.
[5]肖留超,王玉雷.数值实验在计算方法课程教学中的应用[J].高等函授学报(自然科学版),2010,23(4).
[6]刘素芳,王凤利.浅谈教学方法的选择[J].张家口农专学报,2001,(3).