技术文章和通讯

弗吉尼亚理工大学140多名二年级工科学生的计算方法教学

罗伯特A。弗吉尼亚理工大学坎菲尔德分校


马铃薯®已成为核心计算工具的AOE 2074:计算方法在弗吉尼亚理工大学多年。这个二年级的课程为工程专业的学生提供了两套他们在整个学术生涯和以后需要的技能。首先是使用数值方法解决工程问题的能力,这些问题涉及到寻根、联立线性方程、线性回归、插值以及数值积分和微分。第二是将MATLAB作为计算工具和编程语言的应用能力。

当我开始教导课程时,我希望学生用Matlab和教学助理更多的一对一教学。这些变化需要课程结构的重大验证。改进的课程为一系列旨在整合在整个航空航天和海洋工程课程中更深入的Matlab(图1)的课程。

图1.弗吉尼亚理工大学的MATLAB综合课程。

一个根本性的改变

为了容纳140多名通常就读的学生,计算方法过去是一门传统的以讲座为基础的课程。每周两次75分钟的讲座,辅以MATLAB中的家庭作业,旨在强化课堂上的内容。

这种形式的一个关键弱点是,在介绍一个概念和让学生自己尝试之间花费了太多时间。当学生学习编程和解决问题时,他们需要在学习过程中应用所学知识。在不让学生解决相关问题的情况下,按顺序呈现太多的主题,这使得他们很难吸收所学内容。

为了解决这个问题,我把第二节75分钟的课改成了实验课。助教(TA)负责这些课程,每个助教与大约30名学生一起工作。这些实验室不仅能让学生和助教进行一对一的互动;它们还使学生能够在一起学习示例的同时相互学习。更重要的是,学生在学习了一种新的数值方法后,很快就动手使用MATLAB,并提供TA指导。

改变课程结构使我们能够教授一个140到180名学生的班级,同时为每个学生提供定期、直接接触教师的机会。这一变化导致了另一项调整,以使课程更加有效:用在线MATLAB教程补充授课材料。

利用交互式MATLAB教程

因为我把上课时间缩短了一半,所以我想在课堂上补充一些学生可以自己完成的学习活动。交互式的,在线MATLAB教程是一个非常适合的。除了提供MATLAB的基本介绍,它还包括课程中涉及的许多主题的模块,包括计算数据分析、曲线拟合、数据可视化和MATLAB编程基础。

虽然工程学生在第一年暴露于Matlab,但在第一次实验室会议之前,他们审查了他们已经看到的介绍性Matlab教程,却将它们恢复到速度。然后,它们从基础Matlab教程和交互式计算数学教程中分配了其他模块的部分,与它们一起匹配了Syllabus主题。我特别高兴的是,MathWorks开发了一旦我们看到基本教程的利益,我建议的更高级的计算数学教程。

交互式MATLAB教程的格式满足了修改后课程的需要。在提供新材料之后,指导课程会提出问题并对学生的回答进行反馈。在某些情况下,学生必须输入MATLAB命令来响应。然后,在学生需要使用这些概念和命令来完成家庭作业之前,该模块会评估他们回答的正确性。这种互动在课堂和计算机实验室之间布置的自主学习活动中特别有用。

使用Matlab Cody课程自动化分配分级

对于助教来说,新的课程结构强调教学和与学生的一对一互动。为了适应这种转变,我需要减轻助教们的负担。在过去,5个助教每周25到30个小时的大部分时间都花在了实验室评分和家庭作业上。我希望助教们花更多的时间直接与学生打交道,而不是增加助教的工作量。

解决方案是将Matlab Cody课程自动级分配。TAS现在在每周开始举行一小时,我和我的同事凯文王。然后他们花了100%的剩余时间教学实验室和办公时间;他们没有时间分级。学生将每周的Cody课程作业分配复制到当地的Matlab环境,并以自己的步伐工作。更令人振奋的努力,并开始解决下一类课程所造成的作业问题。由于测试套件在提交时级别为每个分配,因此学生可以在其结果上获得即时反馈,绿色复选标记表示正确的解决方案(图2)。

图2.MATLAB Cody课程作业中的学生作业结果示例。

在提交解决方案之前,鼓励学生在本地调试代码。金宝搏官方网站

一开始,因为学生们在Cody Coursework中看到了必须通过的测试用例套件,我们担心作业可能太简单了,但我们的担心被证明是没有根据的——这种方法使学生能够自己更快地从错误中学习。从教学的角度来看,转向Cody Coursework已经被证明是有益的,学生的反馈也很积极。一个学生告诉我:“我为绿色的勾分而活!”总的来说,Cody Coursework提高了学生在课程中的参与度。

MATLAB与课程整合

计算方法是航空航天和海洋工程专业所有二年级学生的必修课程。在重新设计课程时,我向系里的同事询问了他们布置的需要使用数值方法和MATLAB的问题。王教授和我通过使用他们的一些课程材料来补充课程教科书中提供的例子,即史蒂文·查普拉的例子,将他们的观点结合起来为工程师和科学家使用MATLAB应用数值方法。

Chapra用一个蹦极的例子说明了几个概念。我们的学生使用MATLAB来模拟一个蹦极者和几个连接在一起的蹦极者的动力学。其他分配的问题包括模拟火箭的轨迹,计算翼型上方的气动力,以及从风洞实验中拟合数据。这样的例子吸引了学生,帮助他们可视化系统行为。课程内容松散地遵循教科书中的材料,从建模和编程开始;进行根与优化、线性系统、曲线拟合、积分与微分;以简单的微分方程结束。

我们已经为第二二手学期的网关课程进行了计算方法。教授初级和高级课程的教授要求学生找到有关使用Matlab解决它们的学生的数值解决方案。金宝搏官方网站因为教师现在可以依靠我们的学生掌握Matlab基础,他们可以更深入地进入课程材料(见图1)。我们预计随着更多课程的课程将被扩大这种效果。

航空航天和海洋工程学生每学期都变得越来越精通,解决了越来越具有挑战性的问题和设计项目。几位过去的学生告诉我,他们已经使用了他们在我的实验实验室阶级和他们的高级设计课程中学习的数值方法 - 他们没有预期的方式。

重组课程已经产生了积极的结果。我们的部门教导了一个Astroynamics课程,学生使用Matlab获得许多家庭作业。在课程开始时,教师给出了评估测验以测试学生对Matlab的了解。一旦他班上的学生参加了改进的计算方法,他指出,他们在他的Matlab评估测验上往往比上年的学生得分明显高。

教学分析思维

在他的讲座中,王教授经常以交互方式使用MATLAB创建说明新概念的情节,或演示教科书中的示例。许多使MATLAB成为优秀教学工具的功能,包括交互式执行命令和可视化结果的能力,也使它成为一种有效的学习工具。学生不必用低级语言编译、执行和调试代码。相反,他们可以通过交互输入MATLAB命令来开发算法。例如,他们使用绘图功能来验证高空弹跳运动员下落达到终点速度的模拟,然后将所有步骤组合成脚本(图3)。

图3.交互式MATLAB绘图和脚本,用于向学生介绍数值方法。请参见动画。

我的同事和我都认为,培养学生的分析思维能力是很重要的,因为学习如何编程算法。即使他们最终为之工作的公司使用高度专业化的应用程序,也几乎总是需要修改算法和分析。通过在第二年采用MATLAB的实践方法,并在整个工程项目中集成MATLAB,我们让学生具备公司在工程毕业生中所需的关键分析技能,包括使用数值方法解决实际工程问题的能力。

注:科迪课程于2018年7月成为MATLAB成绩评定者。

关于作者

Robert Canfield是弗吉尼亚理工学院航空航天和海洋工程系的学术事务教授和助理主管。他的研究兴趣包括多学科设计优化,高空长期耐久性传感器和空气车辆概念设计的空气敏感性。在加入弗吉尼亚科技能力之前,坎菲尔德博士在美国空军工作了24年。坎菲尔德博士举行了B.S.在杜克大学的机械工程中,为M.S.在斯坦福大学的航空和航天器中,以及博士学位。弗吉尼亚理工学院的工程力学。

发布2015年 - 91984V02