APP下载

《计算方法》教学中一个案例分析

2018-03-19朱艳

电脑知识与技术 2018年4期
关键词:教学案例计算方法

朱艳

摘要:《计算方法》课程对于培养学生数值计算思想、应用科学计算解决实际问题的能力起着重要的作用。该文结合自己的教学实践和科研工作,以雅克比(Jacobi)迭代法、高斯-德塞尔(Gauss-Seidel)迭代法及逐次超松弛(SOR)迭代法内容为例,引入鞍点问题,提高教学的广度和深度。

关键词:计算方法;Jacobi迭代法;Gauss-Seidel迭代法;SOR迭代法;教学案例

中图分类号:0241 文献标识码:A 文章编号:1009-3044(2018)04-0107-02

A Teaching Case of Computational Method

ZHU Yan

(Qujing Normal University, Qujing 655011, China)

Abstract: Computational method curriculum plays an important role in cultivating students numerical calculation thinking and the ability to use scientific computing to solve practical problems. Based on teaching experiences and scientific research, Jacobi, Gauss-Seidel and successive over relaxation(SOR) iterative method as examples, the saddle point problem is introduced in order to improve the breadth and depth of teaching.

Key words: Computational method; Jacobi iterative method; Gauss-Seidel iterative method; SOR iterative method; Teaching case

1 概述

科学与工程的许多领域如流体力学,高阶微分方程求解,计算电磁学,最优化问题和油藏模拟等都涉及到大规模稀疏线性方程组的求解.计算方法课程中迭代法就是求解这类方程组的最基本的方法,迭代是数值分析中通过从一个初始估计出发寻找一系列近似解来解决问题(一般是解方程或者方程组)的过程,为实现这一过程所使用的方法统称为迭代法。经典迭代法有雅克比迭代法,高斯-赛德尔迭代法,逐次超松弛迭代法等。文[1]结合教学实践讨论《计算方法》课中应用数学软件MATLAB进行“曲线拟合”教学的一个案例,本文将探讨在《计算方法》课程中讲授雅克比(Jacobi)迭代法、高斯-德塞尔(Gauss-Seidel)迭代法及逐次超松弛(SOR)迭代法时将科研与教学相结合的一个案例。

文[2]考虑求解下面线性方程组

其中是非奇异矩阵,,是未知向量,是已知向量.对任意分裂,若矩阵是非奇异,则基于此分裂的迭代法可以表示为

,.

不失一般性,假设,,可以将分裂为

其中为单位矩阵,和分别为矩阵的严格下三角矩阵和严格下三角矩阵,则基于上式分裂的迭代法为

其中,此方法称为Jacobi迭代法。

若,此方法称为Gauss-Seidel迭代法。

若,是松弛参数.此方法称为SOR迭代法(若,SOR法就为Gauss-Seidel法)。

将经典迭代法与科研成果结合在一起,介绍应用迭代法求解鞍点问题,使学生能较深刻认识到迭代法在求解大型稀疏线性方程组的意义,培养学生思考问题、解决问题的能力。

2 鞍点问题

现在考虑鞍点系统

其中对称正定,满秩,即秩()=,向量且。

, (1)

其中与是非奇异矩阵。

鞍点问题广泛的存在于流体力学, 电磁学, 线性弹性力学, 带有限制条件的二次优化, 最小二乘问题等应用领域中。解决鞍点问题的方法一种就是基于矩阵分裂的迭代法,在式(1)中令,(),即为著名的有Uzawa算法:

该方法简单, 易于计算机实现, 但该方法每一步迭代需要计算矩阵的逆, 对大型线性方程组来说这是不现实的。为克服该缺点, 文[4]给出了改进算法,在式(1)中令,(),即

算法2.1:

在式(1)中令,(),可得另一迭代算法

算法2.2:

3 数值例子

本小节,给出一个数值例子。

例[3]:考虑矩阵:

和矩阵:

此数值例子中令, IT为迭代步数及,分别表示参数,上界.在实验中,取初始值为,当相对残差小于停止迭代,即, 其中,。相应的数值结果在下列表中。

根据表1,显然在选取适当的参数时,算法2.1[4] 和算法2.2迭代步数要少于Uzawa算法,然而, 当不变而接近于0.038,算法 2.2 迭代步数少于算法2.1[4]。

4 结论

计算方法是在理工科各专业大学本科及研究生中开设的一门计算量大、算法多、实践性比较强的专业课. 要系统完善地让学生理解和掌握这门课程的理论、方法及实质精髓, 提高这门课程的教学效果,教师在授课时候尽量将教学科研结合一起,让学生理解前人在这方面所做的大量工作及目前这门课程的发展情况, 从侧面激发学生学习的兴趣, 努力把所学理论应用于实际中,从而增强教学效果, 提高教育質量。

参考文献:

[1] 唐家德.应用MATLAB进行《计算方法》教学的一个案例[J].电脑知识与技术(学术交流),2007(11):1473-1476.

[2] 张诚坚,高健,何南忠.计算方法[M].北京:高等教育出版社,1999.33-38.

[3] K. Arrow, L. Hurwicz, H. Uzawa, Studies in Nonlinear Programming[M].Stanford University Press, Stanford, 1958.

[4] X.F. Ling, X.Z. Hu. On the iterative algorithm for large sparse saddle point problems[J]. Appl. Math. Comput., 2006,178: 372-379.

猜你喜欢

教学案例计算方法
小学数学课堂导入技巧及案例分析
促进初中化学定量观建构的教学案例
小学数学“反思型” 教学的探索与实践
随机振动试验包络计算方法
基于能量的球压痕硬度的计算方法
不同应变率比值计算方法在甲状腺恶性肿瘤诊断中的应用
一种伺服机构刚度计算方法
对受压加劲板极限承载力计算方法的评述