数值分析课件 第1章 绪论 下载本文

内容发布更新时间 : 2024/5/21 23:01:22星期一 下面是文章的全部内容请认真阅读。

---------------------------------------------------------------最新资料推荐------------------------------------------------------

函数值的绝对误差等于函数的全微分,自变量的微分即为自变量的误差; 函数值的相对误差等于函数的对数的全微分。

将式(1-5)及(1-6)中的差限 和特别地, 由式(1-5)及(1-6)可得和、 差、 积、商之误差及相对误差公式

和*( )re 分别换成误r , 求和的

各项变成绝对值。

1212122 1x e1 2x e11221222()()1()e xxeee x xxxeeexxx=+ (1-7) 121212121212121122()()()rrrrrrrrrxxe xxeexxxxe x

-8) 由以上的式(1-7)及(1-8)

可得出 (e xx121212121212112122)()()rrrrrrrrrreeeee x xeeeexeeeeex=+=++=+ (1-9) 因此, 和、 差的误差限不超过各数的误差限之和, 积、 商的相对误差限不超过各数的相对误差限之和。 例 4 设yx=, 求 y的相对误差与x的相对误差之间的关系。 解 由式(1-9)得 ( )(ln)re ydx==所以地,x的相对误差是x的相对误差的一半。

n(ln )( )nrndxne x= nx 的相对误差是x的相对误差的n倍, 特别 例 5 设对误差。

0x , x的相对误差为 , 求ln x的绝解 由于( )e x( )re xx ==, 即 ( )e xx=, 所以 ( )e x(ln )(ln )( )rexdxe xx=== 例 6 已测得某场地长为l的值为d 的 值 为d=*|| 0.1ddm, 试求面积s相对误差。

11 / 21

于是绝对误差限 ( )(相对误

差限 *100 ,| 0.2lmm=宽,*80 ,m已 知*|ll的绝对误差与ld=解 因

,,,sdld===

(1-5)

**)110smlmd====()**0.2

,0.1

,,ldm==

知 中而

)()()2*800.21100.127sm+=

( )( )*s*****( )s270.31%||8800rssl d=== 3.2 误差定性分析 数值运算中的误差分析是一个很重要而复杂的问题, 上节讨论了不精确数据运算结果的误差限, 他只适用于简单情形, 然而一个工程或科学计算问题往往要运算千万次, 由于每步运算都有误差, 如果每步都做误差分析是不可能的, 也不科学, 因为误差积累有正有负,绝对值有大有小, 都按最坏情况估计误差限得到的结果比实际误差大得多, 这种保守的误差估计不反映实际误差积累。

考虑到误差分布的随机性, 有人用概率统计方法, 将数据和运算中的舍入误差视为适合某种分布的随机变量,然后确定计算结果的误差分布, 这样得到的误差估计更能接近实际, 这种方法称为概率分析法。

20 世纪 60 年代以后对舍入误差分析提出了一些新的方法, 较重要的有以下两种:

1.向后误差分析法是把新算出的量由某个 公式表达, 它仅含基本的算术运算, 如假定新算出量 (xg a=,若

是前面已算出的量或原始数据, , ia 的摄动为i , 使得由

---------------------------------------------------------------最新资料推荐------------------------------------------------------

浮点运算得出结果为 则可根据xxi 的界由摄动理论

估计最后舍入误差的界, 威克逊(Wilkinson) 将这种方法fl应用于数值代数(矩阵运算) 的误差分析, 取得较好的效果。 2.区间分析法是把参加运算的数 , , ,看成区间量根据区间运算规则求得最后结果的近似值及误差限。

例如,似数为, , 由 于x[,],xX y +=若计算*zx y=(*为运算符号), 由[ , ][,]z zzz zz=+,则z为所求近似值, 而 z则为误差限。

上面简略介绍了误差分析的几种方法, 但都不是十分有效的, 目前尚无有效的方法对误差Y= , =Z 作出定量估计。

为了确保数值计算结果的正确性, 首先需对数值计算问题作出定性分析, 为此本节讨论以下三个问题。

3.3 病态问题与条件数 对一个数值问题本身 如果输入数据又微小扰动(即误差), 导致输出数据(即问题解)相对误差很大, 这就是病态问题, 例如计算函数值 ( )f x 时, 若x有扰动x,函 数 值f x*xxx =, 其相对误差 为xf x*()的 相 对 误 差 为*( )f x()( )f x。

相对误差比值 *( )f x()( )( )f x( )f xpf xxxf xCx= (1-10) pC 称为计算函数值问题的条件数。

自变量相对误差一般不会太大, 如果条件数pC 很大, 将引起

13 / 21

都, x y的近]+*X Y=,,y[,则

函数值相对误差很大, 出现这种情况的问题就是病态问题。 例如,( )f xx=则有npCn= , 他表示相对误 差 可 能 放 大 n 倍 。

如(1.02)1.24f误差为 2%, 函数值相对误差为 24%, 这是问题可以认为是病态的。

一般情况条件数C 越大病态越严重。

10*n =1,,有(1)1f= ,, 若取1.02xx==自变量相对10pC 就认为是病态的,p其他计算问题也要分析是否病态。

例如解线性方程组, 如果输入数据有微小误差引起解的巨大误差, 就认为是病态方程组, 我们将在第5 章用矩阵的条件数来分析这种现象。

3.4 算法的数值稳定性 数值运算的误差分析是个很重要而复杂的问题, 对于一个工程或科学计算问题往往要运算千万次, 由于几乎每一步运算都会产生误差, 如果每步都做误差分析是不可能的, 也不科学, 因为误差累积有正有负, 绝对值有大有小, 很可能有一部分相互抵消。

如果每一步都按最坏情况估计误差不反映实际情况。

近年来, 虽然发展起来一些新的误差估计办法, 如概论统计法, 事后误差估计法及区间分析法等等。

但这些方法目前也仅仅在特定的一些问题 上取得了 较为满意的结果, 还正在发展中。

对于计算步骤较多的算法, 一般不宜采用上述的一些定量估计

---------------------------------------------------------------最新资料推荐------------------------------------------------------

的办法。

而是采用定性分析的办法, 即讨论算法的数值稳定性。 定义 3 一个算法如果输入数据有误差, 而在计算过程中舍入误差得到控制, 则称此算法是数值稳定的, 否则称此算法是不稳定的。

在一种算法中, 如果某一步有了 绝对值为的误差, 而以后各步计算都准确地进行, 仅由 所引起的误差的绝对值, 始终不超过 , 就说算法是稳定的。

对于数值稳定性的算法, 不用做具体的误差估计, 就认为其结果是可靠的。

而数值不稳定的算法尽量不要使用。

计误差。

若计算出例 7 计

并估

nI 的递推公式

由分部积分可得计算算

10(0,1

-11) 0I , 代入(1-11), 可

逐次求出

的 值。

要算出展开部分和 0I 就要先计算1e, 若用泰勒多项式

, 并取7k = , 用 4 位小数

计算, 则得e=10.3679,截断误差14710.3679108!4R。

计算过程中小数点后第 5 位的数字按四舍五入原则舍入, 由此产生的舍入误差这里先不讨论。

15 / 21