本站小编为你精心准备了基于Matlab平台工科硕士生数值教学实践参考范文,愿这些范文能点燃您思维的火花,激发您的写作灵感。欢迎深入阅读并收藏。
摘要:指出数值分析课程特点和当前存在的不足,介绍了优秀数值计算软件Matlab,结合教学实践,从抽象内容直观化、复杂计算简单化、数值实验强基础和案例分析长才干四方面,探讨基于matlab平台的工科硕士研究生数值分析教学改革。
关键词:数值分析;Matlab;教学实践
Abstract:ThispaperpointsoutthefeaturesofnumericalanalysiscourseanditspresentshortcomingsandintroducesMatlab,anadvancedsoftwareofnumericalanalysis.Besides,withregardtotheteachingpractice,thepaperstudiestheteachingreformofMatlab-platform-basednumericalanalysisforpostgraduatesofengineeringmajorfromthefouraspectsofvisualizingtheabstract,simplifyingthecomplexcomputing,enhancingthebaseofnumericalexperiment,andimprovingabilityofcaseanalysis.
Keywords:numericalanalysis;Matlab;teachingpractice
随着计算机技术的迅猛发展,科学计算已经与实验研究、理论分析并称为科学研究的三大方法,借助于计算机和数值计算理论,人们能对自然科学、工程技术、经济管理及至人文社会科学领域中的数值模型求出数值解。因此,要求改革数学课程教学的呼声日益增长,而数值分析课程以其独特的特点首当其中,提高数值分析教学质量,培养学生数学素养,掌握实用算法并能熟练利用计算机求解成为当务之急。
一、数值分析课程的特点与现状
(一)课程内容多杂而教学时数少
本课程包括了数值逼近(插值、函数逼近,数值积分与微分),数值代数(线性方程组求解、矩阵特征值与特征向量),方程求根(非线性方程(组)求解,解微分方程)等内容。在运用传统教学方法讲授这些知识时,由于公式多,推导过程繁琐,加上教学时数少(54学时),很多内容难以说清楚,致使学生产生厌学情绪,教学效果大打折扣。
(二)计算复杂
解题时,一般都要进行大量的计算,不是一支笔、一张纸,外加一台计算器能顺利解决的,因此学生只能做一些简单的数值模拟题,难以领会和理解方法的计算要领和步骤,体会问题的条件和限制范围,理解一般问题和特殊问题的区别。
(三)重理论轻实践
传统课程只注重讲授数值方法的原理,课堂教学占去整个教学过程的绝大部分时间,学生没有实验、实践的深刻体会,不能全面理解和运用教材中的算法。
(四)直观性差
课堂教学中难以对一些重要概念、重要现象进行直观展示,学生只是被动记忆一些结论,并不真正理解。
二、Matlab——优秀的数值计算软件
美国Mathwork公司于1967年推出了适用于不同规格计算机和各种操作系统的数学软件包-Matlab[1],它集数值计算、符号分析、图形可视化、文字处理于一体,语法简单、操作方便、界面友好,只要有点Windows操作经验,在短时间内就可学会它的操作和使用方法,而且其编程效率远优于BASIC、FORTRAN、C等软件。它具有很好的开放性,以它为基础开发的二十多个工具箱,可用于解决诸多学科专业中的数值计算问题。该软件已成为发达国家高等院校理工科学生必须掌握的基本软件,也是科学研究和工程设计部门解决具体问题的一种标准软件。用过(中国论文联盟整理)它的人都感叹:用Matlab处理矩阵-容易;用Matlab实现可视化-轻松;用Matlab编程-简洁!
三、数值分析课程教学改革实践
针对数值分析课程的特点和传统教学中的不足,笔者在多年的教学实践中,将Matlab软件应用于数值分析教学,取得了良好的教学效果。主要做法如下。
(一)抽象内容直观化
心理学研究表明,与抽象的内容相比,学生易于识记生动、形象、有趣的学习材料。如果能将抽象的数学知识直观的呈现在学生们面前,无疑将会极大地激起学生的学习兴趣,Matlab强大的可视化功能正好能做到这一点。一个典型的例子是在引入分段低次插值时,为了让学生更好地理解Runge现象,利用屏幕动态地显示f(x)=11+x2插值函数图象[2]31。
在[-5,5]上取等距节点(给定n,共取n+1个点)
xk=-5+k·10n,k=0,1,2,…,n。
构造拉格朗日插值多项式Ln(x),随着n的增大,在区间端点附近Ln(x)与f(x)接近程度越差,形象的说明了高次插值函数近似f(x)的效果并不好,为讲授分段低次插值做了个很好的引子。
借助于Matlab平台,函数逼近中的误差分布,数值积分方法的改进,迭代过程等等均能很容易直观地呈现在学生面前。
(二)复杂计算简单化
数值分析难,主要难在运算过程(公式)复杂,大部分时候难以靠一支粉笔在黑板上一步一步的演算,学生课后练习也只能做一些简单的数值模拟。而Matlab强大的数值计算功能,帮助我们解决了这个问题。
例如,用雅可比迭代、高斯-赛德尔迭代和超松弛迭代求解线性方程组的数值计算,计算量非常大,按照教材讲解,只能简单地告知结果,学生积极性不高,利用Matlab编写三个简单的小程序,便可将计算结果(甚至每一步的迭代结果)直观地展示给学生。
例1分别用雅可比迭代、高斯-赛德尔迭代和超松弛迭代解线性方程组[2]213
并比较收敛速度,取精度=10-5。其精确解为x*=(-1,-1,-1,-1)T。
教学中,用自编的程序,很快得出了下列结果,并比较了方法的优劣(见表1和表2)。
数值分析教学中,这样的例子比比皆是,只要教师认真设计,不仅能大大激起学生对学习内容及过程强烈的兴趣,而且还对初步培养学生科学计算能力起到了重要作用。
(三)数值实验强基础
数值分析是一门实验性较强的学科,上机实验不仅能加深学生对算法稳定性,理论可靠性及计算复杂性的理解,培养学生的编程能力,还能培养学生质疑问题的能力和创新精神。因此每章结束后,都提供一两个问题要求学生利用MATLAB软件,自编程序或利用其库函数求解问题,分析结果。如学习线性方程组迭代法后,提供一个高阶病态的线性方程组,要求学生用各种方法上机求解,并对结果进行分析,找出收敛较快的迭代法,寻求最佳松弛因子。
(四)案例分析长才干
实践性是数值分析课程区别于其它数学课程的一个重要特征。每个部分内容结束后,安排一个案例分析,帮助学生从“算”数学过渡到“用”数学。如海底测量(插值),估计水塔的水流量(插值、数值微分与积分),投入产出分析(线性方程组),商品的产量与价格(方程求根),导弹系统的改进(微分方程)等。通过这些案例分析,既使学生认识到数值分析的实用性,又让学生领略了Matlab的强大功能,积累了用数学软件解决实际问题的经验。由于教学时数的限制,案例分析一般由学生课后完成,教师负责指导。
四、结束语
数值分析是研究如何用计算机解决实际问题的课程,将Matlab与数值分析课程结合起来,开阔了学生思路,拓展了解决问题的方法,取得了较好的教学效果,学生做毕业论文,甚至在实际工作中遇到有关难题时,经常当面或通过邮件与我进行探讨。学生普遍反映数值分析课程内容多,实践性强,应用广泛,费时费力,但学下来最有用,收益终生。
参考文献:
[1]]周品,赵新芬.Matlab数学建模与仿真[M].北京:国防出版社,2009.
[2]李庆杨,王能超,易大义.数值分析(第四版)[M].武汉:华中科技大学出版社,2006.
[3]刘彩云,陈忠.《数值分析》课程教学改革的若干思考[J].长江大学学报:自然科学版,2009,6(1):358-359.
[4]曾繁慧,高雷阜,胡行华.基于Matlab的《数值分析》教学改革研究[J].高教论坛,2008(3):60-61.
[5]石辛民.“计算方法”课是Matlab语言的最佳切入点[J].高等理科教育,2002(5):63-65.