
数值分析第一讲误差课件.ppt
42页数值分析数值分析朱立永朱立永北京航空航天大学 数学与系统科学学院数值分析数值分析“诸位在校,有两个问题应该自己问问,第一,到浙大来做什么?第二,将来毕业后做什么样的人?” ------- 竺可桢老校长的两句话刻在浙大紫金港校区的一块大石上 数值分析数值分析这一讲的主要内容•数值分析是做什么的?•数值分析这门课程的主要内容•这门课程的特点及学习方法•数值分析中的基本概念中的基本概念: 误差误差 数值分析数值分析数值计算(分析)是做什么的?数值分析数值分析1、天体力学中的Kepler方程x是行星运动的轨道,它是时间t 的函数 非线性方程的数值解法非线性方程的数值解法!数值分析数值分析全球定位系统:在地球的任何一个位置,至少可以同时收到4颗以上卫星发射的信号 2、全球定位系统(Global Positioning System, GPS)数值分析数值分析 表示地球上一个接收点R的当前位置,卫星Si的位置为 ,则得到下列非线性方程组数值分析数值分析 非线性方程组的数值方法非线性方程组的数值方法! !记为其中数值分析数值分析3、已经测得在某处海洋不同深度处的水温如下:深度(M) 466 741 950 1422 1634水温(oC)7.04 4.28 3.40 2.54 2.13根据这些数据,希望合理地估计出其它深度(如500米,600米,1000米…)处的水温插值法插值法!数值分析数值分析4、铝制波纹瓦的长度问题、铝制波纹瓦的长度问题 建筑上用的一种铝制波纹瓦是用一种机建筑上用的一种铝制波纹瓦是用一种机器将一块平整的铝板压制而成的器将一块平整的铝板压制而成的.假若要求波纹瓦长假若要求波纹瓦长4 4英尺英尺, ,每个波纹的高度每个波纹的高度( (从从中心线中心线) )为为1 1英寸英寸, ,且每个波纹以近似且每个波纹以近似2 2ππ英寸英寸为一个周期为一个周期. . 求制做一块波纹瓦所需铝板的求制做一块波纹瓦所需铝板的长度长度L.L.数值分析数值分析 这个问题就是要求由函数这个问题就是要求由函数f(x)=sin x给定的给定的曲线从曲线从x=0到到x=48英寸间的英寸间的弧长弧长L. 由微积分学我们知道由微积分学我们知道,所求的弧长可表示为所求的弧长可表示为:上述积分称为第二类椭圆积分上述积分称为第二类椭圆积分, ,它不能用普它不能用普通方法来计算通方法来计算.数值积分数值积分!数值分析数值分析数学数学 模型模型 求解复杂问题或运算求解复杂问题或运算 如如数值数值 计算计算 方法方法计算机计算机 近似解近似解数值分析是做什么用的?数值分析是做什么用的?数值分析数值分析• Ø研究研究(构造)构造)使用计算机求解各种科学使用计算机求解各种科学 与工程计算问题的与工程计算问题的数值方法数值方法Ø对求得的数值解的精度进行对求得的数值解的精度进行评估评估(误(误 差,稳定性)差,稳定性)Ø如何在计算机上实现如何在计算机上实现求解求解数值分析数值分析本课程数值分析讲课范围本课程数值分析讲课范围 –误差(第误差(第1章章)–线形方程组的解法(第线形方程组的解法(第2章章)–矩阵特征值和特征向量的计算(第矩阵特征值和特征向量的计算(第3章章)–函数求根,非线性方程和方程组求解(第函数求根,非线性方程和方程组求解(第4章章)–函数插值,逼近,正交多项式(第函数插值,逼近,正交多项式(第5章章)–数值积分(第数值积分(第6章章)–数值微分和常微分方程数值解差分法(第数值微分和常微分方程数值解差分法(第7章章)–偏微分方程数值解简介(第偏微分方程数值解简介(第8章-选讲内容章-选讲内容)数值分析数值分析1.主要教材主要教材①颜庆津,数值分析。
北航出版社,20062.数值逼近参考书数值逼近参考书 ①李庆扬,王能超,易大义:数值分析清华大学出版社,2001②李岳生,黄友谦:数值逼进北京人民教育出版社,1979③王德人、杨忠华,数值逼近引论,高等教育出版社,1990 ④王仁宏,数值逼近,北京:高等教育出版社,1999 ⑤徐萃薇:计算方法引论北京高等教育出版社,19853.数值代数参考书数值代数参考书①曹志浩,数值线性代数,上海:复旦大学出版社,1996.②徐树方,矩阵计算的理论与方法,北京大学出版社,1995.4.微分方程数值解参考书微分方程数值解参考书①李立康、於崇华、朱政华,微分方程数值解法,复旦大学出版社,1999 ②陆金甫、关 治,微分方程数值解法(第二版),北京:清华大学出版社,2004 5.综合类(数值分析与科学计算、习题、实验等)参考书综合类(数值分析与科学计算、习题、实验等)参考书①蔡大用,数值分析与实验学习指导,北京:清华大学出版社,2001 ②Numerical Recipes(数值方法库) in C/Matlab/Fortran/C++,6.其他其他①http://en.wikipedia.org/wiki/Numerical_analysis②Software:IMSL,NAG,MATLAB参考资料参考资料数值分析数值分析本门课程的特点•既有数学类课程中理论上的抽象性和严谨既有数学类课程中理论上的抽象性和严谨性,又有实用性和实验性的技术特征性,又有实用性和实验性的技术特征•各部分内容相对独立各部分内容相对独立数值分析数值分析学习要求学习要求•掌握各种方法的基本原理与构造方法掌握各种方法的基本原理与构造方法•重视各种方法的误差分析重视各种方法的误差分析•掌握经典方法的程序代码掌握经典方法的程序代码数值分析数值分析其它要注意的几点•结合自己的研究方向,有重点地学习,最好能带着研究课题中的问题来学习•对每一类问题,不但要掌握求解方法的基本原理,还要掌握一套自己的程序代码•课前一定要做好预习和准备(按专题讲解)•课后要认真完成作业和上机练习•有问题要及时问,(答疑时间和地点?) 办公室:图书馆西配楼519室, Email: 数值分析数值分析数值分析中的基本概念:数值分析中的基本概念:误差误差数值分析数值分析 误差的来源误差的来源 现 实 世 界 研究对象测量数据数学模型的建立数值计算方法程序设计测量误差模型误差截断误差(方法误差)舍入误差上机计算上机计算上机计算上机计算求得结果求得结果求得结果求得结果数值分析数值分析误差的分类(误差的分类(1/4)) 通过对实际问题进行抽象、简化得到的数学模型,与实际现象之间必然存在误差,这种误差称之为模型误差。
数值分析数值分析误差的分类(误差的分类(2/4)) 一般数学问题包含若干参量,他们的值往往通过观测得到,而观测难免不带误差,这种误差称之为观测误差 4、已经测得在某处海洋不同深度处的水温如下:深度(M) 466 741 950 1422 1634水温(oC)7.04 4.28 3.40 2.54 2.13根据这些数据,希望合理地估计出其它深度(如500米,600米,1000米…)处的水温数值分析数值分析误差的分类(误差的分类(3/4)) 由于计算机的字长有限,参加运算的数据及其运算结果在计算机上存放会产生误差,这种误差称之为舍入误差舍入误差舍入误差与机器字长紧密相关舍入误差与机器字长紧密相关!例如:在十位十进制下,会出现: 1/3=0.333 333 333 3数值分析数值分析S4 R4 /* Remainder */ 取取则则称为称为截断误差截断误差 /* Truncation Error */将将 e-x2 作作Taylor展开后再积分展开后再积分截断(方法)误差截断(方法)误差: 求解数学模型所用的数值计算求解数学模型所用的数值计算方法如果是一种近似的方法,那么只能得到近似解,方法如果是一种近似的方法,那么只能得到近似解,由此产生的误差称为截断误差或方法误差由此产生的误差称为截断误差或方法误差数值分析数值分析§1.2.2 误差与有效数字误差与有效数字 /* Error & Significant Digits */ 绝对误差绝对误差 /* absolute error */ |e|的上限记为的上限记为ε,称,称为绝对误差限差限 /* accuracy*/工程上常记为工程上常记为x==a±ε,例如:,例如:e=x-a, 其中其中x为精确值,为精确值,a为为x的近似值。
的近似值数值分析数值分析实际应用中,精确解往往无法得到!实际应用中,精确解往往无法得到! 相对误差相对误差 /* relative error */ 相对误差上限相对误差上限 /* relative accuracy */ 定义为定义为实际应用中:实际应用中:思考题思考题1:实际应用中,用:实际应用中,用a取代取代x合理吗?为什么?合理吗?为什么?(提示:当绝对误差限较小时,两者的差为相对误差限的高阶无穷小量,可以忽略)(提示:当绝对误差限较小时,两者的差为相对误差限的高阶无穷小量,可以忽略)当当 较小时,因两者的差为较小时,因两者的差为:数值分析数值分析•有效数字有效数字 定定义义::如如果果近近似似值值a的的误误差差限限是是某某一一位位数数的的半半个个单单位位,, 则则称称a准准确确到到小小数数点点后后n位位,,并并从从第第一一个非零的数字到这一位的所有数字均为有效数字个非零的数字到这一位的所有数字均为有效数字例:例:ππ==3.1415926535, 3.1416有五位有效数字有五位有效数字,误差限为误差限为0.00005例:例: a=0.003400±0.5E-5近似值准确到小数点后近似值准确到小数点后五位,有三位有效数字。
五位,有三位有效数字数值分析数值分析§1.2.3 函数求值的的误差估计函数求值的的误差估计 /*Error Estimation for Functions*/问题问题:对于:对于 y = f (x),,u u=f(=f(a a),),若用若用a 取代取代x,将对,将对y 产生什么影响产生什么影响??分析分析::e(u) = f (x) f (a) e(a) = x a中值定理(中值定理(Mean Value Theorem))= f ’( )(x a) a 与与 x 非常接近时,可认为非常接近时,可认为 f ’( ) f ’(a) ,则,则有:有: |e(u)| | f ’(a)|·|e(a)|, ε(u)=|f’(a)|.ε(a)即:即:a 产生的误差经过产生的误差经过 f 作用后被放大作用后被放大/缩小了缩小了| f ’(a)|倍故称| f ’(a)|为为放大因子放大因子 /* amplification factor */ 或或 绝对条件数绝对条件数 /* absolute condition number */.数值分析数值分析 f 的条件数在某一点是的条件数在某一点是小小\大大,则称,则称 f 在该点是在该点是好条件的好条件的 /* well-conditioned */ \坏条件的坏条件的 /* ill-conditioned */。
f的条件数的条件数数值分析数值分析特别情况特别情况[u=f((x))]::多元函数多元函数[u=f((x1,,┅┅,,xn))]::数值分析数值分析误差的四则运算误差的四则运算数值分析数值分析例 求积分由 可得算法1: 算法2:首先给出两种算法的初始值: 误差分析的重要性误差分析的重要性数值分析数值分析两种算法与真实值的比较 00.18230.18230.182322 1 0.088500.088390.0883922 20.057500.058040.0580389 30.045830.043140.0431387 40.020850.034310.0343069 50.095750.028470.0284684 6-0.31210.024330.0243249 71.7030.021230.0212326 8-8.3920.018810.0188369数值分析数值分析说明 在上表中, 是算法1计算的值, 是算法2计算的值,而 是真实值的一个近似。
从上表我们不难直观的得出结论:随着n的增大,算法一的出来的值是越来越偏离真实值,我们可以说,算法1是不稳定的 定义定义:对于某个算法,若输入数据的误差在对于某个算法,若输入数据的误差在计算过程中迅速增长而得不到控制,则称计算过程中迅速增长而得不到控制,则称该算法是数值不稳定的,否则是数值稳定该算法是数值不稳定的,否则是数值稳定的数值分析数值分析 在我们今后的讨论中,在我们今后的讨论中,误差误差将不可回避,将不可回避, 算法的算法的稳定性稳定性会是一个非常重要的话题会是一个非常重要的话题数值分析数值分析4. 数值运算中误差分析的方法与原则数值运算中误差分析的方法与原则数值运算总是在一个预先设计好的算法中进行的,所谓算法就是一个有限的基本运算序列这个序列预定了怎样从输入数据去计算出问题的解由于运算是在计算机上进行的,而计算机的字长有限,因而产生舍入误差为减小舍入误差的影响,设计算法时应遵循以下一些原则:要避免除数绝对值远远小于被除数的绝对值的除法要避免除数绝对值远远小于被除数的绝对值的除法要避免两相近数相减要避免两相近数相减要防止大数要防止大数“吃掉吃掉”小数小数注意简化计算步骤,减少运算次数注意简化计算步骤,减少运算次数数值分析数值分析§5 Remarks数值分析数值分析避免相近的两数相减避免相近的两数相减(会耗失许多有效数字,可以用数学公式化简后再做).例 各有五位有效数字的23.034与22.993相减. 23.034-22.993=0.041 0.041只有两位有效数字,有效数字的耗失,说明准确度减小,因此,在计算时需要加工计算公式,以免这种情况发生.例 当 x 较大时,计算数值分析数值分析防止防止”大数大数”吃吃”小数小数” 当两个绝对值相差很大的数进行加法或减法运算时,绝对值小的数有可能被绝对值大的数"吃掉"从而引起计算结果很不可靠. 例:求 两者结果不同,因为计算机计算时做加减法要 “对阶”,“对阶”的结果使大数吃掉了小数.产生了误差.为了避免由于上述原因引起的计算结果严重失真,可以根据一些具体情况,存在需要把某些算式改写成另一种等价的形式.数值分析数值分析注意简化计算步骤,减少运算次数注意简化计算步骤,减少运算次数例例 已知 a0, a1, a2 ,…, an, x, 计算多项式:直接计算:运算量(乘) 秦九韶算法(1247年):运算量运算量数值分析数值分析作业•Page 12-13: 习题:1,3,5,7,8.•阅读《Numerical Recipes in C》: page 19-21. 关于误差和稳定性的内容。
