申惠娟 邓锂强 徐祥福 方运良 祁玲敏 赖国霞
(广东石油化工学院理学院 广东 茂名 525000) (收稿日期:2017-03-08)
仿真技术在大学物理及实验教学中的应用与探索
申惠娟 邓锂强 徐祥福 方运良 祁玲敏 赖国霞
(广东石油化工学院理学院 广东 茂名 525000) (收稿日期:2017-03-08)
计算机辅助教学是课堂及实验教学的一种重要补充方式.基于对大学物理实验中光学实验的仿真研究现状,介绍了几种常用仿真软件的应用进展,并比较了这几种仿真软件的优劣,为进一步完善和改进实验仿真技术及相关工作提供参考.
大学物理实验 仿真 Matlab Maple LabVIEW
大学物理及大学物理实验课是理工科专业的一门重要的基础课,其中光学部分包括光的传播、干涉和衍射等现象是重要组成部分,理解光学中的科学奥秘对当代大学生认识世界具有重要引导作用.但是光学内容较抽象,大学物理理论课中,着重讲解原理及理论推导过程,对于光学现象大部分只能通过图片描述的形式给学生展示;在物理实验课中可以让学生根据原理操作,并观察光学现象.但是,首先光学仪器价格昂贵、资金短缺的高校难以满足扩招后学生规模对设备数量的要求;其次,光学仪器操作复杂,学生无法在有限的学时内通过改变参数全面观察实验现象. 因此,无论是理论上还是实验过程中,对学生在这部分知识的理解和全面性认识方面都有一定的限制,更容易造成学生的片面认识和错误判断,不利于知识的学习.随着信息化技术的飞速发展及当前OBE教育理念的提出,计算机辅助教学已经广泛应用于各学科的教学中.因此,将计算机仿真应用到大学物理及实验教学过程中,对教学效果的提高能起到重要的补充作用.
大学物理中涉及到的光学现象主要有光的干涉和衍射.其中,光的干涉现象包括等厚干涉和等倾干涉.等厚干涉如劈尖干涉与牛顿环;迈克尔孙干涉可同时实现等厚干涉和等倾干涉两种光学现象.光的衍射主要包括单缝衍射(以夫琅禾费衍射为主)和光栅衍射.目前,运用计算机技术基本可以实现以上光学现象的仿真.常用的几种仿真软件有Matlab,Maple和LabVIEW.
Matlab是美国MathWorks公司出品的商业数学软件[1],用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括Matlab和Simulink两大部分,它的Tool Box工具箱集成了求解多种特定学科的工具,其主要特点是:
(1)简单易学.Matlab编程语法简单,用户只需要学习几句语言就可以实现计算、绘图等强大的功能,它的帮助内容十分全面,我们甚至可以现学现用.
(2)可扩展性.Matlab允许用户自行建立指定功能的M文件,可以方便地构造出专用的函数,从而扩展了其应用范围和编程效率.
(3)高效性.Matlab语句功能十分强大,一条语句可完成十分复杂的任务.它大大加快了工程技术人员从事软件开发的效率.
(4)交互性.Matlab语言提供了强大的文件I/O,可以很方便地与其他多种格式的文件之间进行交互操作.它还提供了丰富的应用程序接口,方便其他程序调用和数据交换.
由于Matlab具有如此多的优点,己经被广泛用于研究和解决各种工程问题.利用Matlab的仿真功能可以实现对多种光学现象的模拟.其中以牛顿环仿真研究为多,文献[2]利用 Matlab GUI 制作了牛顿环仿真课件,把理论讲解的内容集成在仿真课件中,这样就可以实现实验和理论的实时结合.模拟过程可以实现牛顿环随各个参数的变化情况,如入射光波长、介质薄膜厚度、透镜曲率半径以及介质折射率等.仿真过程还可以使用真实光谱,实现入射波长连续变化、光强分布的三维展示.在模拟测量部分,系统根据任意选取的测量环数,自动显示、读取和保存数据,并可以用最小二乘法拟合作图和逐差法处理数据.对实验中很难观察到的牛顿环白光干涉现象也可以通过仿真实现.牛顿环白光干涉现象在实验室中的观察效果不好,由于实验条件的原因,产生的图像不清晰.文献[3]根据色度学原理,用Matlab模拟牛顿环白光干涉,模拟过程可以改变透镜曲率半径等参数,观察参数变化对干涉图样的影响,仿真效果良好,图像很清晰.文献[4]则根据七色光合成白光的原理,仿真了白光牛顿环干涉实验,可以改变透镜曲率半径观察涉条纹变化.同时还对比了入射光和透射光的仿真干涉条纹,发现入射光和透射光干涉条纹为互补色.由此可见,通过仿真可以使图像更清晰,便于对干涉现象的进一步分析,实现知识拓展.
除牛顿环干涉仿真以外,文献[5]对杨氏双缝干涉现象和圆孔夫琅禾费衍射现象进行了Matlab仿真.在程序的设计过程完成了对光强的计算以及色彩的处理.通过改变入射光波的波长等参数,反应不同条件下的现象和结果,动态直观地展现各物理量之间的关系.文献[6]对迈克尔孙干涉现象进行了Matlab仿真,得到给定条件下的干涉图样和相对光强分布.而文献[7]利用Matlab的图形用户界面设计了一套可以脱离Matlab环境独立运行,包括了多个光学实验的仿真平台,并以牛顿环干涉仿真为例,介绍了利用Matlab编程的基本思路和仿真功能.
另外,还可以将仿真与其他多媒体软件结合起来运用到课堂中.如文献[8]将Matlab,Flash和视频制作软件结合起来,利用Matlab实现牛顿环干涉现象的仿真,拍摄并制作出读数显微镜的主尺和手轮的视频控件,最后通过Flash编程实现了整个实验操作过程的仿真.操作过程中,透镜曲率半径和入射光波波长都是可以改变的.
由此可见,通过Matlab模拟实验测量,可以得到符合实际的结果,特别是可以通过改变各参量的值,获得不同的测量现象,并且减少由于实验设备及人为造成的实验误差,加深学生对牛顿环干涉条纹形成的正确理解,便于学生对知识的进一步探索,对培养学生独立思考能力,激发学生学习兴趣有着十分积极的意义.
Maple是目前世界上最为通用的数学和工程计算软件之一[9],它的图形式输入、输出界面与通用的数学表达方式几乎一样,用户无需记忆许多语法规则,内置超过5 000个计算命令,数学和分析功能覆盖几乎所有的数学分支,如微积分、微分方程、特殊函数、线性代数、图像声音处理、统计、动力系统等.除了符号运算方面的独特优势外,Maple的数值计算功能和绘图功能也很有特色.因此,用户通过Maple产品可以在单一的环境中完成多领域物理系统建模和仿真、符号计算、数值计算等功能.
在利用Maple进行光学实验仿真方面,也取得了较多的成果.如文献[10]利用Maple软件实现了单缝衍射、多缝衍射和迈克尔孙干涉现象的仿真图像.在迈克尔孙干涉仿真中,可以实现条纹的动态吞吐演示过程,增加实验的可视化效果.文献[11]利用Maple软件实现了双缝干涉、牛顿环干涉和迈克尔孙干涉实验的仿真,通过改变各参数,呈现不同条件下的干涉图样和光强分布曲线,观察各种实验参数对干涉图样的影响和条纹变化规律.在光的衍射仿真方面,从惠更斯-非涅耳原理出发,得到了单缝、圆孔和矩孔下的夫琅禾费衍射光强分布表达式[12],利用Maple软件编程实现了对这几种衍射现象的计算机仿真.仿真图样清晰度高,光强分布曲线细致直观.最重要的是,模拟过程可以改变各实验参数,观察其对衍射结果的影响,使整个物理过程直观形象.因此,利用Maple软件也可以很好地实现多种光学现象的仿真.
LabVIEW是指美国国家仪器公司推出的一种基于“图形”方式的虚拟仪器开发软件.它具备强大的信号采集、信号发生、图像获取、数据分析与存储显示等功能.LabVIEW 软件提供了丰富的数学函数、图形化的输入输出控件,可以轻松地实现虚拟的信号发生器、示波器、万用表、数据记录仪等功能,并能够仿真仪器的面板[13,14].
文献[15]等用LabVIEW对牛顿环干涉现象进行了仿真,并直观地分析出各参数对牛顿环干涉结果的影响.根据概率统计原理,模拟出入射光较少时,光会呈现出粒子性.模拟过程可以使学生在进行虚拟实验时得到的干涉条纹动态实时显示,增加交互效果.文献[16]根据双缝干涉的理论,利用LabVIEW仿真了双缝干涉现象.学生同样可以通过虚拟仪器自主设置入射光波长及强度、双缝间距和缝与屏的距离等参数,清晰地观察不同条件下的干涉图像和光强分部规律.另外,文献[17]等结合Matlab和LabVIEW的优点,采用二者相嵌套的方式对矩形孔和单缝下的夫琅禾费衍射现象进行了仿真.利用LabVIEW实现图像的读取和显示,图像处理利用Matlab相关命令实现.
所以,LabVIEW也是进行光学实验仿真较好的计算机软件之一.
由上可见,利用计算机辅助大学物理实验的光学仿真研究已较为完善,基本实现了大学物理及实验课程中所设计的光学内容.这几种仿真软件在使用过程中各有优劣.
Maple软件编程简单易学,这是一般的计算语言无法比拟的.C语言和Fortran语言只能做数值分析,Matlab虽然能做符号运算,但不如Maple专业.Maple的函数名称和程序符号都是显而易见的,很容易记忆.并且,Maple集图像模拟处理、符号运算和数值计算于一身,相当于一个软件包,可以使大学物理教师减少学习负担.尤其对于低年级的本科生而言,只要掌握高等数学方面的数学知识就可以完成简单的编程.但是,Maple在国外较流行,在国内的应用较少,相关的参考及学习资料不易获得.
Matlab由于简单易学、集成度高等优点在国内应用最为普遍,很多高校都会开设这门课程.但是,Matlab是一门高级的矩阵/阵列语言,对于低年级的本科生而言,在学习《大学物理实验》时,还未学习这部分内容,因此不易掌握用Matlab编程,且对Matlab仿真在课堂上的应用效果也有一定的影响.
Maple和Matlab都是一种程序语言,编程过程需要输入大量的程序代码.而LabVIEW是一种虚拟仪器和可视化编程工具,提供大量的模块,如按钮、LED等.通过拖拽图标选择函数的方式代替了较为繁琐的输入代码编程,用线条将不同功能模块连接起来,给用户提供了简单明了直接的图形编程形式,大大减少了程序开发时间,而且运行速率几乎不受到影响.用户可以根据自己的需要,构建自己的仪器系统.但是只能进行一些简单的数据采集和数组处理,在数据分析和数值运算方面的功能相比前两者较弱.
总之,将计算机仿真应用到大学物理及实验的教学中,尤其是较为抽象的光学内容,可以弥补单从书本和教师讲授获取知识的局限.在实验教学中,如何更好地提高学生的预习效果一直是实验课教师思考和探索的问题,如果将光学仿真应用到实验教学中,对光学实验的预习效果就可以大大提高,并且借助仿真开展翻转课堂,提高教学效果.为了将该项工作更好地运用和推广到教学中,需要教师具备熟练的编程技能,灵活运用和实时解决学生提出的相关问题.现有的仿真研究虽然已经很多,但是可以看出,在仿真的灵活度方面还不够完善,很难实现不同光学参数的自由组合以及不同光学现象之间的交互作用,这就需要我们的教育工作者及科研工作人员继续完善和改进仿真技能,为学生创建一个丰富的学习和科研平台.
1 陈垚光.精通MATLAB GUI 设计.北京:电子工业出版社,2010
2 陈志歆,李斌. 基于Matlab GUI 的牛顿环仿真课件制作.实验科学与技术,2013,11 (4):330~333
3 王蕴杰.基于Matlab 的牛顿环白光干涉实验仿真.大学物理实验,2014,27(4):97~99
4 李珏璇,蓝海江.利用七色光仿真白光牛顿环干涉实验.实验室科学,2012,15(2):65~67
5 李继军.Matlab GUI在光学仿真中的应用.通化师范学院学报,2010,31(2):52~54
6 刘伟.光学干涉光谱的模拟与分析.光谱实验室,2012,29(1):516~518
7 王贤平,周华清,桑明煌.《光学》实验仿真及可视化教学研究——以“牛顿环干涉”为例.鞍山师范学院学报,2015,17(6):36~38
8 周党培,陈业仙.牛顿环实验的计算机仿真. 四川兵工学报,2009,30(7):139~141
9 赵会江.Maple 9.0符号处理及应用.北京:科学出版社,2007
10王悦悦,赵丽华,吴雷.Maple在光学实验中的应用.物理与工程,2009,19(4):17~19
11汤剑锋,赵凡,欧阳锡城.应用Maple仿真模拟光学干涉实验.湖南文理学院学报(自然科学版), 2011, 23(2): 77~81
12汤剑锋,赵凡.夫琅禾费衍射实验的Maple仿真设计.湖南文理学院学报(自然科学版), 2011,23(4):37~41
13刘刚,王立香,张连俊.LabVl EW 8.20 中文版编程及应用.北京:电子工业出版社,2008
14杨乐平,李海涛,肖凯,等. 虚拟仪器技术概论.北京:电子工业出版社,2003
15李晨璞,谢革英,胡金江,等.基于LabVIEW 的牛顿环实验动态仿真.实验室研究与探索,2013,32(6): 97~101
16翟龙华.基于LabVlEW的干涉虚拟实验研究.湖南城市学院学报(自然科学版),2016,25(5):41~42
17杨坤,苏玉玲,沈岩,等.LabVlEW与Matlab在信息光学教学中的应用.物理与工程,2011,21(2):39~42
ApplicationandExplorationonSimulationTechnologyinUniversityPhysicsandExperimentTeaching
ShenHuijuanDengLiqiangXuXiangfuFangYunliangQiLingminLaiGuoxia
(GuangDongUniversityofPetrochemicalTechnology,CollegeofScience,Maoming,Guangdong525000)
Highlights:Computer assisted instruction is an important complement to classroom and experimental teaching. The current simulation research on optical experiment in university physics experiment based on the application of several commonly used simulation software is introduced,and compares the several simulation software quality,provide a reference for the further improvement of the experimental simulation technology and related work.
university physics experiment;simulation;matlab;maple;labVIEW