数值计算误差精品文稿.ppt
数值计算误差数值计算误差1第1页,本讲稿共24页主要内容主要内容q 误差的来源误差的来源q 几个基本概念几个基本概念q 误差估计误差估计q 数值稳定性数值稳定性/误差的传播与积累误差的传播与积累q 数值计算中的一些注意事项数值计算中的一些注意事项l 绝对误差、绝对误差限绝对误差、绝对误差限/误差限误差限l 相对误差、相对误差限相对误差、相对误差限l 有效数字有效数字2第2页,本讲稿共24页误差误差 是人们用来描述数值计算中近似解的精确程度,是科是人们用来描述数值计算中近似解的精确程度,是科学计算中的一个十分重要的概念学计算中的一个十分重要的概念q 误差的来源误差的来源数值计算的误差数值计算的误差l 从实际问题中抽象出数学模型从实际问题中抽象出数学模型 模型误差模型误差l 通过测量和实验得到模型中的各种数据通过测量和实验得到模型中的各种数据 观测误差观测误差l 数学模型的数值求解数学模型的数值求解 截断误差(方法误差)截断误差(方法误差)l 机器字长有限机器字长有限 舍入误差舍入误差在数值分析中,我们总假定数学模型是准确的,因而不考在数值分析中,我们总假定数学模型是准确的,因而不考虑模型误差和观测误差,主要研究虑模型误差和观测误差,主要研究截断误差截断误差和和舍入误差舍入误差对对计算结果的影响计算结果的影响3第3页,本讲稿共24页误差举例误差举例例:近似计算例:近似计算解法之一:将 作Taylor展开后再积分S4R4取取则则称为称为 截断误差截断误差4第4页,本讲稿共24页误差举例误差举例保留小数点后保留小数点后 4 位数字位数字舍入误差舍入误差5第5页,本讲稿共24页绝对误差:绝对误差:绝对误差绝对误差x 精确值精确值x*近似值近似值则称则称 *为为 绝对误差限绝对误差限/误差限误差限l 若存在一个正数若存在一个正数 *,使得,使得工程上通常记为:工程上通常记为:x=x*|e*|=|x*-x|*l 绝对误差绝对误差 可能取正,也可能取负可能取正,也可能取负l 绝对误差绝对误差 越小越具有参考价值越小越具有参考价值l 但但 绝对误差绝对误差 却不能很好地表示近似值的精确程度却不能很好地表示近似值的精确程度6第6页,本讲稿共24页相对误差相对误差I can tell that this parts diameter is 20cm 0.1cm.Of course mine is more accurate!The accuracy relates to not only the absolute error,but also to the size of the exact valueI can tell that distance between two planets is 1 million light year 1 light year.7第7页,本讲稿共24页相对误差相对误差相对误差:相对误差:x*-x er*=x l 若存在正数若存在正数 r*,使得,使得|er*|r*,则称则称 r*为为相对误差限相对误差限l 由于真值难以求出,通常也使用下面的定义作为相对误差由于真值难以求出,通常也使用下面的定义作为相对误差 x*-x er*=x*l 近似值的精确程度取决于近似值的精确程度取决于 相对误差相对误差 的大小的大小l 实际计算中我们所能得到的是实际计算中我们所能得到的是 误差限误差限 或或 相对误差限相对误差限8第8页,本讲稿共24页有效数字有效数字有效数字:有效数字:若近似值若近似值 x*的误差限是某一位的半个单位,的误差限是某一位的半个单位,且该位到且该位到 x*的第一位非零数字共有的第一位非零数字共有 n 位,则称位,则称 x*有有 n 位位有效数字有效数字x*=a1.a2an 10m (a1 0)且有且有|x-x*|0.5 10m-n+1则则 x*有有 n 位有效数字位有效数字 设设 x*为为 x 的近似值,若的近似值,若 x*可表示为可表示为l 等价描述等价描述 9第9页,本讲稿共24页有效数字有效数字例:例:=3.14159265 ,近似值,近似值 x1=3.1415,x2=3.1416问:问:x1,x2 分别有几位有效数字?分别有几位有效数字?例:例:写出下列各数的具有写出下列各数的具有 5 位有效数字的近似值位有效数字的近似值 187.9325,0.037855,8.000033187.93,0.037856,8.00004,5注:数字末尾的注:数字末尾的 0 不可以随意添加或省略!不可以随意添加或省略!10第10页,本讲稿共24页有效数字有效数字思考:思考:设设 x*=a1.a2an 10m (a1 0),且,且|x-x*|0.5 10k则则 x*有有 m+1-k 位有效数字位有效数字?11第11页,本讲稿共24页有效数字有效数字定理:定理:设近似值设近似值 x*可表示为可表示为 x*=a1.a2al 10m (a1 0),若若 x*具有具有 n 位有效数字,则其相对误差限满足位有效数字,则其相对误差限满足 1 r*2a1 10-(n-1)反之,若反之,若 x*的相对误差限满足的相对误差限满足 则则 x*至少有至少有 n 位有效数字。位有效数字。1 r*2(a1+1)10-(n-1)有效位数越多,有效位数越多,相对误差限越小相对误差限越小12第12页,本讲稿共24页误差估计误差估计误差估计:误差估计:估计估计误差限误差限和和相对误差限相对误差限l 记记 (x*)为为 x*的误差限,则有的误差限,则有(x1*x2*)(x1*)+(x2*)(x1*x2*)|x2*|(x1*)+|x1*|(x2*)(x1*/x2*)|x2*|(x1*)+|x1*|(x2*)|x2*|213第13页,本讲稿共24页误差估计误差估计l 设一元函数设一元函数 f(x)可微,可微,x*为为 x 的近似值,则有的近似值,则有 r(f(x*)条件数条件数 记为记为 Cp14第14页,本讲稿共24页误差估计误差估计l 设多元函数设多元函数 f(x)可微,可微,x*=(x1*,x2*,xn*)为为 x=(x1,x2,xn)的近似值,则有的近似值,则有(f(x*)15第15页,本讲稿共24页数值稳定性数值稳定性误差的传播与积累:误差的传播与积累:原始数据的误差导致最终结原始数据的误差导致最终结果也有误差的过程称为误差的传播果也有误差的过程称为误差的传播例:例:近似计算近似计算 ,其中,其中 n=1,2,.,8解:解:此公式此公式精确精确成立成立易知易知保留保留 3 位位有效数字有效数字16第16页,本讲稿共24页数值稳定性数值稳定性可得可得但显然有但显然有?What happened?!?17第17页,本讲稿共24页数值稳定性数值稳定性考察第 n 步的误差即有即有 误差以误差以 5 倍倍的速度增长!的速度增长!我们需要改变算法我们需要改变算法!说明该计算过程是说明该计算过程是不稳定不稳定的!的!18第18页,本讲稿共24页数值稳定性数值稳定性解法二:解法二:具体思路:先估计一个具体思路:先估计一个 SN,再反过来求,再反过来求 Sn(n N)在数值计算中,在数值计算中,误差误差不可避免,不可避免,算法的算法的稳定性稳定性是一个非常重要的性质。是一个非常重要的性质。ex11.m19第19页,本讲稿共24页数值稳定性数值稳定性算法的稳定性:算法的稳定性:在计算过程中,如果误差不增长,则在计算过程中,如果误差不增长,则称该算法是稳定的,否则为不稳定的。称该算法是稳定的,否则为不稳定的。例:例:教材第教材第 9 页,例页,例 5 20第20页,本讲稿共24页数值计算注意事项数值计算注意事项q 避免相近的数相减避免相近的数相减例:例:a1=0.12345,a2=0.12346,各有各有5位有效数字。位有效数字。而而 a2 a1=0.00001,只剩下只剩下1位有效数字。位有效数字。l 几种经验性避免误差危害的方法:几种经验性避免误差危害的方法:当当|x|1 时:时:例:例:教材第教材第 11 至至 12 页,例页,例 7,8,9,1021第21页,本讲稿共24页数值计算注意事项数值计算注意事项q 避免数量级相差很大的数相除避免数量级相差很大的数相除可能会产生溢出的情形可能会产生溢出的情形q 避免大数吃小数避免大数吃小数例:例:计算计算(109+10-9-109)/10-9 例:例:按从小到大、以及从大到小的顺序分别计算按从小到大、以及从大到小的顺序分别计算S=1+2+3+40+108ex12.m求和时求和时 从小到大从小到大 相加,可使结果的误差减小相加,可使结果的误差减小22第22页,本讲稿共24页数值计算注意事项数值计算注意事项q 简化计算,避免误差积累简化计算,避免误差积累q 选用稳定的算法选用稳定的算法例:例:已知已知 p(x)=xn+xn-1+x+1,计算计算 n=20 时,时,p(8)的值。的值。如果直接代入计算,则需 n(n-1)/2 次乘法和 n 次加法运算如果将如果将 p(x)改写为:改写为:p(x)=x(x(x(x+1)+1)+1)+1则只需则只需 n 1次乘法和次乘法和 n 次加法运算。次加法运算。秦九韶算法秦九韶算法 或或 Horner算法算法23第23页,本讲稿共24页作业作业n 教材教材 P 19:1、2、3、5n 提示提示l 1、2、5 题可利用题可利用 Taylor 展开或条件数展开或条件数24第24页,本讲稿共24页