数值计算方法课堂教学论文

时间:2022-04-01 09:46:04

数值计算方法课堂教学论文

一、引言

数学是科学之母。一门学科之是否成为科学,决定于该学科的问题描述是否能化归为数学。工程技术属于应用科学范畴,工程技术问题通过建立数学模型与数学产生直接联系。数学问题的分析解通常是极难得到的,因此必须归结为数值计算问题。例如:人造飞船的轨道研究、汽车耐撞性问题研究、大型桥梁设计、天气预报等都必须数值求解。数值计算方法作为研究数学问题的近似求解方法的课程,既有一般类数学课程理论上的抽象性和严谨性,又有工科类课程的实用性和实验性特征,是一门理论性和实践性都很强的学科。该课程理论涉及面广、方法应用性强、内容丰富,再加上随着计算机技术的飞速发展,优秀数学软件层出不穷,数值计算方法更能与计算机相结合,适应科学发展的需要,现已成为各高校大部分理工科专业的必修课程。在数值计算方法的教学过程中,笔者发现了很多问题。本文对其中的部分问题进行了分析,并提出了几点教学改革建议。

二、教学过程中存在的问题

以笔者所在的机械工程专业为例,起初该课程为学科选修课,选课学生少,且其中大部分是为了凑学分而来的,学习兴趣不高在所难免。后来学科培养计划改变,该课程归入专业必修课,选课学生数量增加了,但是学习热情还是不高。究其原因,主要有以下几点:

1.课程对数学基础要求较高。本课程主要解决以下几大类问题:非线性方程求根、线性代数方程组求解、矩阵特征值与特征向量的数值解法、插值与拟合、函数最佳逼近、数值微分与积分、常微分方程初值问题的求解等。需要先修的数学课程包括高等数学、线性代数等。学生只有掌握这些课程中的基本内容,才能学好数值计算方法课程。而这几门课程均是难度较大的数学课程,学生的掌握程度本来就不好,甚至学过后已经忘记。由于同时要学习其他机械专业课程,学生不愿再花大量的时间和精力去学习或复习相关的数学知识,特别是本来就对数学不感兴趣的学生。所以在课程学习中,学生就会陷入“听不懂,听不懂就没兴趣,没兴趣就不想听课,不听课就不懂”这样一个死循环。

2.教学课时的限制。该课程的内容覆盖很广,如“插值方法”这一章,就算法而言就有Lagrange插值、Aitken插值、Nevile插值、差分与差商形式Newton插值、Hermite插值、分段低次插值、三次样条插值、B-样条插值等。然而,总学时设置仅为32学时。即使不面面俱到,挑选几种典型的插值方法讲解,也需要花费不少时间。因此,教师的课堂时间主要用来讲解各问题相关算法的理论推导和算法设计,几乎没有帮学生回顾相关数学知识的时间,且在课堂内也没有时间及时将理论运用于具体问题。学生觉得这是一门纯数学课,枯燥无味又难懂,没有学习兴趣。

3.没有与计算机很好结合。数值计算方法的一大特点是面向计算机。一个好的数值算法要通过程序设计在计算机上实现,要求用最简练的语言、最快的速度、最少的存储空间来实现某种计算结果。要达到上述要求,要求教师和学生既要掌握数值计算算法,又要能熟悉并熟练使用计算机语言。而现在的课堂教学重点大都侧重在理论讲解上,没有很好地结合计算机编程,学生把这门课当成了数学课来上;且学生在课外也没有将课堂上学到的算法付诸于计算机上实现。导致该门课程理论与实践严重脱节,达不到预期的教学效果和教学目的。

三、如何提高课程的趣味性

综合上述教学中出现的问题,要想教好这门课、使学生学到知识,最重要的是要提高课程本身的趣味性。“兴趣是最好的老师”,学生有了兴趣,才会有学习的热情,才会把精力付诸于课程学习上。那么关键问题是如何提高该课程的趣味性,主要从下面几点出发。

1.结合专业特点,从实际出发,合理安排课时和教学内容。由于课时有限,而且授课对象主要是机械这样的工科类专业的本科生,课程的主要目的是培养学生具有机械工程工作所需的数学能力,培养学生用数学的思想方法分析问题、解决问题的意识和能力,并为后续的工作和学习打下良好基础。那么教师在安排课时要懂得取舍,选择与机械专业紧密相关的内容讲解,课程主要浓缩为如下几个主要内容:非线性方程的求解、线性方程组的求解、插值与拟合、数值微分与积分、常微分方程数值求解。而每个内容应该针对其中的经典算法进行讲解。如非线性方程的求解,只需就二分法、简单迭代法、Newton迭代法进行详细讲解,其他算法如弦割法、简单Newton法等只需简单提及即可;常微分方程的数值解法,只需对Euler法和Runge-Kutta方法详细讲解,其他内容略讲即可。例如非线性方程求解中,判断迭代法收敛的充分条件,复杂的证明过程可以略去不讲。这样一来,教学课时和内容安排合理,整堂课就不会全在枯燥无味的数学定理推导中度过,即使数学基础不是很好的学生也能掌握并运用。而且学生能运用定理判断一种迭代法是否收敛,本身也会获得一定程度的满足感和自信心,而学习兴趣也可以在这之上建立起来。

2.对学生的计算机编程能力要求。该课程研究的是几大类数学问题的数值算法,懂得算法之后,一定要结合计算机进行编程实现。但本门课程又不是专门的计算机编程课程,且由于学时限制,课堂上不可能有多余的时间教授学生编程知识,因此该课程的先修课程还需要掌握一门计算机编程语言。现今的主流商用数学软件主要有如下几种:Matlab、Mathematica、Maple、MathCAD、C/C++、Fortran等,应选用一种熟悉或较易掌握的软件将各种算法进行计算机实现。另外,也可选用如Mathematica这类商用软件进行编程,该类软件界面简洁,语言简单,且功能也比较强大,自学便能很容易上手。

3.将数学理论与计算机相结合。在课堂上利用数学软件,绘制出直观的可视化图片,这样可以把课程中涉及的抽象原理、方法以及复杂的计算过程直观地呈现出来,使学生对相关算法有更直观和清楚的认识,更容易理解,同时也可加强学生运用数学软件进行编程计算的能力。如对非线性方程求根之前,先要找出有根区间,这时可以运用数学软件先画出函数曲线图,找出有根区间的大概位置,然后选择某一算法编程,观察根在迭代过程中的收敛性特征;又例如讲解最小二乘法拟合曲线时,可以运用数学软件将拟合出来的函数图与原函数表对比,可更加直观地理解插值和拟合函数中存在的误差。

4.课程中穿插实践环节,让学生参与到课堂中来。某一算法或某类问题讲解完后,应举出一些算例,让学生在课堂上分组讨论解决的办法,选择怎样的算法合适,怎么编程实现等。对于一些相对较简单的问题,可以请学生直接在课堂上编程求解并运行结果,然后一起讨论该结果的可靠性,或者对编程和运算过程中出现的问题怎么改正等。让所有的学生都参与到课堂中来,以提高学生学习的兴趣,而且同时能提高学生当场解决问题的能力、语言表达能力、计算机编程能力等。

5.课堂教学生动多样化。教学时应充分利用多媒体提高教学效果。如在PPT中增加声音、图像、动画等多种形式,在教学过程中形成多种感观刺激,使原来学生误解的枯燥、抽象的数学课直观化、形象化、生动化,充分激发学生的学习热情,从而大大地提高学生汲取知识的效率。另外,还可以将教学方式多样化,避免教师“满堂灌”、“唱独角戏”的尴尬局面出现。除教师讲解外,还可让学生一起参与到课堂中来,如分成小组讨论某个算法的优缺点,某个具体问题的解法,或采用小组竞赛模式,针对某一问题看谁的算法简洁、效率高、结果可靠等。

6.选择学生感兴趣的算例。算例的选择应有特点,或与学生专业相关,或与学生感兴趣的事物相关,而不应该是单纯的数学习题,应联系相关的背景或出处。如对于车辆专业的学生,讲述曲线拟合这部分内容时,可以计算汽车车身外形曲线轮廓线为例讲述曲线拟合的过程,那么可先给出一些典型车型的外形轮廓图,然后针对某款车型,给出其轮廓线上某些型值点的数据表。学生在看到丰富多彩的汽车图时,首先会感到眼前一亮,兴趣马上会提高,课堂气氛也会得到活跃,而曲线拟合的知识也能很容易领会。

四、总结

要想上好数值计算方法这门课,增加课程的趣味性,提高学生的学习兴趣是关键所在。要让学生在这门课的学习中找到成就感并培养起自信心,觉得这是一门实用的课程,从而自身愿意、乐于学习这门课。为了达到上述目的,教学内容和教学方法的改革是势在必行的。教师要根据不同专业学生的特点制定相应的教学计划,教学内容与学生专业紧密结合,懂得取舍;同时要不断充实并提高自己的专业素质,以适应课程改革的需要。这无疑对教师提出了很大的挑战,要求投入更多的精力到这门课程中来。当然,增强课程的趣味性,激发学生的学习兴趣只是数值计算方法课程教学改革的一方面,还有待在今后的教学实践中不断补充、健全和改进。

作者:田燕萍刘婷婷单位:杭州电子科技大学