Matlab在力学课程课堂教学和虚拟实验中的应用

2017-03-20 20:46郭空明胡锐锋徐亚兰
教育教学论坛 2017年9期
关键词:虚拟实验课堂教学

郭空明+胡锐锋+徐亚兰

摘要:针对目前力学课程课堂教学中知识点演示方面存在不足,以及部分课程缺少实验学时和实验设备两类问题,尝试在课程教学中使用Matlab软件进行改善。实践证明,Matlab软件可以使课程教学中的知识点讲授更加形象和灵活,而采用Matlab编写的简单程序可以实现虚拟实验的功能。因此在力学课程教学中采用Matlab软件提高了教学的效率,同时也提升了学生的学习能力。

关键词:Matlab;课堂教学;虚拟实验

中图分类号:G420 文獻标志码:A 文章编号:1674-9324(2017)09-0094-02

一、背景

力学课程是工科专业的重要课程,主要包括理论力学、材料力学、流体力学、弹性力学、分析力学、振动力学、计算固体力学(有限元)、结构力学等。一方面作为基础课程,另一方面又具有技术课程的特点,例如,计算固体力学(有限元方法)是当前工程结构计算的主流方法。本文主要针对两类问题进行阐述。

首先,除了分析力学等少量课程外,力学课程课堂教学都需要采用示意图,函数曲线乃至动画来表述抽象的概念。例如,为了讲授科氏加速度等重要概念,在理论力学课程中往往使用动画进行运动学演示。而材料力学在讲授扭转平截面假设等概念时,往往也采用图像或动画。由于图像或曲线的板书绘制较为费时,而且曲线精度难以控制,效果也不理想,因此随着近二十年来幻灯片的推广,目前绝大部分的力学课程都采用计算机多媒体和幻灯片进行授课,确实也收到了很好的效果。但是幻灯片比起板书教学而言不具备灵活性,其内容一旦固定,在授课过程中就难以更改,不便于教师临场发挥。例如,在曲线演示的图片中,教师若临时打算加入一条新的曲线,就根本无法实施。而且,课堂演示所采用的动画也往往都是针对具体情况和物理参数制作的,不具备通用性,更惶论临场修改。

其次,“纸上得来终觉浅,绝知此事要躬行。”实验环节对于许多力学课程而言都是不可缺少的,它引导学生从理性认识到感性认识,再进一步回到理性认识的这样一个重要过程。同时实验环节还培养了学生的观察能力,归纳总结能力,动手能力、分析能力等。但是首先力学实验往往需要贵重的实验设备以及专门的实验场地,对于许多院校尤其是没有力学本科专业的院校一般是不具备这个条件的。其次,即使具备一定的实验场地和设备,由于设备有限,实验往往分组进行,从而导致大部分学生实验只是走过场,没有起到让每个人都动手实验的效果。最后,由于专业教学大纲在课时安排上有总体的要求,一些本需要开设实验的力学课程,在教学计划中根本没有安排实验课时。正因如此,许多教学工作者之力学虚拟实验系统的开发。例如文献[1]采用LabVIEW进行虚拟实验平台设计,但此类软件本身仍需要贵重的硬件支持,并不能完全算是虚拟实验。

为了解决以上两个问题,本文作者尝试在所负责的几门力学课程的教学中使用Matlab软件。

二、Matlab软件简介

Matlab是美国MathWorks公司推出的商业数学软件,它和Maple、Mathematic两种软件的功能类似,但由于Matlab进入国内早于后两者,再加之其擅长数值计算,而且具有多种功能强大的工具箱,因此目前已成为国内科研工作的主流软件。

Matlab一词为矩阵Matrix和实验室Laboratory两个单词的组合,意为矩阵实验室。该软件不仅从擅长矩阵运算,同时还具有数值分析、算法开发以及强大的数据可视化功能。Matlab的主要优点有:(1)界面友好,编程调试方便,易于使用;(2)库函数丰富,且功能强大,调用简单,这就使得使用者不必再编写各种冗长的子程序,如对于矩阵求逆,使用者就不必再编写高斯消去法,在Matlab中只需一个命令就可实现,这样就大大简化了程序的编写;(3)数据可视化功能异常强大,不但可以绘制各种各样的曲线、曲面、图表,而且还可以制作动画。

由于目前绝大多数高校教师都是同时从事教学和科研工作,因此熟悉Matlab者非常多。再加上Matlab强大的绘图功能非常适合于课堂演示,因此将Matlab引入课程教学环节已经是大势所趋。Matlab的缺点是与FORTRAN等语言相比,计算效率较低,但由于教学活动中所需要程序的计算量往往很小,低配置的计算机也只需要数秒钟,因此不会带来问题。目前,已有大量教学工作者致力于将Matlab应用于教学。如文献[2]阐述了Matlab可视化界面在理论力学运动学和动力学教学中的应用,文献使用Matlab对材料力学的各类变形问题进行课堂仿真,文献基于Matlab可视化界面研发了振动力学的虚拟实验系统。由于Matlab在力学教学中的应用日益增多,近年来已有许多新出版的力学教材包含了Matlab的相关内容,如教材。

本文作者们主要针对所负责的几门力学课程:工程力学、流体力学、振动力学,在课堂教学和虚拟实验两方面中的应用举出一些例子进行阐述。

三、Matlab在课堂教学中的应用

1.在工程力学中的应用。梁的内力一直是工程力学课程中难度较大和比较重要的内容,难点在于剪力图和弯矩图的绘制。教师的讲授方式分为板书教学法和幻灯片教学法,板书教学备课工作量较小,但板书绘制图线难以做到精确和规范,效果不如计算机生成的曲线。而幻灯片演示曲线虽然具有图像精确、可以动态演示、更利于学生接受,但是课下制作曲线的工作量较大。添置新例题时,须花费大量时间制作课件。因此,作者尝试使用Matlab。针对悬臂梁、简支梁、外伸梁三种不同约束形式,编写了三组绘制剪力图和弯矩图的程序。在程序中,使用者只要设定梁长、分布载荷作用范围、集中载荷作用点等参数,就可以快速绘制出三种不同约束下的剪力图和弯矩图,并且可以在程序中加入判断载荷连续性的模块,使剪力图和弯矩图分段动态显示。很便捷地绘制出任意载荷作用下的剪力图和弯矩图。该程序经过未来的扩展,也完全可以处理复杂约束的多跨梁甚至框架结构。

2.在流体力学中的应用。流体力学课程中的一个难点就是流场的欧拉和拉格朗日两种描述方法的区别和联系。教材上多采用抽象的方程来进行描述,甚至没有示意图,这种描述虽然严谨,但不利于学生掌握。因此,作者在课堂教学中,为了形象化地讲解这两种方法的联系和区别,使用Matlab编写了适用于不同流场的通用程序。在课堂教学的使用中,教师首先将程序代码中的流场方程替换为所需要演示的方程,之后运行程序,得到流场中给定网格点上流场的大小和方向,并用大小不同的箭头进行示意,这样学生对于流场的欧拉描述便一目了然。之后,教师选取流场中给定初始位置的质点,运行另一程序,生成该质点的动态轨迹曲线,也即流场的拉格朗日描述,并叠加在流场欧拉描述的图形上。通过矢量场和曲线的对比,学生很容易掌握这两种描述之间的区别。该程序通用性强,可以很方便快捷地在课堂上更改流场方程和质点位置。对于流体运动学的其他一些知识点,如流线、脉线,迹线等,也可以用类似的方法讲授,这里不再赘述。

四、Matlab在振动力学虚拟实验中的应用

振动力学很好体现了力学课程的两面性,它属于基础课程又具有技术应用类课程的特点。在实验环节也具有双重意义,一方面,学生通过实验更好理解振动的基础理论,另一方面培养了实践能力,增强了解决工程问题的能力。

由于培养计划,教学大纲的限制,许多高校振动力学课程都没有设置实验学时。为了弥补这一环节,作者采用Matlab编写程序,并结合GUI功能将程序封装生成exe文件,实现虚拟实验。共设置两个实验:单自由度系统频响函数的测定实验以及动力吸振实验。在前一个实验中,学生通过界面可改变系统的阻尼系数,绘制出不同阻尼的频响曲线,并总结规律。在后一个实验中学生可以改变吸振器的质量、刚度和阻尼,绘制出主系统的频响函数,对吸振器最优参数的选取进行归纳。

虚拟实验exe程序下发给学生,由学生利用计算机运行完成。虚拟实验成绩作为总成绩的一部分,计入考核。而且作者对于虚拟实验程序中固定不变的参数,采用了通过学生学号进行生成的方法。学生在GUI界面输入学号后,实验中的固定参数将根据学生学号的后三位生成,也就是说每个学生的实验“系统”都是不一样的,使每个学生都必须独立完成实验。

五、结论

将商用工程和科研软件引入教学环节,是教学改革的方向。本文作者近年来在多门力学课程中使用Matlab软件,改进了授课效果,使学生通过基于Matlab的虚拟实验对所学知识进行了验证和巩固。另外,尽早接触Matlab软件,对于学生后续学习、起到启蒙效果。希望本文能起到抛砖引玉的作用,为同行提供一些思路。

参考文献:

[1]陈春朝,赵敏,张亚超,邱穎豪.基于LabVIEW的虚拟实验平台的设计[J].中国现代教育装备,2009(17):31-34.

[2]敖文刚,李勤,王歆.基于MATLAB的理论力学计算机辅助教学[J].力学与实践,2013(1):83-86.

Matlab Application in Mechanics Course Teaching and Virtual Experiment

GUO Kong-ming,HU Rui-feng,XU Ya-lan

(School of Electro-Mechanical Engineering, Xidian University, Xi'an, Shaanxi 710071, China)

Abstract:Aims to two main problems in mechanical courses: insufficient of knowledge points demonstration in the classroom teaching and lack of experiment class hour and laboratory equipment, Matlab software is applied to improve them on the attempt. Practices have proved that the Matlab software can make the teaching of knowledge point more vivid and flexible, and simple program based on Matlab can achieve the function of virtual experiment. Therefore, using Matlab software in the teaching of mechanics courses improves the efficiency of teaching, and also enhances the learning ability of students.

Key words:Matlab; Class Teaching; Virtual Experiment

猜你喜欢
虚拟实验课堂教学
虚拟现实技术在初中物理实验教学中的应用
且行且思,让批注式阅读融入课堂教学
让课堂教学“活”起来
把“三个倡导”融入课堂教学