《数值计算方法》课程概述
《数值计算方法》课程面向理工科各专业本科生,讲授科学计算的基本方法,是一门与计算机使用密切结合且实用性很强的数学公共基础课。课程的所有资源均可在本网站浏览或下载,这里既有教师和学生教与学所必备的基础资源【包括:教学大纲、教学日历、教学设计、教学录像、电子教案、教学课件、实验指导、教学案例、常见问题、参考文献库、学生作品等】,还有丰富的拓展资源【详见爱课程网】
一、课程属性
课程名称:数值计算方法 Numerical Calculation Method
课程定位:数学基础课
课程类型:公共基础课
讲授学时:60学时(建议每周4学时)
学时安排:课堂教学40~44学时+实验教学16~20学时
适用专业:理工科各个专业本科生
教学方式:课内理论教学+课外数学实验
考核方式:考试60分 +数学实验20分+应用课题20分=100分
学 分:3.5学分
先修课程:线性代数、微积分、常微分方程、计算机高级程序设计语言等。
后继课程:偏微分方程数值解及其它专业课程。
二、课程内容
数值计算方法是科学计算的核心内容,它既有纯数学高度抽象性与严密科学性的特点,又有应用的广泛性与实际实验的高度技术性的特点,是一门与计算机使用密切结合的实用性很强的数学课程.主要研究内容有:数值计算的误差,插值法,函数逼近与曲线拟合,数值积分与数值微分,线性方程组的直接解法,线性方程组的迭代法,非线性方程(组)的数值解法,矩阵特征值问题计算,常微分方程数值解。
三、课程目标
数值计算方法也(称为数值分析),是研究用计算机求解各种数学问题的数值方法及其理论的一门学科。随着计算科学与技术的进步和发展,科学计算已经与理论研究、科学实验并列成为进行科学活动的三大基本手段,作为一门综合性的新科学,科学计算已经成为了人们进行科学活动必不可少的科学方法和工具。
本课程特别注重实训教学环节和数学实验教学,通过课程的学习能使学生掌握数值计算方法的基本理论;掌握算法设计及数学建模思想;使学生具备一定的科学计算能力和分析与解决问题的能力,既可为学习后继课程储备数学方法,也会为将来从事科学计算、计算机应用和科学研究等工作奠定必要的数学基础。
简言之,课程目标就是期望学生懂得:
“计算方法”有多少 ?
“计算方法”哪个好 ?
“计算方法”怎么用 ?
“计算方法”用哪好 ?
四、重点难点
课程重点:
理解各种常用数值计算方法的数学原理和理论分析过程,掌握各种数值计算方法的示范性上机程序,学会设计数值算法的基本思路、一般原理和各种数值算法的程序实现。计算方法的基础及核心部分、经典计算方法的来龙去脉、各类方法的所长所短。不求细致的理论推导,只求对方法结构和思想的理解。主要包括:
数值逼近:函数空间,赋范线性空间,内积空间,正交多项式,最佳一致逼近,最佳平方逼近,多项式插值方法,样条函数方法,曲线拟合方法,数值积分方法等;
数值代数:线性代数方程组的直接解法,线性代数方程组的迭代解法,非线性方程的数值解法,矩阵特征值与特征向量的数值解法等;
数值微积分:代数精度,牛顿-柯斯特公式,复化求积公式,龙贝格(Romberg)求积公式,高斯求积公式,数值微分等;
常微分方程数值解:求解初值问题的单步法、多步法,边值问题的差分解法等。
课程难点:
① 数值计算方法的误差分析、收敛性及稳定性分析;
② 基本算法的数学背景、设计思路、原理及适用范围;
③ 数学软件与数值算法的教学融合,即数值算法的编程实现;
④ 利用所学算法分析并解决实际问题。
作为高等学校数学专业和理工科专业必修的公共基础课和研究生的重要基础课程,该课程的目标是培养学生既有崇尚科学计算的情感,又有严谨的科学品质;培养学生既掌握数值计算方法的知识,又具备在理性思维下处理大数据的能力和创新意识,培养其应用科学计算方法和计算机技术分析解决实际问题的能力,提升高素质应用型人才的数学素养。
与此同时,在大数据的背景下,基于开放课程的建设目标,该课程的教授对象不仅局限在高校的在校学生,也对社会学习者开放,为社会学习者提供学习资源。
数学分析、高等代数、常微分方程、计算机高级语言、高等数学、线性代数等。
教 材:
李庆扬,王能超,易大义.《数值分析》第四版. 北京:清华大学出版社, 2008.
主要参考书:
1、刘春凤等编著,《应用数值分析》。冶金工业出版社,2005.
2、丁丽娟. 数值计算方法. 北京理工大学出版社.1997
3、张韵华.数值计算方法与算法(第二版). 张韵华,科学出版社,2006
其他参考书:
1、刘春凤等编著,《实用数值分析教程》。冶金工业出版社,2006.
2、刘春凤等编著,《科学计算基础》。科学出版社,2010.
3、张韵华. Mathematica符号计算系统实用教程.合肥:中国科学技术大学出版社.1998.
4、冯康等编著,《数值计算方法》,国防工业出版社,1978.
5、黄友谦,李岳生.《数值逼近》,高等教育出版社,1987.
6、[美]D.尤金著.邓建松 译. Mathematica使用指南.科学出版社,2003。
7、蒋尔雄, 赵风光, 苏仰锋. 数值逼近(第二版). 复旦大学出版社,2008
8、姜启源, 邢文训等. 大学数学实验. 清华大学出版社,2005.
9、J.Zarowski. An Introduction to Numerical Analysis for Elemctrical and Computer Engineers. Wiley-Interscience,2004.
10、徐萃薇,孙绳武.《计算方法引论》.高等教育出版社(第二版),2002.
常见“问题”
1.如何认识数值计算课程?它与数学学科的其它分支以及计算机的关系如何?
2、何为算法?如何判断数值算法的优劣?
3.数值计算方法中最关注哪些误差?为什么?
4.什么是算法的稳定性?如何判断算法稳定性?
5.什么是问题的病态性?它是否受所用算法的影响?
6. 判断下列命题的正确性:
(1) 解对数据的微小变化高度敏感是病态的。
(2) 高精度运算可以改善问题的病态性。
(3) 无论问题是否病态,只要算法稳定都能得到好的近似值。
(4) 用一个稳定的算法计算良态问题一定会得到好的近似值。
(5) 两个相近数相减必然会使有效数字损失。
(6) 计算机上将 1000 个数量级不同的数相加,不管次序如何结果都是一样的。
7.什么是拉格朗日插值基函数?它们是如何构造的?有何重要性质?
8.写出n+1个点的拉格朗日插值多项式与牛顿均差插值多项式,它们有何异同?
9.用上题给出的三种不同基底构造插值多项式的方法确定基函数的系数,试按工作量由低到高给出排序。
10.为什么高次多项式插值不能令人满意?分段低次插值与单个高次多项式插值相比有何优点?
11.三次样条插值与三次分段埃尔米特插值有何区别?哪一个更优越?请说明理由。
12.确定n+1个节点的三次样条插值函数需要多少个参数?为确定这些参数,需加上什么条件?
13.那种类型函数用三角插值比用多项式插值或分段多项式插值更合适?
14.什么是函数的n阶均差?它有何重要性质?
15.什么是切比雪夫多项式?它有什么重要性质?
16.用切比雪夫多项式零点做插值点得到的插值多项式与拉格朗日插值有何不同?
17.何谓向量范数?给出三种常用的向量范数。
18.什么是矩阵的条件数?如何判断线性方程组是病态的?
19.满足下列哪个条件可判断矩阵接近奇异?
(1)矩阵行列式的值很小
(2)矩阵的范数小
(3)矩阵的范数大
(4)矩阵的条件数小
(5)矩阵的元素绝对值大
20.给出计算积分的梯形公式及中矩形公式。说明他们的几何意义。
21.什么是求积公式的代数精确度?梯形公式和中矩形公式的代数精确度是多少?
22.对给定求积公式的节点,给出两种计算求积系数的方法
23.什么是牛顿—柯特斯求积公式?它的求积节点如何分布?它的代数精度是多少?
24.什么是辛普森求积公式?它的余项是什么?它的代数精度是多少?
25.什么是复合求积法?给出复合梯形公式及其余项表达式。
26.给出复合辛普森公式及其余项表达式,如何估计他们的截断误差?
27.什么是龙贝格求积?他有什么优点?
28.什么是高斯型求积公式?它的求积节点是如何确定的?它的代数精度是多少?为何称它是具有最高代数精度的求积公式?
29.牛顿—科斯特求积和高斯求积的节点分布有什么不同?对同样数目的节点,两种求积方法哪个更精确?为什么?
30.描述自适应求积的一般步骤。怎样得到所需的误差估计?
31.怎样利用标准的一维求积公式计算矩形域上的二重积分?
32.调用MATLAB中的dblquad函数计算二重积分
33.拓展积分区域为矩形区域的dblquad函数计算二重积分
34.对给定函数,给出两种近似的求导的方法,若给定函数有扰动,在你的方法中怎样处理这个问题?
35.用高斯消去法为什么要选主元?那些方程组可以不选主元?
36.高斯消去法于LU分解法有什么关系?用他们解线性方程组Ax=b有何不同?A要满足什么条件?
37.楚列斯基分解与LU分解相比,有什么优点?
38.哪种线性方程组可用平方根法求解?为什么说平方根法计算稳定?
39.什么样的线性方程组可用追赶法求解并能保证计算稳定?
40.判断下列命题是否正确:
(1)只要矩阵A非奇异,则用顺序消去法或直接LU分解可求得线性方程组Ax=b的解。
(2)对称正定的线性方程组总是良态的。
(3)一个单位下三角矩阵的逆仍为单位下三角矩阵。
(4)如果A非奇异,则Ax=b的解的个数是由右端向量b决定的。
(5)如果三对角矩阵的主对角元素上有零元素,则矩阵必奇异。
(6)范数为零的矩阵一定是零矩阵。
(7)奇异矩阵的范数一定是零。
(8)如果矩阵对称,则||A||1=||A||∞.
(9)如果线性方程组是良态的,则高斯消去可以不选主元。
(10)在求解非奇异性线性方程组时,即使系数矩阵病态,则用列主元消去法产生的误差也很小。
(11)||A||1=||AT||∞。
(12)若A是n*n的非奇异矩阵,则cond(A)=cond(A-1)。
41.写出求解线性方程组Ax=b的迭代法的一般形式,并给出它收敛的充分必要条件.
42.给出迭代法x(k+1) =Bx(k) + f 收敛的充分条件,误差估计及其收敛速度
43.举例说明什么是松弛技术。
44.判断下列命题的正确性:
(1) 解对数据的微小变化高度敏感是病态的。
(2) 高精度运算可以改善问题的病态性。
(3) 无论问题是否病态,只要算法稳定都能得到好的近似值。
(4) 用一个稳定的算法计算良态问题一定会得到好的近似值。
(5) 用一个收敛的迭代法计算良态问题一定会得到好的近似值。
(6) 两个相近数相减必然会使有效数字损失。
(7) 计算机上将 1000 个数量级不同的数相加,不管次序如何结果都是一样的。
45.什么是矩阵A的分裂?由A的分裂构造解Ax=b的迭代法,给出雅克比迭代矩阵与高斯—赛德尔迭代矩阵。
46.写出解线性方程组Ax=b的雅克比迭代法与高斯---赛德尔迭代法的计算公式,他们的基本区别是什么?
47.何谓矩阵A严格对角占优?何谓A不可约?
48.将雅克比迭代,高斯—赛德尔迭代和具有最优松弛参数的SOR迭代,按收敛快慢排列
49.什么是解对称正定方程组Ax=b的最速下降法和共轭梯度法?
50.为什么共轭梯度法原则上是一种直接法,但在实际计算中又将他作为迭代法?
51.什么是方程的有根区间?它与求根有何关系?
52.什么是迭代法的收敛阶?
53.如何衡量迭代法收敛的快慢?
54.什么是弦截法?试从收敛阶及每步迭代计算量与牛顿法比较其差别。
55.什么是解方程的抛物线法,再求多项式全部零点中是否优于牛顿法?
56.什么是方程的重根?重根对牛顿法收敛阶有何影响?试给出具有二阶收敛的计算重根方法。
57.什么是求解n维非线性方程组的牛顿法?它每步迭代要调用多少次标量函数(计算偏导数与计算函数值相当)。
58.格什戈林圆盘与特征值的关系。
59.什么是求解特征值问题的条件数?它与求解线性方程组的条件数是否相同?两者间的区别是什么?实对称矩阵的特征值问题总是良态吗?
60.什么是幂法?它收敛到矩阵A的哪个特征向量?若A的主特征值为单的,用幂法计算的收敛速度由什么量决定?怎样改进幂法的收敛速度?
61.反幂法收敛到矩阵A的哪个特征向量?在幂法或反幂法中,为什么每步都要将迭代向量规范化?
62.用一次QR分解可将一般矩阵约化成三角形式,而三角矩阵的特征值恰为其对角元素,能否通过这一过程得到原始矩阵的特征值?为什么?
63.为什么使用QR迭代计算矩阵特征值时要先将它化为上海森伯格矩阵或三角矩阵?为什么不能约化到三角矩阵?
64.求矩阵A特征值的QR迭代时,具体收敛到哪种矩阵是由A的哪种性质决定的?
65.常微分方程初值问题右端函数f满足什么条件时解存在唯一?什么是好条件的方程?
66.什么是欧拉法和后退欧拉法?它们是怎样导出的?并给出局部截断误差。
67.何谓单步法的局部截断误差?何谓数值方法是p阶精度?
68.给出梯形法和改进欧拉法的计算公式,它们是几阶精度的?
69.显示方法与隐式方法的根本区别是什么?如何求解隐式方程,应如何给出迭代初始值?
70.什么是S级的龙格-库塔法,它是S阶方法吗?写出经典的四阶龙格-库塔法。
71.如何导出线性多步法的公式?它与单步法有何区别?
72.利用数值积分方法构造线性多步方法
73.什么是阿当姆斯的显式和隐式公式?它们为什么能用等阶的积分方程导出?
74.用多步法求数值解为什么要用预测-校正方法?
75.什么是多步法的收敛性和相容性?试给出多步法的相容条件。
76.什么是多步法的特征多项式?
77..什么是根条件?
78.根条件在线性多步法的收敛性和稳定性中有何作用?
79.什么是刚性方程组?为什么刚性微分方程数值求解非常困难?什么数值方法适合求解刚性方程?