有效数字和误差分析.ppt

上传人:wuy****n92 文档编号:80505841 上传时间:2023-03-23 格式:PPT 页数:54 大小:1.23MB
返回 下载 相关 举报
有效数字和误差分析.ppt_第1页
第1页 / 共54页
有效数字和误差分析.ppt_第2页
第2页 / 共54页
点击查看更多>>
资源描述

《有效数字和误差分析.ppt》由会员分享,可在线阅读,更多相关《有效数字和误差分析.ppt(54页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 随着科学技术的飞速发展,随着科学技术的飞速发展,科学计算科学计算愈来愈显愈来愈显示出其重要性。科学计算的应用之广已示出其重要性。科学计算的应用之广已遍及各行各遍及各行各业业;例如:气象、;例如:气象、地震资料地震资料的分析图像,飞机、汽的分析图像,飞机、汽车及轮船的外形设计,车及轮船的外形设计,油藏的数值模拟油藏的数值模拟,高科技研,高科技研究等都离不开科学计算。因此,作为科学计算的数究等都离不开科学计算。因此,作为科学计算的数学工具的数值计算方法已成为各学工具的数值计算方法已成为各高等院校数学、物高等院校数学、物理和计算机应用专业理和计算机应用专业等理工科本科生的等理工科本科生的专业基础课

2、专业基础课,也是也是工科硕士研究生工科硕士研究生的学位必修课。的学位必修课。为什么要开设这个课呢?为什么要开设这个课呢?1.绪论绪论1.1.认识建立算法和对每个算法进行理论分析是基本认识建立算法和对每个算法进行理论分析是基本 任务,主动适应任务,主动适应“公式多公式多”的特点;的特点;2.2.注重各章建立算法的问题的提法,搞清问题的基注重各章建立算法的问题的提法,搞清问题的基 本提法,逐步深入;本提法,逐步深入;3.3.理解每个算法建立的数学背景,数学原理和基本理解每个算法建立的数学背景,数学原理和基本 线索,对最基本的算法要非常熟悉;线索,对最基本的算法要非常熟悉;4.4.认真进行数值计算的

3、训练,学习各章算法完全是认真进行数值计算的训练,学习各章算法完全是 为用于实际计算,必须真会算。为用于实际计算,必须真会算。如何进行学习?如何进行学习?数值分析又称计算方法或数值计算方法,数值分析又称计算方法或数值计算方法,是一门与计算机应用密切结合的实用性很强的是一门与计算机应用密切结合的实用性很强的数学课程,它数学课程,它研究的是各种数学问题的一类近研究的是各种数学问题的一类近似解法似解法数值方法数值方法,即从一组,即从一组原始数据原始数据(如(如模型中的某些参数)出发,按照确定的模型中的某些参数)出发,按照确定的运算规运算规则则进行进行有限步运算有限步运算,最终获得数学问题数值形,最终获

4、得数学问题数值形式的式的满足精度要求满足精度要求的的近似解近似解。1.1 研究对象研究对象 数值分析方法课程主要数值分析方法课程主要讨论讨论如何构造如何构造求数学模型近似解的算法求数学模型近似解的算法,讨论讨论算法的数算法的数学原理、误差和复杂性学原理、误差和复杂性,配合程序设计配合程序设计进进行行计算试验并分析试验结果计算试验并分析试验结果。与纯数学的理论方法不同,用数值分与纯数学的理论方法不同,用数值分析所求出的结果一般不是解的精确值或者析所求出的结果一般不是解的精确值或者准确的解析表达式,而是所求真解的准确的解析表达式,而是所求真解的某些某些近似值或近似曲线。近似值或近似曲线。实际问题数

5、学模型数值计算方法程序设计上机计算数值结果 根据数学模型提出求解的数值计算方法直到编出程序上机算出结果,这一过程便是数值分析研究的对象数值计算方法的任务数值计算方法的任务 数值计算方法的主要特点数值计算方法的主要特点借助计算机提供切实可行的数学算法借助计算机提供切实可行的数学算法.想想的精确度的精确度;收敛且稳定收敛且稳定;误差可以分析或估计误差可以分析或估计.所提出的算法必须具有:可靠的理论分析所提出的算法必须具有:可靠的理论分析;理理时间复杂性好时间复杂性好_指节省时间;指节省时间;空间复杂性好空间复杂性好_指节省存储量。指节省存储量。计算复杂性好计算复杂性好 通过数值实验证明算法行之有效

6、通过数值实验证明算法行之有效.F采用采用“近似替代近似替代”方法方法逼近逼近F采用采用“构造性构造性”方法方法F采用采用“离散化离散化”方法方法 把求连续变量的问题转化为求离散变量的问题把求连续变量的问题转化为求离散变量的问题F采用采用“递推化递推化”方法方法 复杂的计算归结为简单过程的多次重复,易于复杂的计算归结为简单过程的多次重复,易于用循环结构来实现(迭代法)。用循环结构来实现(迭代法)。F采用各种采用各种搜索搜索方法方法构造数值算法主要手段构造数值算法主要手段1、数值逼近、数值逼近 插值与拟合、数值积分与微分插值与拟合、数值积分与微分2、数值代数、数值代数 线性代数方程组的解法、非线性

7、代数方线性代数方程组的解法、非线性代数方程(组)的解法程(组)的解法3、微分方程数值解、微分方程数值解 ODE PDE1.2 研究内容研究内容1.3.1 误差的来源与分类误差的来源与分类 从实际问题中抽象出数学模型从实际问题中抽象出数学模型 模型误差模型误差例例:质量为质量为m的物体,在重力作用下的物体,在重力作用下,自由下落,自由下落,其下落距离其下落距离s 与时间与时间t 的关系是:的关系是:其中其中 g 为重力加速度。为重力加速度。1.3 误差误差 通过测量得到模型中参数的值通过测量得到模型中参数的值 观测误差观测误差 求近似解求近似解 方法误差方法误差(截断误差)(截断误差)例如,当函

8、数例如,当函数 用用 maclaurin 多项式多项式 近似代替时,数值方法的截断误差是近似代替时,数值方法的截断误差是与与 0 0 之间。之间。在在机器字长有限机器字长有限 舍入误差舍入误差 用计算机、计算器和笔算,都只能用有限位用计算机、计算器和笔算,都只能用有限位=3.1415926 小数来代替无穷小数或用位数较少的小数来小数来代替无穷小数或用位数较少的小数来代替位数较多的有限小数,如:代替位数较多的有限小数,如:四舍五入后在数值计算方法中,主要研究在数值计算方法中,主要研究截断误差截断误差截断误差截断误差和和舍入误差舍入误差舍入误差舍入误差(包括初始数据的误差)对计算结果的影响!(包括

9、初始数据的误差)对计算结果的影响!1.3.2 误差与有效数字误差与有效数字1、绝对误差与绝对误差限、绝对误差与绝对误差限例例 :若用以厘米为最小刻度的尺去量桌子的长,大约若用以厘米为最小刻度的尺去量桌子的长,大约为为1.451.45米,求米,求1.451.45米的绝对误差。米的绝对误差。1.45米的米的绝对误差绝对误差=?不知道!不知道!定义定义:设设 是准确值,为是准确值,为 的一个近似值,称的一个近似值,称 是近似值是近似值 的的绝对误差绝对误差绝对误差绝对误差,简称为简称为误差误差误差误差。但实际问题往往可以估计出但实际问题往往可以估计出但实际问题往往可以估计出但实际问题往往可以估计出

10、不超过某个正数不超过某个正数不超过某个正数不超过某个正数 ,即即即即 则称则称则称则称 为为为为绝对误差限绝对误差限绝对误差限绝对误差限,有了绝,有了绝,有了绝,有了绝对误差限对误差限对误差限对误差限就可以知道就可以知道就可以知道就可以知道 的范围为的范围为的范围为的范围为即即即即 落在落在落在落在 内。内。内。内。在应用上,常常采用下列写法来刻划在应用上,常常采用下列写法来刻划在应用上,常常采用下列写法来刻划在应用上,常常采用下列写法来刻划 的精度。的精度。的精度。的精度。例例1 设设x=3.1415926 近似值近似值x*=3.14,它的绝它的绝 对误差是对误差是 0.0015926,有,

11、有 x-x*=0.0015926 0.002=0.2 10-2例例2 又近似值又近似值x*=3.1416,它的绝对误差是,它的绝对误差是 0.0000074,有,有 x-x*=0.0000074 0.000008=0.8 10-5例例3 而近似值而近似值x*=3.1415,它的绝对误差是,它的绝对误差是 0.0000926,有,有 x-x*=0.0000926 0.0001=0.1 10-3可见,可见,绝对误差限绝对误差限*不是唯一的,但不是唯一的,但*越小越好越小越好2、相对误差与相对误差限、相对误差与相对误差限定义定义:设设 是准确值,是准确值,是近似值,是近似值的误差,是近似值,是近似值

12、的误差,通常取通常取为近似值为近似值 的的相对误差相对误差相对误差相对误差,记作,记作 ,称称 一般情况下是不知道一般情况下是不知道一般情况下是不知道一般情况下是不知道 的,怎么办?的,怎么办?的,怎么办?的,怎么办?事实上,当事实上,当 较小时较小时是是 的二次方项级的二次方项级,故可忽略不计故可忽略不计.相应地,若正数相应地,若正数满足满足 则称则称 为为 的的相对误差限相对误差限。例例4.甲打字每甲打字每100个错一个,乙打字每个错一个,乙打字每1000个个 错一个,求其相对误差限错一个,求其相对误差限解:解:根椐定义根椐定义:甲打字时的相对误差限甲打字时的相对误差限 乙打字时的相对误差

13、限乙打字时的相对误差限 3、有效数字有效数字定义:定义:如果如果则说则说 近似表示近似表示 准确到小数后第准确到小数后第 位,并从这位,并从这由上述定义由上述定义第第 位起直到最左边的非零数字之间的一切数字都位起直到最左边的非零数字之间的一切数字都称为称为有效数字有效数字有效数字有效数字,并把有效数字的位数称为并把有效数字的位数称为有效位数有效位数有效位数有效位数。定义定义:若近似值若近似值 的误差限是某一位的半个单位的误差限是某一位的半个单位,也即,若也即,若有有 位有效数字。位有效数字。则称则称则称则称其中,其中,是是1 1到到9 9中的一个数字;中的一个数字;是是0 0到到9 9中一个数

14、字;中一个数字;为整数,且为整数,且 该位该位到到 的的左边第一位非零数字共有第一位非零数字共有 位位,就说就说 有有 位位有效数字有效数字。取取 作作 的近似值,的近似值,就有三位有效数字;就有三位有效数字;取取 作作 的近似值,的近似值,就有五位有效数字。就有五位有效数字。例如:例如:x-x*=0.0015926 0.002=0.210-20.510-2前面例前面例1 1前面例前面例2 2x-x*=0.0000074 0.000008=0.810-5 0.510-4 关于有效数字说明关于有效数字说明 用用四舍五入取准确值的前四舍五入取准确值的前n位位x*作为近似值作为近似值,则则 x*必有

15、必有n位有效数字。如位有效数字。如3.142作为作为 的近似值的近似值 有有4位有效数字,而位有效数字,而3.141为为3位有效数字位有效数字 有效数字相同的两个近似数,绝对误差不一定有效数字相同的两个近似数,绝对误差不一定 相同。例如,设相同。例如,设x1*=12345,设设x2*=12.345,两者两者 均有均有5位有效数字但绝对误差不一样位有效数字但绝对误差不一样 x-x1*=x-12345 0.5=1/2 100 x-x2*=x-12.345 0.0005=1/2 10-3 把任何数乘以把任何数乘以10p(p=0,1,)不影响有效位数不影响有效位数 准确值具有无穷多位有效数字准确值具有

16、无穷多位有效数字,如三角形面积如三角形面积 S=1/2ah=0.5ah 因为因为0.5是真值是真值,没有误差没有误差 *=0,因此因此n,准确值具有无穷位有效数字准确值具有无穷位有效数字4、误差限与、误差限与有效数字的关系有效数字的关系 则则 至少具有至少具有 位有效数字。位有效数字。Th1Th1:对于用对于用 式表示的近似数式表示的近似数 ,若,若 具有具有 位有效位有效数字,则其相对误差限为数字,则其相对误差限为反之,若反之,若 的相对误差限为的相对误差限为例例5 已知近似数已知近似数x*有两位有效数字,试求其相有两位有效数字,试求其相 对误差限对误差限解:已知解:已知 n=2 代入公式代

17、入公式 r*=1/2x1 10-(n-1)得得 r*=1/2x1 10-1 x*的第一位有效数字的第一位有效数字x1没有给出,可进行如下讨没有给出,可进行如下讨论:当论:当 x1=1 r*=1/2x1 10-1=1/2*1 10-1=5%x1=9 r*=1/2x1 10-1=1/2*9 10-1=0.56%取取 x1=1 时相对误差为最大,即时相对误差为最大,即 5%例例6 已知近似数已知近似数x*的相对误差限为的相对误差限为0.3%,问,问x*有几位有效数字?有几位有效数字?解:由解:由得得当当x1=1时时,3 10-3=1/4 10-(n-1)12 10-3=10-(n-1)上式两边取以上

18、式两边取以10为底的对数得为底的对数得 lg22+lg3+(-3)=-n+1 lg2=0.3010 lg3=0.4771 2 0.3010+0.4771-4=-n n=2.9209 当当x1=9时时,3 10-3=1/20 10-(n-1)6 10-3=10-n 上式两边取以上式两边取以10为底的对数得为底的对数得 lg2+lg3+(-3)=-n n=2.2219 x*至少有至少有3位有效数字位有效数字 例例7 为使为使 的近似数的相对误差小于的近似数的相对误差小于0.1%,问查开方表时,要取几位有效数字?问查开方表时,要取几位有效数字?解:解:8 9 x1=8 -(n-1)lg2+2lg3+

19、(-3)-n1.2552-4 -n2.7448 取取 n=3即查平方表时即查平方表时 8.37取三位有效数字取三位有效数字 1.3.3 数值运算的误差估计数值运算的误差估计1、四则运算的误差估计、四则运算的误差估计两个近似数两个近似数两个近似数两个近似数 与与与与 ,其误差限分别为其误差限分别为其误差限分别为其误差限分别为 及及及及 ,它们进行加减乘除运算得到的误差限分别为它们进行加减乘除运算得到的误差限分别为它们进行加减乘除运算得到的误差限分别为它们进行加减乘除运算得到的误差限分别为从而有从而有 的相对误差的相对误差 对于近似值对于近似值,函数,函数在在 舍去右边第二项得到舍去右边第二项得到

20、 即即的绝对误差的绝对误差 可以得到可以得到附近按泰勒展式展开得到附近按泰勒展式展开得到 2、函数误差估计、函数误差估计当自变量有误差时,计算函数值也会产生误差,其当自变量有误差时,计算函数值也会产生误差,其误差限可利用函数的误差限可利用函数的TaylorTaylor展开式进行估计。展开式进行估计。对绝对误差式两边取绝对值得对绝对误差式两边取绝对值得 故故的相对误差限的相对误差限的误差限的误差限 而而 解释:解释:当当 为多元函数时计算为多元函数时计算 ,如果如果的近似值为的近似值为 ,则则 的近似为的近似为于是函数值于是函数值 的误差的误差 由由TaylorTaylor展开展开,得:得:得:

21、得:多元函数的情况多元函数的情况于是误差限为于是误差限为于是误差限为于是误差限为而而而而 的相对误差限为的相对误差限为的相对误差限为的相对误差限为式式式式(1)(1)例例例例8:8:已测得某场地长已测得某场地长已测得某场地长已测得某场地长 的值为的值为的值为的值为 ,宽宽宽宽 的值为的值为的值为的值为 ,已知已知已知已知 ,.试求试求试求试求面积面积面积面积 的绝对误差限与相对误差限的绝对误差限与相对误差限的绝对误差限与相对误差限的绝对误差限与相对误差限.解解解解:因因因因 其中其中其中其中由式由式由式由式(1)(1)得得得得而而而而于是绝对误差限为于是绝对误差限为于是绝对误差限为于是绝对误差

22、限为相对误差限为相对误差限为相对误差限为相对误差限为3、算法的数值稳定性算法的数值稳定性 数值计算在设计算法时首先关心的是由它产数值计算在设计算法时首先关心的是由它产生的计算结果的稳定性,而算法的稳定性与舍生的计算结果的稳定性,而算法的稳定性与舍入误差是否增长密切相关。一个算法如果输入入误差是否增长密切相关。一个算法如果输入数据有微小扰动(即误差),而在计算过程中数据有微小扰动(即误差),而在计算过程中舍入误差不增长,则称此算法是舍入误差不增长,则称此算法是数值稳定的数值稳定的,否则称其为否则称其为数值不稳定。数值不稳定。例例9:求定积分:求定积分 的值的值的值的值.解:解:直接积分可产生递推

23、公式直接积分可产生递推公式若取初值若取初值可得递推公式可得递推公式按公式就可以逐步算出按公式就可以逐步算出What happened?!不稳定的算法不稳定的算法 !这就是误差传播所引起的危害这就是误差传播所引起的危害 !注意此公式注意此公式精确精确成成立,且立,且由题设中的递推公式(由题设中的递推公式(1 1)可看出,)可看出,的误差扩大了的误差扩大了5 5倍后传给倍后传给 ,因而初值,因而初值 的误差对以后各步的误差对以后各步这就造成这就造成 的计算结果的计算结果严重失真。严重失真。计算结果的影计算结果的影响,随着响,随着 的增大愈来愈严重。的增大愈来愈严重。要怎么做才能解决这个问要怎么做才

24、能解决这个问要怎么做才能解决这个问要怎么做才能解决这个问题呢题呢题呢题呢?可求得可求得I9 0.017,按改写后的公式可逐次求得按改写后的公式可逐次求得不妨设不妨设I9 I10,于是由于是由将公式将公式变为变为(2)I8 0.019 I7 0.021I6 0.024 I5 0.028I4 0.034 I3 0.043I2 0.058 I1 0.088I0 0.182 稳定的算法稳定的算法 !在我们今后的讨论中,在我们今后的讨论中,误差误差将不可回避,将不可回避,算法的算法的稳定性稳定性会是一个非常重要的话题。会是一个非常重要的话题。注:注:递推公式递推公式(1)的舍入误差以的舍入误差以5的幂次

25、增长的幂次增长进行传播,因此是进行传播,因此是数值不稳定的,数值不稳定的,而递推公而递推公式式(2)的舍入误差在一定范围内以的舍入误差在一定范围内以0.2的幂次进的幂次进行传播,随着行传播,随着n的增大,误差逐步减少,因此的增大,误差逐步减少,因此该算法是该算法是数值稳定的数值稳定的。因此,可以看出数值不稳定的算法是不能使因此,可以看出数值不稳定的算法是不能使用的,实际计算中对任何输入数据都是数值稳定用的,实际计算中对任何输入数据都是数值稳定的算法,称为的算法,称为无条件稳定。无条件稳定。而对某些数据数值稳而对某些数据数值稳定,对其它数据数值不稳定的算法,称为定,对其它数据数值不稳定的算法,称

26、为条件稳条件稳定。定。病态问题和条件数病态问题和条件数 如果问题的输入数据有微小扰动,就会引起输出结果数据如果问题的输入数据有微小扰动,就会引起输出结果数据(即解)的很大扰动,称这样的问题为(即解)的很大扰动,称这样的问题为病态问题病态问题。相反的情形相反的情形称为称为良态问题良态问题。对于病态的数学问题,用通常的算法求数值解。对于病态的数学问题,用通常的算法求数值解都是都是不稳定的。不稳定的。病态和良态是病态和良态是相对的相对的,没有严格的界限,通常用条件数大小没有严格的界限,通常用条件数大小来衡量问题的病态程度,条件数越大病态可能越严重。来衡量问题的病态程度,条件数越大病态可能越严重。条件

27、数条件数c(x)越大,越大,f(x)的相对误差越大,通常认为的相对误差越大,通常认为时,问题是时,问题是病态的。病态的。1.3.4 数值计算中应该注意的一些原则数值计算中应该注意的一些原则1.要选择数值稳定的计算公式要选择数值稳定的计算公式 定定义义 一一种种数数值值方方法法,若若原原始始数数据据有有误误差差,而而在在计计算算的的过过程程中中,由由于于舍舍入入误误差差的的传传播播,使使得得近近似似计计算算结结果果与与准准确确值值相相差差很很大大,则则称称这这种种数数值值方方法法是是不不稳稳定定的的。否否则则,在在计计算算的的过过程程中中,若若舍舍入入误误差差得得到到控控制制,近近似似计计算算结

28、结果果能能逼逼近近准准确值,则称这种数值方法是稳定的。确值,则称这种数值方法是稳定的。,试问用递推公式,试问用递推公式例例1010 给定给定采用正向递推和逆向递推求采用正向递推和逆向递推求的值是否稳定?的值是否稳定?解解设设设设的近似值为的近似值为则有则有则有则有从而有从而有 对上式两边求绝对值得对上式两边求绝对值得 按给定的递推公式采用正向递推计算按给定的递推公式采用正向递推计算的值是不稳定的。的值是不稳定的。2.要避免两个相近的数相减要避免两个相近的数相减在数值计算中,两个相近的数作减法时在数值计算中,两个相近的数作减法时有效数字会损失。有效数字会损失。例例1111:求求当当x=1000,

29、y 的准确值为的准确值为0.01580 的值。的值。类似地类似地(2)若若将将原式原式改写为改写为则则 y=0.01581(1)直接相减直接相减有有3 3位有效数字!位有效数字!只有只有1位有效数字位有效数字3.尽量避免绝对值太小的数作分母尽量避免绝对值太小的数作分母例例1212:如分母变为如分母变为0.0011,也即分母只有,也即分母只有0.0001的变化时的变化时结果相差这么结果相差这么结果相差这么结果相差这么大大大大!4.避免大数避免大数吃吃小数小数精确解为精确解为 算法算法1 1:利用求根公式:利用求根公式例例例例13131313:用单精度计算用单精度计算用单精度计算用单精度计算 的根

30、。的根。的根。的根。在计算机内,在计算机内,109存为存为0.1 1010,1存为存为0.1 101。做加法时,两加数的指数先向大指数对齐,再将做加法时,两加数的指数先向大指数对齐,再将浮点部分相加。即浮点部分相加。即1 的指数部分须变为的指数部分须变为1010,则:,则:1=0.0000000001 1010,取单精度时就成为:,取单精度时就成为:109+1=0.10000000 1010+0.00000000 1010=0.10000000 1010?算法算法2 2:先解出先解出再利用再利用注:注:注:注:求和时从小到大相加,可使和的误差减小。求和时从小到大相加,可使和的误差减小。例例14

31、14:试按:试按从小到大、以及从大到小的顺序分别计从小到大、以及从大到小的顺序分别计算算1+2+3+40+1095.5.简化计算步骤,避免误差积累。简化计算步骤,避免误差积累。一般来说,计算机处理下列运算的速度为一般来说,计算机处理下列运算的速度为例例1515:多项式求值:给定的多项式求值:给定的x x 求下列求下列n n 次多项式的值。次多项式的值。解:解:1.1.用一般算法,即直接求和法;用一般算法,即直接求和法;2.2.逐项求和法;逐项求和法;3.3.秦九韶方法秦九韶方法(即即HornorHornor算法);算法);先计算先计算x2,x3,xn,再作线性组合,需做再作线性组合,需做2n-1次次乘法和乘法和n次次加法。加法。解法一:解法一:直接求和法直接求和法解法二:逐项求和法解法二:逐项求和法 按顺序依次计算每一项的值再求和,需做按顺序依次计算每一项的值再求和,需做n(n+1)/2次次乘法和乘法和n次次加法。加法。解法三:秦九韶算法(即解法三:秦九韶算法(即Horner算法)算法)只需做只需做n次次乘法和乘法和n次次加法。且可以递推实现。加法。且可以递推实现。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁