Matlab GUI在电磁学可视化教学中的应用

2017-09-12 06:31马会芳闫映策
无线互联科技 2017年14期
关键词:电磁学带电粒子电磁波

马会芳,闫映策

(太原师范学院 物理系,山西 太原 030031)

Matlab GUI在电磁学可视化教学中的应用

马会芳,闫映策

(太原师范学院 物理系,山西 太原 030031)

针对电磁学课程内容理论性强、概念抽象的特点,利用Matlab强大的数值计算和图形绘制功能,文章以电粒子在均匀电磁场中的运动和平面电磁波的传播为例,制作了Matlab图形用户界面,动态展示了带电粒子的运动和平面电磁波的传播,解决了传统教学方式在可视化环节上难以实现动态性的问题,展现了Matlab的图形用户界面在电磁学可视化教学方面的优越性。

可视化教学;Matlab GUI;电磁学

“电磁学”是物理专业学生学习的一门难度较大的专业课程,主要讲授电磁场的基本规律和性质。磁场和电磁波的抽象性,使学生在学习过程中存在概念难以理解、空间模型构建困难的问题[1]。教师在电磁学的教学过程中,需要绘制大量的图形帮助学生构建。传统的黑板教学,存在绘图效率低的局限,结合多媒体教学,虽然将教师从复杂的绘图中解放出来,但仍存在动态性、立体性差的问题[2]。因此,如何使抽象的模型立体化、动态化,在电磁学的教学中就显得尤为重要。

目前,利用Matlab辅助教学,在电磁学教学可视化方面取得了较好的效果,不但提高了教师的教学效率,也提高了学生的学习效率。Matlab的图形用户界面(Graphical User Interface,GUI)是Matlab推出的图形用户开发环境,具有操作界面简单、交互性强的优点[3]。本文将以带电粒子在电磁场中的运动和平面电磁波的传播为例,讲述如何利用Matlab GUI实现在电磁学教学中的动态演示。不但可以协助学生构建直观的物理情景,还可以激发学生的学习兴趣,而且便于学生自学。

1 Matlab GUI在电磁学可视教学中的应用

Matlab GUI 具有操作界面简单的优点。用户通过简单的鼠标操作可以设计GUI用户界面,同时自动生成m文件框架,只需将程序写入m文件中各组件对应的callback函数下,即可控实现相应组件对用户操作的响应。GUI能帮助使用者向计算机发出操作指令。教师在课堂授课的过程中,使用GUI生成的用户界面,无需根据不同的物理情景进行复杂的程序操作;学生自学时,也不需考虑程序的编写问题,通过与界面间的互动即可实现对程序的操作。

1.1 带电粒子在恒定电磁场中的运动

以带电粒子在恒定电磁场中的运动为例,演示Matlab GUI在电磁学可视化教学中的应用。带电粒子在不同分布的电场、磁场中有不同的运动轨迹,情况比较复杂,考虑带电粒子以任意速度和角度进入电磁场中,运动方程如下:

将其在空间直角坐标系内分解:

在Matlab中,调用ode45函数求解方程组(2),可获得带电粒子在任一时刻的位置坐标。在GUI空白模板上的工具栏中选择组件,GUI设计界面如图1所示。

图1 GUI设计界面

包括输入参数的文本框、命令按钮以及显示运行结果的坐标轴。保存GUI界面,系统将自动生成对应的m文件框架。在m文件中,将下列语句写入“开始”按钮对应的callback函数下:global g Ex Ey Ez Bx By Bz A。

g=get(handles.g_check,’Value’);%获取重力复选框的取值,考虑重力时返回值为1

Bx=str2num(get(handles.Bx,’String’));%获取用户输入的磁场、电场等参数

保存并运行m文件,生成的GUI界面如图2所示。用户使用时,在参数设置区输入参数,点击“开始”按钮,带电粒子的运动轨迹将在空间直角坐标系中显示。在程序的演示过程中,学生们可以直观地观察到带电粒子的动态,图2(a)和(b)分别截取了带电粒子两个不同时刻的轨迹。通过界面右侧列表框,还可以选择在平面坐标系中,分解观察带电粒子在不同受力方向上的轨迹,更好地帮助学生理解带电粒子的受力和运动状态。

可以看出,利用GUI设计的操作界面,只需要和界面互动,就可以显示运动的状态,不涉及复杂的程序调试,方便学生自学,学生通过操作观察,可以全面地构建带电粒子在磁场中的运动空间模型,深入理解本部分知识要点。

1.2 平面电磁波的传播

在电磁学的课程中还涉及部分平面电磁波的内容,学生们还未学习电动力学,对电磁波和波动方程难以理解,对偏微分方程的求解更是一头雾水,因此给学生建立一个平面电磁波的波动模型,可以加深学生对波动传播以及等相位面的认识,为电动力学课程做铺垫。我们利用有限差分法解波动方程[4],结合GUI设计了一个可以显示平面电磁波在自由空间传播状态的界面。截取两个不同时刻的波动,如图3所示,可以直观地观测到电场的振动和波动传播过程,帮助学生理解电磁波波动状态的传播。

在界面中的列表框中选择波面图,如图4所示,还可以观察电磁波传播过程中的波面图,红色表示振动处于波峰,蓝色表示处于波谷。通过演示,既可以提高学生的空间想象力,又可以加强学生对波面及平面电磁波的认识。

图2 带电粒子的运动轨迹

图3 平面电磁波的波动

图4 平面电磁波的波面

2 结语

利用Matlab GUI操作简单、交互性强的优点设计动态演示界面,可将电磁学问题清晰直观地呈现出来,既可以将教师从复杂的图形绘制中解放,又能培养学生的空间想象力,激发学生独立探索问题解决问题的能力。本文以带电粒子在恒定电磁场中的运动和平面电磁波的传播为例,制作了动态演示界面,可以看到利用Matlab GUI能够直观、动态地演示电磁学问题,这对辅助电磁学教学,提高学生对物理概念的理解和专业知识的获取都有帮助。

[1]杨凡.电磁学课程教学改革探讨[J].绵阳师范学院学报,2011(5):133-136.

[2]钱旭鸯.教学设计可视化研究:教学设计的视觉转向[J].全球教育展望,2010(7):30-35.

[3]张志涌,杨祖樱. Matlab教程R2010a[M].北京:北京航天航空大学出版社,2010.

[4]赵德奎,刘勇. Matlab在有限差分法数值计算中的应用[J].四川理工学院学报(自然科学版),2005(4):61-64.

Application of Matlab GUI in the visualized teaching of electromagnetism

Ma Huifang, Yan Yingce
(Physics Department of Taiyuan Normal University, Taiyuan 030031, China)

In this paper, aiming at the strong theoretical and abstract characteristics of electromagnetism course content, making use of the powerful numerical calculation and graphic rendering function of Matlab. The Matlab user interface is fabricated by taking the motion of the electric particles in the uniform electromagnetic fi eld and the propagation of the plane electromagnetic wave as an example.Dynamic display of the motion of charged particles and the propagation of planar electromagnetic waves, which solves the problem that the traditional teaching methods are dif fi cult to realize the dynamic in the visualization, and demonstrates the superiority of Matlab graphical user interface in electromagnetism visualization teaching.

visualization teaching; Matlab GUI; electromagnetism

国家自然科学基金应急管理项目;项目编号:11647038。

马会芳(1983— ),女,内蒙古赤峰,博士,讲师;研究方向:理论物理。

猜你喜欢
电磁学带电粒子电磁波
聚焦电磁波和相对论简介
电磁波和相对论简介考点解读
基于设计的研究在探究式学习单开发中的应用——以中国科技馆电磁学学习单《奇妙的原电池》为例
带电粒子在交变电、磁场中的运动
高中电磁学学习常见问题及解决策略之我见
带电粒子的奇幻之旅
带电粒子的秘密花园(续)
用有源音箱验证电磁波的发射和接收
碰撞中产生的带电粒子的赝快度分布
基于校园网的电磁学试题库建设