APP下载

生物医学工程专业本科阶段电磁场理论与数值计算课程设计与实施方法

2020-04-14刘本源刘锐岗夏军营季振宇史学涛

医疗卫生装备 2020年3期
关键词:电磁场生物医学编程

刘本源,刘锐岗,夏军营,季振宇,杨 滨,代 萌,史学涛,付 峰

(空军军医大学军事生物医学工程学系,西安710032)

0 引言

电磁场工程技术是电磁场理论、现代数学和计算机科学紧密结合的产物,计算电磁学是电磁场工程领域数值计算和特性分析的基础,在医学仪器研发、生物医学研究中起着重要的作用。在现代健康工程中,电磁环境对人体的致病影响引起广泛关注[1];利用生物组织的电磁特性,可测量人体组织成分或对病变区域成像[2]。基于电磁场理论的新型医疗成像方法,如电阻抗断层成像[3-5]、磁感应断层成像[6]、磁声成像[7]等已被写入“中国制造2025”。开展人体电磁特性测量和成像技术研发需要大量专业人才,而电磁场的理论和数值计算方法正是该方向研究者所必须具备的基础知识。

电磁场理论与数值计算课程属于计算电磁学框架内一门专业性较强的基础课程,本课题系统地讲授电磁场理论和数值计算方法,涵盖麦克斯韦方程组、数值积分方法、有限差分法、有限元方法、电磁场逆问题等主要单元。课程内容分为基本理论与数值编程两部分。理论方面的特点是知识面广、所需先导课程内容较多;而编程方面则由于学员初次编写大规模数值计算程序,且缺乏对电磁场数值解的直观理解,授课难度较大。

第四军医大学生物医学工程系于1986年创建,2017年更名为空军军医大学军事生物医学工程学系。现有医学影像、生命雷达、生物电磁效应、电阻抗断层成像等几个主要研究方向,是我国较早开展人体生物电磁效应、电阻抗断层成像的单位之一。电磁场理论与数值计算课程是我校生物医学工程专业学员本科阶段的一门必修专业课程,而我校是国内唯一在生物医学工程专业方向本科阶段开设计算电磁学相关课程的院校。

目前,国内高校仅在机械、电子信息工程专业研究生阶段开设计算电磁学课程[8-10]。我校首次将电磁场理论与数值计算课程提前到本科高年级开设,具有一定的挑战。生物医学工程专业本科阶段的课程体系与机械、电子等专业有本质不同,学员虽然学习了本课程所需的先导课程并掌握了C++、MATLAB等编程技能,但相关课程讲授深度不足且大规模程序编写经验欠缺,授课难度较大。针对这一问题,我校在近5 a 的教学实践中不断地精简电磁场数值计算知识体系、丰富编程内容,创造性地在课程实施中加入较短的激励反馈环节,帮助学生克服挫败感并建立信心。学员从电磁场理论开始,逐步经历方程离散化处理、数值近似、有限元编程、电磁场数值解可视化、电磁场特征参数计算等学习,体会科学研究中从理论到实践、再由实践结果验证科学假设的完整闭环,不仅为本专业后续课程的学习奠定了坚实的基础,同时搭建了进入生命雷达成像、生物电阻抗断层成像、生物电磁特性分析等相关领域科学研究的桥梁。

本文系统地介绍电磁场理论与数值计算课程的课程设计、教学及编程环节的实施方法,总结近5 a的教学实践经验,希望能够给国内其他高校生物医学工程专业开设此类课程提供参考。

1 课程设计

1.1 课程意义

目前,我校生物医学工程专业本科生在大三阶段缺少一门承前启后的综合性课程,该课程必须能够囊括先前学习的大学物理、计算机编程语言、信号与系统等专业基础课,并且应当“拔高性”地培养学生编写大规模数值计算及可视化程序的能力,以便后续更好地开展专业研究。这正是现行生物医学工程专业教学体系中紧缺的薄弱环节。

电磁场理论与数值计算课程综合了电磁场理论及计算机数值计算的核心内容,在本专业第三学年开展专业课教学。电磁场理论与数值计算课程设置及其先导、后续课程如图1 所示。本课程的设计属于“拔高型”框架设计,系统地锻炼学员的理论学习和编程能力。通过设计3 个有特点、难度递进的编程实验,并建立“即时反馈”激励系统,逐步建立学生的信心。

图1 我校生物医学工程专业电磁场理论与数值计算课程设置及其先导、后续课程

本课程包含以下先导课程:高等数学、线性代数、大学物理,要求学生能够综合运用信号与系统课程及数字信号处理课程的基本思想进行理论分析;在实践环节,要求学生利用高级编程语言(C/C++、MATLAB 或Python)编写大型数值计算程序,完成数值解的可视化,并计算电磁特征参量。主修完本课程后,学员将进一步学习医学仪器、生物医学信号检测与处理综合实验等专业课程,并进入毕业设计。本课程内容属于我校军事生物医学工程学系3 个重点研究方向——生物电磁特性断层成像、非接触雷达生命探测及生物组织磁效应的专业基础。因此,本课程可帮助学生掌握专业知识、提升运用高级编程语言的能力,顺利进入本科毕业设计环节。

1.2 授课对象特点

我校生物医学工程专业为小班授课,近5 a 平均每学期学员16 名,学员有较好的基础和学习习惯。分析近5 a 的教学活动,存在的主要问题如下:

(1)仅在普通物理课程学过有关电磁场理论相关内容,后续无进一步的课程跟进巩固,导致与本课程的衔接不充分;

一般春季容易出现低温和阴雨等天气,从而导致根腐病、白粉病以及纹枯病等病虫害的频繁发生。因此,在春季应当提前做好病虫害的防治工作,结合季节特征采取最佳的防护措施。

(2)学员对前期课程中所学知识,尤其是线性代数、复变函数等有所遗忘;

(3)没有开设矢量分析课程,给教学内容的推进带来一定的困难;

(4)学员编程实践缺乏,对于上机实验尤其是大规模数值计算编程、数据可视化部分有畏难情绪。

针对以上问题,对于本课程涉及到的电磁场、线性代数和矢量分析知识,教员在相关教学内容开展前(每节课前10 min)有针对性地补充讲解,帮助学员顺利衔接,并提示后续课程中需用到的知识点,以帮助学员有针对性地预习。同时,加强编程技能的训练和强化,鼓励充分发挥网络等交流工具,丰富课上及课下学习方法,激励学员主动探索、思考、学习,并不断加强编程实验在最终考核中所占比重。

1.3 教材选用

本课程选用普通高等教育“十一五”国家级规划教材《工程电磁场数值计算(第2 版)》[11],如图2(a)所示。课程讲义及实验手册由课程教学组自编。

除了中文教材及自编讲义外,增加学生课外阅读教材《计算电磁学(英文版)》(Computational Electromagnetic(2005)[12]),如图2(b)所示。该书由Springer出版,作者Anders Bondeson 是瑞典哥德堡查尔莫斯大学(Chalmers University)教授,是国际电磁场数值计算领域的知名专家。查尔莫斯大学是国际顶级院校,该书是电子信息工程专业本科生计算电磁学课程的专用教材。全书描写简练准确,国内高年级本科生在掌握一些专业词汇的基础上,阅读无任何困难。以本书作为辅助阅读材料,有助于学生掌握本领域专业的英文词汇,为今后独立查阅文献、开展科学研究打下基础。

图2 电磁场理论与数值计算课程选用教材及参考教材

另外,根据我校生物医学工程专业本科教学的特点,优选3 个有代表性的上机实验,图文并茂编制成实验讲义,供学生参考学习。

1.4 课时设计

表1 课程学时分布及变更方式学时

从表1 中可以看出,针对本专业学员的特征和接受程度,本门课程的授课内容不断得到精简。在最近一轮教学计划中,理论课精简为电磁场理论的数学模型、有限差分法及有限元方法、电磁场逆问题3个模块,总计30 学时。编程实验课针对有限元数值计算方法、基于牛顿优化算法的电磁成像方法这2个部分重点教学内容开展,共计18 学时,另有2 学时为理论考试。

1.5 编程实践环节设计

本课程精心设计了3 个有代表性的编程实践环节,共计18 学时,努力培养学员的实际动手能力和理论知识的应用能力,如图3 所示。

实验1 为规则圆域的网格剖分。对圆形区域进行规则剖分,主要以扇面为单位构建三角面元的连接规则,输出节点坐标矩阵、面元连接矩阵、面元电导率矢量。实验要求可将边界上的特殊节点设置并标记为电极。采用MFC 或MATLAB、Python 对剖分结果可视化。

实验2 为电磁场正问题——有限元方法数值计算。基于第1 个编程实验得到的无结构化网格,计算在给定边界条件下场域内的电势分布,以等位线的形式对数值计算结果可视化。

图3 电磁场理论与数值计算课程精选的3 个编程实验

实验3 为电磁场逆问题——电阻抗断层成像。在边界上施加有限次数的激励,采用高斯牛顿优化方法,利用边界测量数据求解场域内电导率的分布。该实验本质上是电阻抗断层成像问题。

通过精选的3 个实验,学员可以从易到难地掌握电磁场数值计算的各个环节;通过剖分和数值计算结果可视化的训练,学员可了解现代数值计算中的2 个核心内容,即离散和可视化;通过学习优化方法,求解逆问题,学员可掌握电阻抗断层成像的实施要点。同时,课程中引入电磁场数值计算在临床应用中的讨论,训练学生寻找、解决临床问题的敏感性和发现科学问题的能力。

2 教学实施方法与成果

2.1 教学方法

2.1.1 理论教学

理论教学以课堂讲授为主,采用PowerPoint 幻灯讲解课程知识点,辅助板书,以灵活的形式应对学生学习知识的需要。采用信息化教学手段和传统教学手段的有机结合改善教学效果、提升教学水平。授课中重视师生互动,激发学习兴趣,促进自主学习。引入PBL(problem-based learning)教学方法,即教员提出问题,学员在课下查找资料。通过课后作业、答疑、辅导等方式及时了解并解决学员学习中遇到的问题,力争给予学员个性化的辅导。

同时密切理论和实践的联系,通过综合性的实验设计促使学员深入掌握所学知识,提高解决实际问题的能力;鼓励学员参与第二课堂的课外科研活动,拓展课程知识,为今后的工作和科研培养创新能力;通过学习典型电磁场数值计算的原理和方法,关注其不断发展、逐步完善的历史演变过程和各自的优缺点,强化理论与实践结合的重要性,培养积极思考、不断进取的探索精神,不断追求最恰当、最优化的电磁场数值计算方法。

另外,在学习电磁场理论与数值计算课程各章节时,不仅要关注具体的方法和过程,还要理解其来源和思路,同时应了解使用对象,为解决实际的电磁场数值计算问题奠定基础。

2.1.2 编程实践

通过电磁场数值计算上机实验课,学生依次经历分析问题、动手编程、上机验证和讨论交流等过程,感受电磁场数值计算编程过程的严谨、艰辛和成功的乐趣。在学习基本操作技能的同时,提高发现问题、分析问题和解决问题的能力,并在这一过程中理解学习基本知识和基本技能在处理实际问题过程中的重要性。同时通过典型问题的分析和实现过程,准确练习和学会这些基本技能,做到举一反三、触类旁通,为学习后续相关课程和今后的工作科研奠定基础。

2.2 成绩分析与反馈

通过分析编程实践成绩与理论考试成绩可知,编程实践环节成绩较好,且兴趣较浓厚的学生,理论考核成绩往往较高,呈现正相关的趋势,如图4 所示。

图4 电磁场理论与数值计算课程编程与理论考核成绩对比图

电磁场理论与数值计算课程是生物医学工程专业的一门专业课程,其综合性、应用性强,融合了线性代数、C/C++编程、数值算法等多项内容。同时本课程也是一门强调实践的课程,着重培养学生在学习理论知识基础上的动手编程能力。

在教学中,编程实践处于核心环节。常规的授课方式为先讲授理论再进行编程,这种模式反馈周期长,易产生挫折感,不利于调动学生的主动性和学习热情。简·麦戈尼格尔在《游戏改变世界》一书中指出:“学生沉迷于游戏的根源在于游戏的设计者建立了吸引人的目标、规则、反馈系统。”[13]基于此,本文精心设计了3 个编程实践内容,穿插于理论课程教学环节,难度逐渐递进,编程验收间隔(反馈)也由密集(较短)变得稀疏(较长)。通过现场指导和讨论,增加学生的自信心。

由于本课程编程实验难度大,任课教员针对每一名学员的特点和进度,针对性地设定编程实验短期考核目标,与学员共同讨论数据结构和程序接口,帮助所有学员完成前2 个实验,即圆形区域的规则剖分和有限元数值计算。但实验3 电磁成像逆问题涉及牛顿优化方法和计算Jacobian 矩阵,要求学员先前撰写的程序高度模块化并具有良好的接口,需要对已完成的程序进行重构。个别学员因无法定位C++数值计算的错误,频频受挫进而放弃实验3。而少数完成了全部3 个实验的学员,在编程汇报答辩时有信心回答教师的现场提问,认可自己较好地掌握了本门课程。有学员表示每次编程前会觉得很困难,但是自己一步一步实现以后,看到可视化的结果特有成就感。值得注意的是,调试数值计算程序需引入单元测试,而这部分内容正是本专业课程体系中缺少的。在最新一轮授课中,单独讲授单元测试方法,构建了一个仅包含4 个节点、2 个面元的最小有限元正问题和电磁成像逆问题,以板书的形式手把手带领学生手动计算系数矩阵和Jacobian 矩阵,取得了较好的授课效果。

3 结语

当前本科教学改革中,鼓励增加一批有挑战、有难度的课程内容,而如何把“难”课讲“好”,是每一个教育工作者不可回避的问题。本文系统地介绍了电磁场理论与数值计算课程的设计思路、改革历程与教学经验。在理论教学方面,采用框架设计,综合学员先导课程的核心内容,以编程为牵引,挖掘学生的课堂兴趣和课后动力;在编程实验方面,精心设计了层层递进的3 个实验,保护并激发学生的学习动力。本文提出的理论—实践—反馈模式,有助于将枯燥的理论讲授环节融入直观的编程学习中,同时以交替“难度冲击(挫败)”和“编程实践(奖励)”的模式,螺旋式地推进授课进度,对电磁场理论与数值计算课程的教学改革有重要的促进作用。

猜你喜欢

电磁场生物医学编程
刍议“生物医学作为文化”的研究进路——兼论《作为文化的生物医学》
灵长类生物医学前沿探索中的伦理思考
编程,是一种态度
外加正交电磁场等离子体中电磁波透射特性
元征X-431实测:奔驰发动机编程
编程小能手
纺织机上诞生的编程
国外生物医学文献获取的技术工具:述评与启示
不同地区110kV 输电线路工频电磁场性能研究
LED光源在生物医学中的应用分析