1. 计算方法教学现状分析
1.1. 课程分析
计算方法是高等院校理科专业的一门专业教育必修课程,也是工科研究生专业的基础课程。该课程对培养拔尖创新人才和“新工科”人才起着重要作用。该课程主要介绍现代科学计算中常用的数值计算方法[1],包括算法的计算公式推导、理论分析、程序设计、实践应用四大部分,需要学生储备微积分和线性代数基础知识。该课程具有数学公式多、推导复杂等特点,由于与计算机编程紧密结合,因此对程序设计能力也有较高要求。
1.2. 学情分析
在大学阶段,部分工科专业通常只需修读“高等数学”和“线性代数”这两门数学课程。然而,也有一些专业,例如地球物理,学习了更多的数学课程。但工科学生更侧重于专业课程的学习,加上时间紧迫、课程任务繁重等因素,导致大部分学生对数学知识的掌握仅停留在表面,甚至无法深入理解和熟练应用。
1.3. 教学内容分析
计算方法是数学与现代电子计算机紧密结合的一个近代数学分支,它直接为现代工程技术和科学研究服务[1]-[4]。科学计算已成为与理论分析、科学实验并驾齐驱的科学研究方法。让学生熟练掌握所规定的主要算法以及基本理论;学会各种主要算法的程序编写及上机实现;根据教程中所介绍的基本理论和原理,初步学会简单理论论证,以达到有一定分析问题和解决问题的能力。然而相关算法的数学公式繁多、推导过程复杂以及算法的实现需要较强的编程能力等因素导致学生学习兴趣不高,学习阻力较大,从而导致学习效果不佳。
2. 基于OBE理论的教学改革探索实践
OBE理论亦称目标导向教育、能力导向教育或需求导向教育,它是以学生学习成果为核心的教育理念,强调以学生最终应具备的能力为出发点,反向设计教学目标、教学内容与教学模式[5]-[8]等。针对当前教学中存在的问题,结合应用研究型高校人才培养特点,本文主要从教学目标、教学设计、启发式教学模式、Matlab编程实践等三方面优化课程教学体系,同时在课堂教学中融入思政元素以立德树人,这些教学改革实施后,学生的学习效果在一定程度上有所提高。
2.1. 教学目标
本课程以OBE理念为指导,期望学生在毕业时达成如下目标:在知识层面,学生需透彻理解并掌握计算方法的核心理论,涵盖插值法、数值逼近、数值积分和数值微分、线性方程组直接解法和迭代解法以及微分方程数值解法等关键算法的原理;在应用方面,学生要能够针对实际问题挑选适宜的数值方法予以求解,并且熟练掌握编程思想实现算法。与此同时,学生于学习进程中培养自主学习能力,养成严谨的科学态度和创新意识,从而为后续的学习筑牢坚实根基。
2.2. 教学设计
本文根据计算方法(数值分析)课程的教学要求,遵循OBE理论编制了教学设计(表1),教学设计中淡化了抽象的理论分析,重视算法思想的建立和实际应用。
Table 1. Example—definition of numerical integration
表1. 示例——数值积分的定义
题目 |
数值积分定义 |
授课时间 |
2学时 |
教材分析 |
这门课所使用的教材是清华大学出版社出版的“十以五”国家级规划教材《数值分析》,该教材内容符合教学大纲的要求,知识系统、体系结构清晰、例题丰富、语言通俗易懂,讲解透彻难度适中。 |
学情分析 |
本教学内容的对象为理工科三年级第一学期的学生,他们具备了一定的数学思想和素养。此外,他们在高等数学或者数学分析课程已学习了定积分的相关知识,为更好地理解数值积分奠定了基础。 |
教学目标 |
1. 学好基础知识,掌握数值积分的概念; 2. 掌握基本技能,能根据代数精度要求,设计求积系数和求积节点,估计求积余项; 3. 培养思维能力,培养学生的观察能力和抽象概括能力。 |
教学内容 |
1. 数值积分的概念;2. 代数精度的概念与计算;3. 设计求积系数和求积节点; 4. 根据求积余项,估计数值积分误差;5. 拓展与思考 |
教学重点难点 |
重点:根据代数精度,设计求积系数和求积节点;利用求积余项,估计数值积分误差。 难点:如何计算给定数值积分公式的代数精度,并理解求积余项与区间长度的关系。 |
教学理念 |
通过数值积分概念的教学,引导学生从近似的角度去理解复杂平面几何图形面积的计算,通过简单问题,初步认识到近似与精确、量变与质变,揭示数学世界的辩证关系使学生清楚地认识到数值积分的精髓。 |
教学方法 |
直观教学,板书结合PPT,启发式讲授。 |
教学安排 |
教学环节 |
教师教学 |
学生活动 |
设计意图 |
1. 回顾高中所学正弦函数,并引出本节课主题 |
铝制波纹瓦的长度问题(PPT展示) |
提问:(1) 铝制波纹瓦的侧边是什么形状? (2) 侧边的长度如何计算? |
实际问题,激发兴趣,并说明学习《计算方法》的意义:研究现实问题。[问题导向] |
2. 数值积分定义 |
定积分定义(PPT展示) + 数值积分定义(板书) + 2种常见数值积分公式(板书) |
师生探讨、分析定积分定义中的近似过程。 |
从定积分的定义中发现数值积分的概念,拓展学生思维,体会量变和质变的辩证关系。[思政元素] |
3. 代数精度与积分余项 |
讲解“精度”与“代数精度”区别(PPT展示),推导2种常见数值积分公式的代数精度与积分余项(板书) + 例题(板书) |
提问:(1) 代数精度给定情况下,如何设计求积系数与求积节点?(2) 积分余项与积分长度是什么关系? |
理解代数精度和积分余项作为2个指标,用于描述数值积分公式的精度,体会他们之间区别和联系。 |
4. 计算铝制波纹瓦的长度 |
利用2种常见数值积分公式计算铝制波纹瓦的长度(板书) |
引导学生利用学习的2种常见数值积分公式解决现实案例 |
通过2种不同的数值积分公式求解铝制波纹瓦的长度问题,加深对数值积分的理解,实现[现学现用]。 |
5. 拓展和思考 |
除了椭圆积分,还有哪些定积分不能准确的积出来? |
体现数值积分的重要性 |
培养学生的归纳总结的思想和方法、升华已学定积分。 |
板书设计 |
§1.1数值积分定义 一. 铝制波纹瓦的长度问题、数值积分定义 1. 2种常见数值积分公式 二. 代数精度和积分余项 1. 推导2种常见数值积分公式的代数精度、积分余项 2. 例1 三. 利用2种常见数值积分公式计算铝制波纹瓦的长度,比较其精度 四. 拓展与思考 |
课后反思 |
查阅资料,了解矩形区域上的数值积分公式 |
2.3. 启发式教学模式
OBE理念强调学生应具备自主学习和终身学习的意识,以及持续学习和适应发展的能力。解决实际问题能够有效激发学生的自主学习和终身学习的意识,而计算方法(数值分析)这门课程就是解决实际问题的课程,因此本文组采用具有实际应用背景的问题作为各章节的引子(表2),一方面激发学生兴趣,另一方面激发自主学习和终身学习的意识。
Table 2. Key concepts and illustrative examples
表2. 知识点与启发实例
章节知识点 |
启发实例 |
线性方程组的解法 |
结构力学问题或商品利润问题 |
非线性方程的数值解法 |
超越方程的根 |
函数插值 |
中国古代刘焯利用插值计算岁差 |
函数拟合 |
生长调度问题和城市供水计划 |
数值积分 |
铝制波纹瓦的长度问题 |
数值微分 |
油桶落入海底的速度问题 |
常微分方程的数值解法 |
非线性弹簧摆的耦合分析 |
传统的授课方式主要侧重于课堂理论讲解,而忽视了工程实践的重要性,导致学生的动手能力较弱。此外,学生对课程的应用性和重要性缺乏足够的认识。针对此,本文以应用问题(见图1和图2)为导向,采用启发式教学模式(见图3),通过精心设计的问题和案例,引导学生逐步探索、分析和解决实际应用中的计算问题,使他们在实践中深入理解算法的原理、步骤和应用场景。同时参透思政元素,提高科学修养。通过这种模式的教学,学生不仅能够掌握扎实的算法知识,还能够灵活运用所学知识解决实际问题,为未来的学习和工作打下坚实的基础。
Figure 1. Presentation of selected examples (cases)
图1. 部分问题(案例)展示
Figure 2. Presentation of selected ideological and political education elements
图2. 部分思政元素展示
Figure 3. Process of the heuristic teaching model
图3. 启发式教学模式流程
2.4. Matlab编程实践
计算机编程语言Python和Matlab,这是目前算法使用最多的2种语言。对大部分大学生而言,程序设计是一大难点,涉及编程语言以及计算机思维。针对此,本文采用模仿、改进、迁移三步流程(见表3),学生先模仿教师提供相应算法的Matlab代码,再对代码进行改进,最后再将代码迁移到案例中,突破初学编程者的畏惧心理,让学生尽快实现对算法的编程运行。
Table 3. Matlab programming practice example—program design of the least squares algorithm
表3. Matlab编程实践示例——最小二乘算法的程序设计
x |
0.1 |
0.2 |
0.15 |
0 |
−0.2 |
0.3 |
y |
0.95 |
0.84 |
0.86 |
1.06 |
1.50 |
0.72 |
%多项式拟合MATLAB代码
clc; clear; x = [0.1, 0.2, 0.15, 0, −0.2, 0.3]; y = [0.95, 0.84, 0.86, 1.06, 1.50, 0.72]; p = polyfit(x,y,1)
pause xi = −0.2:0.01:0.3; yi = polyval(p,xi);subplot(2,2,1); plot(x,y,'o',xi,yi,'k'); title('polyfit');
pause p = polyfit(x,y,2) yi = polyval(p,xi); subplot(2,2,2); plot(x,y,'o',xi,yi,'k'); title('polyfitinterp');
在以上代码基础之上,用3次和5次多项式拟合下列数据,并分别用星号和黄色虚线画出图像(改进)。
x |
0.2 |
0.3 |
0.5 |
0.55 |
−0.4 |
0.25 |
y |
1.02 |
0.75 |
0.80 |
0.94 |
0.65 |
0.12 |
在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间的拟合曲线(迁移)。
t (分) |
0 |
5 |
10 |
15 |
20 |
25 |
30 |
35 |
40 |
y (×10−4) |
0 |
1.27 |
2.16 |
2.86 |
3.44 |
3.87 |
4.15 |
4.37 |
4.51 |
3. 教学效果评价
计算方法课程是一门算法理论分析和算法程序设计紧密结合的应用研究型课程,评价方式上采用了开卷和闭卷的结合方式(见图4)。对比2022~2023年第2学期和2023~2024年第1学期(见图5和图6),学生成绩显著提高,这说明实施教学改革后,教学质量明显提升。基于OBE理论的课程教学改革,使得理论知识和应用问题求解相互渗透,提升了高素质应用研究型人才质量。
Figure 4. Grade distribution
图4. 成绩分布
Figure 5. Grade distribution for the 2022~2023 second semester, pass rate: 77.78%, percentage of grades above 80: 16.7%
图5. 2022~2023年第2学期,总成绩分布,及格率77.78%,80分以上占比16.7%
Figure 6. Grade distribution for the 2023~2024 first semester, pass rate: 90%, percentage of grades above 80: 38.3%
图6. 2023~2024年第1学期,总成绩分布,及格率90%,80分以上占比38.3%
4. 总结
根据应用研究型高校人才培养特点,以案例为素材,以问题为导向,贯穿教学过程。将案例融入课堂理论教学,能够让学生在主动思考问题的过程中拓展知识结构、开阔视野、探索解决实际问题的方法。程序设计部分采用先模仿,再改进,最后迁移的学习流程,使学生在理解理论知识的同时,掌握算法的计算机实现过程,在一定程度上弥补学生编程能力的不足,还可以使理论教学结果更形象,更生动。未来,作者会筛选丰富的线上教学资源,开展线上线下混合式教学,打破时间和空间的限制,并探索将人工智能算法融入计算方法课程教学。
基金项目
重庆科技大学科研资助项目(编号:ckrc2019034);重庆科技大学本科教育教学改革研究项目(编号:202478)。