第一章复习与思考题
1. 什么是数值分析?它与数学科学和计算机的关系如何?
答:数值分析也称计算数学,是数学科学的一个分支,主要研究的是用计算机求解各种数学问题的数值计算方法及其理论与软件实现. 数值分析以数学问题为研究对象,但它并不像纯数学那样只研究数学本身的理论,而是把理论与计算紧密结合,着重研究数学问题的数值方法及其理论.
2. 何谓算法?如何判断数值算法的优劣? 答:一个数值问题的算法是指按规定顺序执行一个或多个完整的进程,通过算法将输入元变换成输出元.
一个面向计算机,有可靠理论分析且计算复杂性好的算法就是一个好算法. 因此判断一个算法的优劣应从算法的可靠性、准确性、时间复杂性和空间复杂性几个方面考虑.
3. 列出科学计算中误差的三个来源,并说出截断误差与舍入误差的区别.
答:用计算机解决实际问题首先要建立数学模型,它是对被描述的实际问题进行抽象、简化而得到的,因而是近似的,数学模型与实际问题之间出现的误差叫做模型误差.
在数学模型中往往还有一些根据观测得到的物理量,如温度、长度等,这些参量显然也包含误差,这种由观测产生的误差称为观测误差.
当数学模型不能得到精确解时,通常要用数值方法求它的近似解,其近似解和精确解之间的误差称为截断误差或方法误差.
有了求解数学问题的计算公式以后,用计算机做数值计算时,由于计算机字长有限,原始数据在计算机上表示时会产生误差,计算过程又可能产生新的误差,这种误差称为舍入误差.
截断误差和舍入误差是两个不同的概念,截断误差是由所采用的数值方法而产生的,因而也称方法误差,舍入误差是由数值计算而产生的.
4. 什么是绝对误差与相对误差?什么是近似数的有效数字?它与绝对误差和相对误差有何关系?
答:设x为准确值,x*为x的一个近似值,称e*?x*?x为近似值x*的绝对误差,简称误差. 近似值的误差e*与准确值x的比值作er.
通常我们无法知道误差的准确值,只能根据测量工具或计算情况估计出误差绝对值的一个上界?*,?*叫做近似值的误差限.
若近似值x*的误差限是某一位的半个单位,该位到x*的第一位非零数字共有n位,就说x*有n位有效数字.
有效数位越多,绝对误差限越小,相对误差限也越小.
5. 什么是算法的稳定性?如何判断算法稳定?为什么不稳定算法不能使用?
答:一个算法如果输入数据有误差,而在计算中舍入误差不增长,则称此算法是数值稳定的;否则称为不稳定的.
判断一个算法是否稳定主要是看初始数据误差在计算中的传播速度,如果传播速度很快就是数值不稳定的.
对于不稳定的算法来说,由于其误差传播是逐步扩大的,因而计算结果不可靠,所以不稳定的算法是不能使用的.
6. 什么是问题的病态性?它是否受所用算法的影响? 答:对一个数值问题本身来说,如果输入数据有微小扰动(即误差),引起输出数据(即
第1页 共3页 262980337.doc
*e*x*?x?称为近似值x*的相对误差,记xx问题解)相对误差很大,这就是病态问题.
病态问题是数值问题本身固有的,不是由计算方法引起的,病态性并不受所用算法的影响,对病态问题必须采用特殊的方法以减少误差危害.
7. 什么是迭代法?试利用x?a?0构造计算3a的迭代公式.
答:迭代法是一种按同一公式重复计算逐次逼近真值的算法,是数值计算普遍使用的重要方法.
在计算3a时,可从等价的方程求根问题x?a?0出发,利用方程的等价形式
331a1ax?(2x?2)即可得到计算3a的迭代公式xk?1?(2xk?2).
3x3xk8. 直接利用以直代曲的原则构造求方程x?a?0的根x*?2a的迭代法.
答:求方程f(x)?0的根在几何上就是求曲线y?f(x)与x轴交点x*的横坐标. 假如已给出一个近似值xk,用该点(xk,f(xk))处的切线逼近曲线,令xk?1为该切线与x轴交点的横坐标,一般情况下,xk?1近似方程根x*的程度比xk近似x*的程度要好,这就是以直
2代曲的思想. 曲线y?x?a在点(xk,f(xk))处的切线方程为y?2xkx?xk?a,切线方
2程的根x?1a2以此作为新的近似值,就得到了求方程x?a?0的根x*?a的(xk?),
2xk1a(xk?). 2xk迭代法xk?1?9. 举例说明什么是松弛技术. 答:在积分近似计算的梯形公式Tn?h[f(xi?1)?f(xi)]中,取n?1,2可分别得 ?i?12nb?a[f(a)?f(b)],2 b?aa?bT2?[f(a)?2f(c)?f(b)],c?.42T1?令
S1?T2??(T2?T1)?(1??)T2??T1, 若取??1/3,则得
41b?aS1?T2?T1?[f(a)?4f(c)?f(b)],
336这就是松弛技术,?称为松弛因子.
第2页 共3页 262980337.doc
10. 考虑无穷级数为什么?
?n,
n?1?1答:虽然在理论上无穷级数
1是发散的,但在计算机上计算时,由于计算机只能进?nn?1?行有限数的计算,所以无论n取多大的值,级数的和都是有限数.
11. 判断下列命题的正确性:
(1) 解对数据的微小变化高度敏感是病态的. (2) 高精度运算可以改善问题的病态性.
(3) 无论问题是否病态,只要算法稳定都能得到好的近似值. (4) 用一个稳定的算法计算良态问题一定会得到好的近似值. (5) 用一个收敛的迭代法计算良态问题一定会得到好的近似值. (6) 两个相近数相减必然会使有效数字损失.
(7) 计算机上将1000个数量级不同的数相加,不管次序如何结果都是一样的.
答:(1)对. (2)错. (3)错. (4)错. (5)对. (6)错. (7)错.
第3页 共3页 262980337.doc
相关推荐: