1、数值分析,课时:48 时间:(1-8)周 主讲教师:张 艳 副教授 联系方式: 电话:68914776,13520218804 办公地点:虚拟现实与仿真实验室(中教934) 上课地点:良乡,教材 (Text Book)数值分析 史万明、吴裕树等 编著 (北京理工大出版社),参考书目 (Reference) Numerical Analysis (Seventh Edition)数值分析 (第七版 影印版) Richard L. Burden & J. Douglas Faires (高等教育出版社) 现代数值分析 李庆扬、易大义、王能超 编著(高等教育出版社),课程评分方法 (Grading
2、Policies),1。课堂作业(10分) 2。考试(100) 备注:要求作业独立完成,不能抄袭;如果抄袭超过3次,取消参加考试的资格。,课程要求,先修课程 高等数学(微积分) 线性代数 高级编程工具 课堂纪律要求 按时上课,不迟到早退 课堂保持肃静 作业要求每个班的课代表于周一上课时将作业收齐并交上(按时),第一章 绪论(4课时),1.3 误差,1.6 误差分配原则与处理方法,1.5 数值计算中应该注意的问题,1.2 数值问题与数值算法,1.1 数值方法的研究对象与特点,1.4 算术运算中的误差,1.1 数值方法的研究对象与特点,数值分析是计算机与数学的交叉科学 计算机科学是在数学的基础上发
3、展起来的 德国数学家Leibni2在研究组合数学时发现的二进制编码是电子计算机诞生的基础; von Ne Mmann提出了用流程图描述计算机运行过程后,软件的开发研究得以发展和遍地开花; 流行一时的结构化程序设计也是Bohm和JacoPini证明的一条数学原理“任何单入口和单出口,且没有“死循环”的程序,都能由三种最基本的控制结构构造出来”的产物,1.1 数值方法的研究对象与特点,计算机的诞生和发展,对数学的发展产生了不可估量的影响 国内外具有代表性的部分综合数学软件库 IMSL(International Mathematics and Statistics Library) (美国:影响最
4、大的数值软件库之一) NAG(英国:Numerical Algorithm Group) Mathematic:目前国内外广泛流行的软件包,几乎实现了大学本科的所有数学演算和数值计算 STYR(中国:是“数学、统计、应用、软件”的汉语拼音的首字母) CUMSS(China Universty Mathematics and Statistics Software的缩写)是1987年由原国家教委的六所高校联合开发成功的综合性数学与统计软件库,是我国迄今第一个正式出版的大型综合数值软件库,1.2 数值问题与数值算法,数值问题与数值算法 将解决实际问题时应用有关科学知识和数学理论建定数学模型的过程,
5、归属于应用数学范围。 将数学模型问题变成数值问题,进而研究求解数值问题的数值方法,并设计行之有效的数值算法的过程,归属于计算方法的范围 二者统称为应用数学问题。,1.2 数值问题与数值算法,数值方法和计算方法 将求解“数值问题”的“计算机上可执行”的系列计算公式称为数值方法 数值问题:输入数据与输出数据之间函数关系的一个确定而无歧义的描述。“计算机上可执行”的系列计算公式:四则运算和逻辑运算等计算机上可执行的运算,1.2 数值问题与数值算法,数值方法和计算方法,(1)将计算机不能直接计算的运算,化成在计算机上可执行的运算; (2)针对数值问题研究可在计算机上执行且行之有效的新系列计算公式 (3
6、)误差分析,即研究数值问题的性态和数值方法的稳定性,研究数值方法的主要任务有三个:,1.2 数值问题与数值算法,数值算法的四个特征,目的性;(有输入,有输出) 确定性;(每步计算不能有二义性) 可行性;(每一个步骤和操作都应当有效地执行,并能最终获得确定的计算结果) 有穷性;(不能有死循环),1.3 误差,1.3.1 误差的来源与分类,1.3.2 绝对误差、相对误差,1.3.3 有效数字,现 实 世 界,研究 对象,测量 数据,数学模型的建立,计算方法的构成,数值运算的执行,测量误差,模型误差,方法误差,舍入误差,结果,1.3.1 误差的来源与分类(1),模型误差反映实际问题有关量之间关系的计
7、算公式,即数学模型,通常只是近似的。由此产生的数学模型的解与实际问题的解之间的误差称为模型误差。,观测误差由观测得到的数据与实际的数据之间的误差,称为观测误差。,1.3.1 误差的来源与分类(2),截断误差(方法误差)(chopping error)求解数学模型所用的数值计算方法如果是一种近似的方法,那么得到的是数学模型的近似解,由此产生的误差称为截断误差。,舍入误差(rounding error)由于计算机的字长有限,参加运算的数据以及运算结果在计算机上存放会产生误差。这种误差称舍入误差或者计算误差。,1.3.2 绝对误差、相对误差 (1),误差(Absolute Error)和(绝对)误差
8、限(误差界)( Absolute Error Bound)的概念,设准确值x 的一个近似值是x* ,记e=x-x* ,称e为近似值x的绝对误差,简称误差。e可正可负。,如果|e|的一个上界已知为,记为|e|= |x- x* | ,则称为近似值x*的一个绝对误差限或绝对误差界,简称误差限或误差界。 为正值。,误差限不唯一。,1.3.2 绝对误差、相对误差 (3),准确值、近似值和误差限三者之间的关系,OR,近似值,准确值,误差限,误差限的大小是否能完全反映近似值的程度?,测量1000米跑道: 误差:10cm 测量3米黑板长度;误差:1cm,1.3.2 绝对误差、相对误差 (1),误差和误差限的意
9、义,对于同一个准确值而言, e或者越小,近似值越准确。 对于不同的准确值而言,比较e或者的大小没有意义。,1.3.2 绝对误差、相对误差 (4),相对误差(relative error),OR,相对误差限(relative error bound),测量1000米跑道: 误差:10cm 测量3米黑板长度;误差:1cm,1.3.2 绝对误差、相对误差 (2),例1 已知e* 271828182,其近似值为e271828,求e的绝对误差限和相对误差限。,绝对误差 : e-e*=-0.00000182.,绝对误差限 :,相对误差限 :,1.3.2 绝对误差、相对误差 (2),结论: 上界的不唯一决定
10、了绝对误差限和相对误差限不唯一; 绝对误差限和相对误差限越小,近似值近似代替准确值的程度越好; 实际应用中通常按照四舍五入的方法取近似值,1.3.2 绝对误差、相对误差 (2),结论:凡是由准确值经过四舍五入而得到的近似值,其绝对误差限等于该近似值末位的半个单位。,1.3.2 绝对误差、相对误差 (5),解:,例1-1:用最小刻度为毫米的卡尺测量直杆甲和直杆乙,分别读出长度a=312mm和b=24mm,问: 各是多少?两直杆实际长度x和y在什么范围内?,1.3.2 绝对误差、相对误差 (6),解:,1.3.3 有效数字(1),有效数字(Significant Digit),近似值的一种表示法;
11、 表示近似值的大小; 表示近似值的精度;,设数x*是数x的近似值。如果x*的绝对误差限是它的第n位的半个单位(四舍五入),则称x*准确到小数点后第n位,并且从第一位非零数字到该位的所有数字均称为有效数字。,有效数字的定义:,1.3.3 有效数字(2),非零小数总可以写成如下形式:,则称近似值x有n位有效数字。,例如近似值,有7位有效数字,则它的误差限为:,1.3.3 有效数字(3),例如:,表示:近似值0.003400准确到小数点后第5位,有3位有效数字。,x*= ,最左边不为零的数,误差不超过该位数的半个单位,n个有效数字,1.3.3 有效数字(4),由准确值经过四舍五入的得到近似值,从它的
12、末位数字到第一位非零数字都是有效数字。,同一准确值的不同近似值,有效数字越多,它的绝对误差和相对误差都越小。,例子:2.140012 近似值1:2.14; 近似值2:2.1400 两种近似值各有几位有效数字,那种更精确?,结论,3,5,注意:数字末尾的0不可随意省去!,1.3.3 有效数字(5),解:,答案a:1,3,8(n=3) 答案b:3(n=1) 答案c:没有有效数字(n=-2),1.3.3 有效数字(6),例1-3:对准确值x3.95进行四舍五入后得x*4.0;但是,若将x最后一位5舍掉成为x*3.9.它们的误差绝对值都不超过末一位的半个单位,均为:0.05,1.3.3 有效数字(6)
13、,对有效数字理解的几点说明: 1.近似值的有效数字不一定都是通过四舍五入得到 2.近似值小数点后面的0不能随便增减 3.当绝对误差等于末位的半个单位时,会出现有效数字不唯一的情况 4.浮点数的有效位数由其定点部分的有效数位确定。如:75103则其|e|=0.5100103 5.放大缩小误差的问题。,有效数字与相对误差的关系, 有效数字 相对误差限,已知 有 n 位有效数字,则其相对误差限为:,1.3.3 有效数字(7),1.3.3 有效数字(8),证明:,PI=3.14=0.314101 则其绝对误差为:0.510-3101=0.5 10-2,有效数字与相对误差的关系,相对误差限有效数字,如果
14、x的相对误差限满足,1.3.3 有效数字(7),则x至少有n位有效数字。,1.3.3 有效数字(8),证明:,例1-4:为使 的相对误差小于0.001%,至少应取几位有效数字?,解:假设 * 取到 n 位有效数字,则其相对误差上限为,要保证其相对误差小于0.001%,只要保证其上限满足,已知 a1 = 3,则从以上不等式可解得 n 6 log6(8)=5.22(5.09),即 n 6,应取 * = 3.14159。,与书上P10公式的区别: 对x*的表达方法不同: 书上:本课:,1.4 算术运算中的误差,数值计算中求得的解与参量(原始数据)x1*, x2*,xn*有关,计为: y=f(x1,
15、x2,xn)xi,yi为准确值, xi*,yi* 分别为其近似值; y*=f(x1*, x2*,xn*),由微分学:当自变量改变量(误差)很小时,函数的微分作为函数改变量的主要线性部分可以近似函数的改变量,故利用微分运算公式可导出误差运算公式。,假设:,1.4 算术运算中的误差,绝对误差:,1.4 算术运算中的误差,二元函数绝对误差:,1.4 算术运算中的误差,相对误差:,1.4 算术运算中的误差,二元函数相对误差:,1.4 算术运算中的误差,和、差、积、商之误差公式:,和差的绝对误差限,和差的绝对误差,4. 当被减数和减数相差很大时,大数的相对误差起主要作用,很小,约为1,1.4 算法举例(
16、小结),1.4 算术运算中的误差,和、差、积、商之误差公式:,1.4 算术运算中的误差,积、商之相对误差限公式:,结论: 和、差的(绝对)误差为各项误差之和、差; 和、差的(绝对)误差限为各项误差限之和; 积、商的相对误差为各项相对误差之和、差; 积、商的相对误差限为各项之相对误差限之和;,1.4 算术运算中的误差,解:,例1-3:求近似值285.35,196.87,58.43,4.96 的和,其中每个数的绝对误差限为0.510-2.,和545.61的绝对误差限为:,4 0.5 10-2=0.020.5 10-1,因此和545.61应去伪存真作舍入处理成545.6,它具有4位有效数字,即545
17、.6,1.4 算术运算中的误差,解:,例1-4:求有效数3.150950,15.426423, 568.37587,684.388 的和.,和8271.341213的绝对误差限为:,2 (0.5 10-6) + 0.5 10-4 +0.5 10-3 =0.5 10-3,因此和应去伪存真作舍入处理成8271.341,它具有7位有效数字.(导致精度下降),1.4 算术运算中的误差,合理的做法:将小数位数较多的各数按小数位数最少的位数多取一位作舍入处理,则,本例应将各数取舍成四位小数后相加:,和8271.3413的绝对误差限为:,3 (0.5 10-4) + 0.5 10-3 =0.00065 0.
18、510-2,1.4 算术运算中的误差,解:c=12.273.56=897.432则其相对误差限为:,例1-5:求c=12.273.56的绝对误差限和相对误差限.,则c为 (2个有效数字).,1.4 算术运算中的误差,解: c=25.7/3.6 =7.13889,则其相对误差限为:,例1-6:求c=25.7/3.6的绝对误差限和相对误差限.,则c为7.,其绝对误差限为:,1.4 算术运算中的误差,则其相对误差限为:,4. c=xp(p1),则其绝对误差为:,结论:x的p次幂的相对误差等于x本身的相对误差的p倍.,1.4 算术运算中的误差,则其相对误差限为:,4. c=x1/q(1p=1/q),结
19、论:x的q次根的相对误差等于x本身的相对误差的1/q倍.,1.4 算术运算中的误差,解: c=(12.2)2 =148.84,则其相对误差限为:,例1-9:求c=(12.2)2的绝对误差限和相对误差限.,则c为150.(开方的例子请参看p15页例1.6),其绝对误差限为:,在各种数学模型中,存在不同数学问题,它们的解与变量(原始数据)x1,x2,xn有关,可以记为y=f(x1,x2,xn).,1.4.2 数学问题解的误差估计,这种对应关系可用解析式表示,或以方程形式隐含给出.,当参变量有误差(数据误差)xi(i=1,2,n)时,必定引起解的误差.,1.4.2 数学问题解的误差估计,假定f在点(
20、x1,x2,xn )可微,则当数据误差较小时,解的(绝对)误差限可估计如下:,Ai,1.4.2 数学问题解的误差估计,解的相对误差限如下:,系数Ai 、Bi的大小可以衡量解对数据误差的敏感程度,表示参量的绝对误差和相对误差放大或缩小的倍数。,注意:公式仅当xi较小时才合宜,否则,(1) df或f按xi为线性迭加进行估计与实际为非线性变化间的误差增大,(2) df或f按xi独立性影响累计与实际是关联性影响的综合累计的误差增大,1.4.2 数学问题解的误差估计,例1.10 已知球体的直径D=3.7cm,按v=D3/6计算体积,求其绝对误差限与相对误差限.,1.4 算术运算中的误差,例1.11 计算
21、,1.5 数值计算中应该注意的问题,分子分母分别计算后相除(取9位小数),A=0.0005*0.0143*0.0012=0.00000715*0.0012=0.000000009(有舍入),B=0.0003*0.0125*0.0135=0.00000375*0.0135=0.000000051(有舍入),D1=A/B=0.17647,真值为0.16948148,所以D1只准确到小数后一位,解: 算法1,1.5 数值计算中应该注意的问题,算法2 分成三组因子分别计算后再相乘(每组只取六位小数),a=0.0005/0.0003=1.666667(有舍入) b=0.0143/0.0125=1.144
22、000 c=0.0012/0.0135=0.088889 (有舍入) D=abc=1. 666667 1.144000 0.088889 =0.169482,准确到小数后5位.真值为0.16948148,a,b,c,例1.12 试用5位有效数字计算e-5.5的值,1.5数值计算中应该注意的问题,台劳级数,1.5数值计算中应该注意的问题,0.00408677,假定x=-5.5是精确数,则在计算ex中的各项数值后,由于截取5位有效数字而引入舍入误差,累计后影响最终结果的准确度; 事实上,由n=2至n=9共八项数值的舍入误差和已达到8(0.510-3)0.5 10-2,导致ex级数和的第三位小数后面
23、的全部数字不再是有效数位,1.5数值计算中应该注意的问题,解决办法:(1)考虑增加有效数位,但同时增加了计算量; (2)改变算法,改变算法计算例1.12 方法:先计算x=5.5的部分级数,再求倒数,1.5数值计算中应该注意的问题,改变算法后前18项和的舍入误差限为 : 8 (0.5 10-3)+3 (0.5 10-4)+4 (0.5 10-5)+(0.5 10-6) =0.00420.5 10-2 ,即e5.5的近似值244.70具有绝对误差限0.5 10-2 ; (倒数)1/ 244.70的值0.00408663具有相对误差限|0/1+(0.5*10-2)/244.70= 0.0000204
24、33,1.5数值计算中应该注意的问题,商的相对误差限等于除数和被除数的相对误差限之和.c=1/e5.5,其绝对误差限为: |0.00408663 0.000020433=0.84 10-7 0.5 10-6,所以0.00408663(e-5.5)可以取为0.0040866,数学问题的适定性与性态,1.数学问题的适定性定义设D为X=(x1, x2 , , xn)的值域,简记数学问题的解与参量(原始数据)X的关系为y=f(X)。若 1)对XD,数学问题的解存在且唯一; 2)满足连续性条件,即当X-0时,有y-0成立,则称该数学问题是适定的;反之,若数学问题的解多于一个,或者解不连续依赖于原始数据,
25、则称为不适定的.,对于不适定的数学问题,应用数值方法求解时会产生(1) 求得的解是否是所需要的(2) 在多解中择定所需解的问题 它在现代决策分析中属不确定性问题的解的确定性选择问题。我们所讨论的数学问题只限于适定性的问题.,数学问题的适定性与性态,2. “良态”问题和“病态”问题 在适定的情况下,若对于原始数据很小的变化x,对应的参数误差y也很小,则称该数学问题是良态问题;若y很大,则称为病态问题. 病态问题中解对于数据的变化率都很大,因此数据微小变化必将导致参数模型精确解的很大变化. 数学问题的性态完全取决于该数学问题本身的属性,在采用数值方法求解之前就存在,与数值方法无关,数学问题的适定性
26、与性态,例1.14 计算In=01xnex-1dx,n=0,7解:算法1。用分部积分法可以推知In满足以下递推公式 In=1-nIn-1取I0=01ex-1dx=ex-1|01 =1-e-1=0.6321逐次递推得I1,I2,I7. 算法2,按照公式In-1=1-In /n取I7=0.1124,反向计算得I6,I5,I0.,1.5 数值计算中应该注意的问题,1.5 数值计算中应该注意的问题,算法1的结果(差)分析: 从I1=1-1 I0开始分析,I1的舍入误差是=1! I2=1-2I1的舍入误差是2=2! I3=1-3I2的舍入误差是2 3=3! I7的舍入误差是7! 算法2的误差 从I6=(
27、1-I7)/7开始,I6的舍入误差是 /7 I5=(1-I6)/6的舍入误差是/(6 7) ,1.5 数值计算中应该注意的问题,I0的舍入误差是 /7!,I0=0.6320,真值为0.6321,这个结果很好 舍入误差对计算结果影响小(舍入误差不增长)的算法具有数值稳定性,否则称为不稳定的算法.,1.5 数值计算中应该注意的问题,解决方案: (1)改变计算公式:更有效 (2)多保留几位有效数字,1. 避免两个相近的数相减,影响:容易造成有效数字的严重丢失。,1.5 数值计算中应该注意的问题,x的相对误差,y的相对误差,1.5 数值计算中应该注意的问题,取8位有效数字:,1.5 数值计算中应该注意
28、的问题,例如:,改变计算公式:,结果只有1位有效数字,结果有8位有效数字,1.5 数值计算中应该注意的问题,改变公式的常见情况: 当x接近0时,应作变换: 1-cosx=2sin2(x/2) (1-cosx)/sinx=sinx/(1+sinx) 当x充分大时,应作变换:,提出问题,假设在4位浮点计算机上进行下列的运算:,?,1.5 数值计算中应该注意的问题,2. 避免大数吃小数,例:用单精度计算x2-(109+1)x+109=0的根。,精确解为:x1=10 9 ,x2=1, 算法1:利用求根公式,1.5 数值计算中应该注意的问题,在计算机内,109存为0.11010,1存为0.1101。做加
29、法时,两加数的指数先向大指数对齐,再将浮点部分相加。即1 的指数部分须变为1010,则: 1 = 0.0000000001 1010, 取单精度时就成为: 109+1=0.100000001010+0.00000000 1010=0.10000000 1010,解决方法1:增加有效数位增加数值的有效数位至11位进行计算。结果为 x1=99999.999990 (正确) x2=0.00001000000001 (正确),1.5 数值计算中应该注意的问题,解决方案2:改变计算公式,1.5 数值计算中应该注意的问题,4. 先化简再计算,减少运算次数,避免误差积累。,5. 选用稳定的算法。,舍入误差对
30、计算结果影响小的算法,3. 避免除数的绝对值远小于被除数的绝对值,故 时,舍入误差可能会很大。,1.5 数值计算中应该注意的问题,1.6 误差分配原则和处理方法,1.误差配置原理,计算模型的近似解相对于参数模型精确解的总误差=截断误差+舍入误差,即R+,(1) R,即舍入误差大于截断误差时,总误差的主部取决于舍入误差的主部;取较多位字长部分的计算工作量可提高计算精度;,(2) R,即舍入误差小于截断误差时,总误差的主部取决于截断误差的主部;此时过多位字长部分的计算工作量无意义;,(3) R,此时,不会出现过多位字长和过多项部分计算量上的浪费现象;,R,最为合理的分配原则是:R=,1.6 误差分
31、配原则和处理方法,2.按R=配置的有关处理方法,(1) 给定运算误差(总舍入误差),确定参与运算的数值的字长,数值公式:,u=f(x1,x2,xn),舍入误差:,i= ,已知|du|=,可解得,按照的大小就可以确定出参与运算的数值的字长。,例1-15:求长方形面积S=ab,其中a5m, b200m,要求计算S的运算误差S=1,试确定两直角边的允许误差(二者的误差相同).,解: 因ds=adb+bda,令da=db= ,解得:,可见边长a,b的字长应取至小数后2位.,1.6 误差分配原则和处理方法,(2) 近似式的项数已定而字长待定 由于项数已知,可估算余式Rn的大小 令舍入误差 = Rn ,在
32、计算公式和已定情况下,按照(1)可确定数值字长 (3) 总误差给定,要求确定项数和数值字长.应取 = Rn = /2 ,按照Rn的大小,确定项数,在计算公式和已定情况下,按照(1)可确定数值字长,1.6 误差分配原则和处理方法,解:取Rn =/2=0.0005, =/2 =0.0005设计算公式为,令Rn 1/4n40.0005 则n应满足 n(500)1/44.7 取n=5,设计算每项数值的舍入误差为,1.6 误差分配原则和处理方法,由于S1=1,则有4=0.00050.000125,取=0.00005=0.5*10-4,用四位小数计算得: S5=1+0.0313+0.0041+0.0010
33、+0.0003=1.0367 按= 0.5*10-3,将S5舍入为1.037,(4) 数值字长已定,待定近似式项数初步选定一个项数,根据所定的项数和数值的舍入误差估计出值、R值,如果它们的值比较接近则选定的项数即为所求;否则另选项数,重复上述过程,直到选出符合要求的项数为止。,1.6 误差分配原则和处理方法,例1.17 对于0x1,计算ex 的台劳展开式的部分和,解:根据台劳公式的展开式的截断误差公式:,近似ex ,若在计算机中,x的计算公式及以上公式中各项结果均截取至小数后5位,试确定上式中应取几项为好?,1.6 误差分配原则和处理方法,初取n=3,则有R3(x)3,再取n=6,有R6(x)
34、6,增大至n=7,有R7(x)3/8!=0.000074,7=7 (0.5 10-5)=0.000035 这时R7(x) 7,所以应取8项进行计算为宜。,1.6 误差分配原则和处理方法,2009-02-27 作业,作业1 测得圆环外径D1=100.05cm,内径为D2=50.1cm,则其面积S为多少?(PI的误差不计) 作业2 P27:习题一 1.1,1.2,1.3,1.4, 1.5,1.6, 1.10,1.12,上节课重点,1.1 数值分析,概念:将求解“数值问题”的“计算机上可执行”的系列计算公式称为数值方法 数值方法的任务,1.2 误差,误差的来源于分配 概念:绝对误差,相对误差,绝对误
35、差限,相对误差限以及他们之间的相互关系,上节课重点,1.3 有效数字,概念 对有效数字理解的几点建议 有效数字和相对误差的关系=有效数字和绝对误差的关系,上节课重点,1.4 算术运算中的误差 多元函数二元函数加减乘除,结论: 和、差的绝对误差限为各变量误差之和; 积、商的相对误差限为各变量之相对误差之和;,1.3 算术运算中的误差,则其相对误差限为:,4. c=xp(p1),则其绝对误差为:,结论:x的p次幂的相对误差等于x本身的相对误差的p倍.,1.3 算术运算中的误差,则其相对误差限为:,5. c=x1/q(1p=1/q),结论:x的q次根的相对误差等于x本身的相对误差的1/q倍.,上节课重点,1.5 数值计算中应该注意的问题 避免两个相近的数相减 避免大数吃小数 避免分母为0 先化简再计算 选择稳定的数值方法,1.6 误差分配原则和处理方法 舍入误差和截断误差之和等于总误差 误差分配原则:舍入误差和截断误差近似相等 可能存在的4种情况下的误差处理方法,答疑时间,星期一,五:上午9:00-10:00地点:2号楼2层教师休息室,