收藏 分销(赏)

科学计算与数学建模绪论.ppt

上传人:xrp****65 文档编号:13780570 上传时间:2026-04-13 格式:PPT 页数:61 大小:2.12MB 下载积分:10 金币
下载 相关
科学计算与数学建模绪论.ppt_第1页
第1页 / 共61页
科学计算与数学建模绪论.ppt_第2页
第2页 / 共61页


点击查看更多>>
资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,科学计算与数学建模,中南大学数学科学与计算技术学院,绪论,数学建模及其重要意义,2,数值方法与误差分析,3,误差的种类及其来源,4,算法的相对稳定性,8,5,绝对误差和相对误差,6,有效数字及其误差的关系,7,误差的传播与估计,1,数学与科学计算,第一章科学计算与数学建模绪论,1,数学与科学计算,数学是科学之母,科学技术离不开数学,它通过建立数学模型与数学产生紧密联系。数学又以各种形式应用于科学技术各领域。数学擅长于处理各种复杂的依赖关系,精细刻画量的变化以及可能性的评估。它可以帮助人们探讨原因、量化过程、控制风险、优化管理、合理预测。,随着计算机技术的飞速发展,科学计算在工程技术中发挥着愈来愈大的作用,已成为继科学实验和理论研究之后,科学研究的第三种方法,。了解或掌握科学计算的基本方法、数学建模的过程和基本方法已成为科技人才必需的技能。因此,科学计算与数学建模的基本知识和方法是当代大学生,尤其是,理工科大学生必备的数学素质,。,科学计算,是指利用计算机来完成科学研究和工程技术中提出的数学问题的计算,是一种使用计算机解释和预测实验中难以验证的、复杂现象的方法。科学计算是伴随着电子计算机的出现而迅速发展并获得广泛应用的新兴交叉学科,是数学及计算机应用于高科技领域的必不可少的纽带和工具。,2,数学建模过程及其重要意义,1.2.1,数学建模过程,实践,理论,实践,演绎法,数值法,解析解,数值解,求解方法,现实世界,现实问题的信息,验证,表述,解释,数学模型,数学模型的解答,数学世界,?,求解,现实问题的解答,1.2.2,数学建模的一般步骤,模型应用,模型检验,模型分析,模型求解,模型假设,模型构成,模型准备,在合理与简化之间作出折中,作出合理的、简化的假设,针对问题特点和建模目的,模,型,假,设,形成一个比较清晰的数学问题,掌握对象特征,搜集有关信息,明确建模目的,了解实际背景,模,型,准,备,确保模型的合理性、适用性,实际问题,模型应用,模型检验,模型分析,模型求解,模型构成,与实际现象、数据比较,如:结果的误差分析、统计分析、,模型对数据的稳定性分析,各种数学方法、软件和计算机技术,尽量使用简单的数学工具,用数学的语言、符号描述问题,1.2.3,数学建模意义,在一般工程技术领域,数学建模仍然大有用武之地,在高新技术领域,数学建模几乎是必不可少的工具,数学迅速进入一些新领域,为数学建模开拓了许多新的处女地,美国科学院一位院士总结了将数学转化为生产力过程中的成功和失败,得出了,“,数学是一种关键的、普遍的、可以应用的技术,”,的结论,认为数学“由研究到工业领域的技术转化,对加强经济竞争力是有重要意义,”,,而,“计算和建模重新成为中心课题,它们是数学科学技术转化的主要途径”,。,作为用数学方法解决实际问题的第一步,数学建模自然有着与数学同样悠久的历史。进入,20,世纪以来,随着数学以空前的广度和深度向一切领域的渗透,以及计算机的出现与飞速发展,数学建模越来越受到人们的重视,数学建模在现实世界中有着重要意义。,所谓数值计算方法,,,是指将所欲求解的数学模型(数学问题)简化成一系列算术运算和逻辑运算,以便在计算机上求出问题的数值解,并对算法的收敛性、稳定性及其误差进行分析、计算。,什么叫做误差?误差的种类有哪些呢?,数值计算方法,注意:,这里所说的“算法”,不只是单纯得数学公式,而且是指由基本的运算和运算顺序的规定所组成的整个解题的方案和步骤。,3,数值方法与误差分析,数值方法已成为科学研究的,第三种基本手段,。所谓数值方法,是指将所欲求解的数学模型(数学问题)简化成一系列算术运算和逻辑运算,以便在计算机上求出问题的数值解,并对算法的收敛性和误差进行分析、计算。这里所说的“算法”,不只是单纯的数学公式,而且是指由基本的运算和运算顺序的规定所组成的整个解题方案和步骤。一般可以通过框图(流程图)来较直观地描述算法的全貌。,选定适合的算法,是整个数值计算中非常重要的一环。例如,当计算多项式,的值时,,再逐项相加,共需做,次乘法和,次加法。,若直接计算,时需做,55,次乘法和,10,次加法。,来计算时,只要做,n,次乘法和次加法即可。,数值计算过程中会出现各种误差,它们可分为两大类:,对于小型问题,,计算的速度,和,占用计算机内存的多少,似乎意义不大。但对于复杂的大型问题而言,却是起着决定性作用。算法取得不恰当,不仅影响到计算的速度和效率,还会由于计算机计算的近似性和误差的传播、积累直接影响到计算结果的精度甚至直接影响到计算的成败。不合适的算法会导致计算误差达到不能容许的地步,而使计算最终失败,这就是,算法的数值稳定性问题,。,若用著名秦九韶(我国宋朝数学家)算法,将多项式 改成,“,过失误差”或“疏忽误差”:,算题者在工作中的粗心大意而产生的,例如笔误以及误用公式等,。,它完全是人为造成的,只要工作中仔细、谨慎,是完全可以避免的,数值计算误差,“非过失误差”:,在数值计算中这往往是无法避免的,例如近似值带来的误差,模型误差、观测误差、截断误差和舍入误差等。对于“非过失误差”,应该设法尽量降低其数值,尤其要控制住经多次运算后误差的积累,以确保计算结果的精度。,下面是一个简单的例算,可以看出近似值带来的误差和算法的选择对计算结果的精度所产生的巨大影响。,例,1.3.1,要计算,可用四种算式算出:,如果分别用近似值,和,按上列四种算法计算,值,其结果如下表,1.3.1,所示。,序号,算式,计算结果,1,2,1,3,4,表,1.3.1,由表,1.3.1,可见,按不同算式和近似值计算出的结果各不相同,有的甚至出现了负值,这真是差之毫厘,谬以千里。可见近似值和算法的选定对计算结果的精确度影响很大。因此,在研究算法的同时,还必须,正确掌握误差的基本概念,误差在近似值运算中的传播规律,误差分析、估计的基本方法,和,算法的数值稳定性概念,,否则,一个合理的算法也可能会得出一个错误的结果。,衡量一个算法的好坏时,,计算时间的多少,是非常重要的一个标志。由于实际的执行时间依赖于计算机的性能,因此所谓算法所花时间是用它执行的所有基本运算,如算术运算、比较运算等的总次数来衡量的。这样时间与运算的次数直接联系起来了。当然,即使用一个算法计算同一类型的问题时,由于各问题的数据不同,计算快慢也会不同,一般是用,最坏情况下所花的时间,来作讨论。,设输入数据的规模,(size),是,(,在网络问题中,一般与节点数及弧数有关,而对一般极值问题,往往与变量数及约束数有关,),,设在最坏情况下运算次数是 ,则 称为算法的计算复杂性。,具有什么样的计算复杂性的算法被认为是好的呢?目前计算机科学中广为接受的观点是:多项式时间算法,即 是关于 的一个多项式,或者以一个多项式为上界的。例如 ,,等是好的算法;而指数时间算法,即 是关于 的指数式,或以一个指数式为下界的,例如 ,,等情况,则是坏的。这个看法的依据是很明白的,因为当 增大时,指数函数比多项式函数增长快。,注意,:,在理论上证明是好的算法不一定在实际中有效,在理论上证明不是多项式时间的算法也不一定就在实际上中效果不好。如关于线性规划问题的算法有如下的特殊性:,(,1,)单纯形法是时间复杂性为指数阶的,但却是非常有效的算法;,(,2,)椭球法从理论上是一个重大突破,是第一个多项式算法,遗憾的是广泛的实际检验表明其计算效果比单纯形方法差,因而,它在实际使用中不能取代单纯形法。,4,误差的种类及其来源,非过失误差,数值计算中,,除了可以避免的过失误差外,,还有不少来源不同而又无法避免的,非过失误差存在于数值计算过程中,,主要有如下几种,截断误差,观测误差,模型误差,舍入误差,1.4.1,模型误差,1.4.2,观测误差,在建模和具体运算过程中所用到的一些初始数据往往都是通过人们实际观察、测量得来的,由于受到所用观测仪器、设备精度 的限制,这些测得的数据都只能是近似的,即存在着误差,这种误差称为“观测误差”或“初值误差”。,1.4.3,截断误差,在不少数值运算中常遇到超越计算,如微分、积分和无穷级数求和等,它们须用极限或无穷过程来求得。然而计算机却只能完成有限次算术运算和逻辑运算,因此需将解题过程化为一系列有限的算术运,在建模(建立数学模型)过程中,欲将复杂的物理现象抽象、归纳为数学模型,往往只得忽略一些次要因素的影响,而对问题作某些必要的简化。这样建立起来的数学模型实际上必定只是所研究的复杂客观现象的一种近似的描述,它与真正客观存在的实际问题之间有一定的差别,这种误差称为“模型误差”。,算和逻辑运算。这样就要对某种无穷过程进行,“截断”,,即仅保无穷过程的前段有限序列而舍弃它的后段。这就带来了误差,称它为,“截断误差”,或,“方法误差”,。例如,函数,和,可分别展开为如下的无穷幂级数:,(1.4.1),(1.4.2),若取级数的起始若干项的部分和作为函数值的近似,例如取,(1.4.3),则由于它们的第四项和以后各项都舍弃了,自然产生了误差。这就是由于截断了无穷级数自第四项起的后段的产生的截断误差。,(1.4.3),和,(1.4.4),的截断误差是很容易估算的,因为幂级数,(1.4.1),和,(1.4.2),都是交错级数,当 时的各项的绝对值又都是递减的,因此,这时它们的截断误差 可分别估计为:,(1.4.4),1.4.4,舍入误差,在数值计算过程中还会用到一些无穷小数,例如无理数和有理数中某些分数化出的无限循环小数,如,和,由于受计算机机器字长的限制,它所能表示的数据只能有有限位数,这时就需把数据按四舍五入舍入成一定位数的近似的有理数来代替。由此引起的误差称为,“舍入误差”,或,“凑整误差”,。,综上所述,数值计算中除了可以完全避免的过失误差外,还存在难以避免的,模型误差,、,观测误差,、,截断误差,和,舍入误差,。数学模型一旦建立,进入具体计算时所要考虑和分析的就是,截断误差,和,舍入误差,了。在计算机上经过千百次运算后所积累起来的总误差不容忽视,有时可能会大得惊人,甚至到达“淹没”所欲求解的真值的地步,而使计算结果失去根本的意义。因此,在讨论算法时,有必要对其截断误差的估算和舍入误差的控制作适当的分析。,5,绝对误差和相对误差,1.5.1,绝对误差和绝对误差限,定义,1.5.1,设某一个准确值(称为真值)为,,则,与,的差,(,1.5.1,),称为近似值,的“绝对误差”,简称“误差”。当,时,称为亏近,似值或弱近似值,反之则称为盈近似值或强近似值。,由于真值往往是未知或无法知道的,因此,,就无法求出。,但一般可估计此绝对误差的上限,也即可以求出一个正值 ,,使,的准确值(真值),也,(,1.5.2,),此,称为近似值,的“绝对误差限”,简称“误差限”,或称“精度”。有时也用,来表示(,1.5.2,)式,这时等式右端的两个数值,和,代表了,在范,围的上、下限。,越小,表示该近似值,的精度越高。,,,其近似值为,(,1.5.3,),所,例,1.5.1,用有毫米刻度的尺测量不超过一米的长度。读数方法如下:,如长度接近于毫米刻度,就读出该刻度数作为长度的近似值。显然,这个近似值的绝对误差限就是半个毫米,则有,如果读出的长度是,513,毫米,则有,这样,虽仍不知准确长度,是多少,但由(,1.5.3,)式可得到不等式:,这说明,必在,毫米区间内。,1.5.2,相对误差和相对误差限,用绝对误差还不能完全评价近似值的精确度。例如测量,10,米的长度时产生,1,厘米的误差与测量,1,米的长度时产生,1,厘米的误差是大有区别的。虽然两者的绝对误差相同,都是,1,厘米,但是由于所测量的长度要差十倍,显然前一种测量比后一种要精确得多。这说明要评价一个近似值的精确度,除了要看其绝对误差的大小外,还必须考虑该量本身的大小,这就需要引进,相对误差,的概念。,(,1.5.4,),称为近似值,的“相对误差”。,在上例中,前一种测量的误差为,,而后一种测量的相对误差则为,,是前一种的,十倍,。,定义,1.5.2,绝对误差与真值之比,即,由(,1.5.4,)可见,相对误差可以从绝对误差求出。反之,绝对误差也可由相对误差求出,其相互关系式为:,(,1.5.5,),相对误差不仅能表示出绝对误差来,而且在估计近似值运算结果的误差时,它比绝对误差更能反映出误差的特性。因此在误差分析中,相对误差比绝对误差更为重要。相对误差也无法准确求出。因为(,1.5.4,)中的,和,均无法准确求得。,也和绝对误差一样,可以估计它的大小范围,即可以找到一个正数,,使,(,1.5.6,),称为近似值,的“相对误差限”。,相对误差是个纯数字,它没有量纲。,例,1.5.2,称,100,千克重的东西若有,1,千克重的误差和量,100,米长的东西有,1,米长的误差,这两种测量的相对误差都是 。与此相反,由于绝对误差是名词,有量纲,上例中两种测量的绝对误差,1,千克和,1,米的量纲不同,两者就无法进行比较。,在实际计算中,由于真值,总是无法知道的,因此往往取,(,1.5.7,),作为相对误差的另一定义。,下面比较,与,之间的相差究竟有多大:,一般地,,很小,不会超过,。这样,不大于,2,,因此,,上式右端是一高阶小量,可以忽略。,上式右端是一高阶小量,可以忽略,故用,来代替,。,相对误差也可用百分数来表示:,这时称它为,百分误差,。,6,有效数字及其误差的关系,1.6.1,有效数字,在表示一个近似值的准确程度时,常用到,“有效数字”,的概念。,例,1.6.1,,若 按四舍五入取四位小数,则得的近似值为,3.1416,;若取五位小数则得其近似值为,3.14159,。这种近似值取法的特点是误差限为其末位的半个单位,即,定义,1.6.1,当近似值,,其近似值,的规格化形式:,的误差限是其某一位上的半个单位时,称其,“准确”到这一位且从该位起直到前面第一位非零数字为此的所有数字都,称为有效数字。一般说,设有一个数,(,1.6.1,),式中,都是 中的一个数字,是正整数,是整数。,若 的误差限为:,(,1.6.2,),则称,为具有,n,位有效数字的有效数,或称它精确到,一位数字,都是,的有效数字。,若(,1.6.1,)中的,是经四舍五入得到的近似数,,则,具有,位有效数字。,例,1.6.2,是,的具有五位有效数字的近似值,精确到,0.0001,。,例,1.6.3,和,都是具有三位有效数字的有效数。,但要注意,,和,就不同了,前者仅具有三位有效数字,,即仅精确,。,其中每,到,0.0001,;而后者则具有五位有效数字,即精确到,0.000001,。可见,两者的精确程度大不相同,后者远较前者精确(差,100,倍)。因此,有另一种情况,,例如,,,这时,的误差为,值超过,0.0005,(第三位小数的半个单位),但却,没有超过,0.005,(第二,位小数的半个单位),即,注,用计算机进行的数值计算,由于受到计算机字长的限制,要求输入的数有一定的位数,计算的结果也只保留一定的位数,且所保留下来的不一定都是有效数字,同时也不是所有的有效数字都可保留下来。,,其绝对,显然,,虽然有三位小数但却只精确到第二位小数,因此,它只具,有二位有效数字。,其中,1,和,5,都是准确数字,而第三位数字,4,就不再是准,确数字了,我们就称它为,存疑数字,。,1.6.2,有效数字与误差的关系,由,(1.6.2),可知,从有效数字可以算出近似数的绝对误差限,;,有效数字的位数越多,其绝对误差限也就越小,且还可以从有效数字求出其相对误差限。,当用,(1.6.1),表示的近似值,,具有,位有效数字时,显然有,故由,(1.6.2),可知,其相对误差,(,1.6.3,),故相对误差限为,(,1.6.4,),由,(1.6.4),可见,有效数字的位数反映了近似值的相对精确度。,上述关系的逆也是成立的,即当用,(1.6.1),表示的近似值,如果其相对误差能满足,(,1.6.5,),则,至少具有,位有效数字。这是因为,:,由,(1.6.5),及,有,即,至少具有,位有效数字。,例,1.6.4,当用,3.1416,来表示的近似值时,它的相对误差是多少,?,解,3.1416,具有五位有效数字,,由,(1.6.3),有,例,1.6.5,为了使积分的近似值的相对误差不超过,0.1%,,问至少要取,几位有效数字,?,解,可以知道,I=0.7476,,这样,,由,(1.6.3),有,可解出,,,即,只要取三位有效数字,就能保证,的相对误差不大于,0.1%,。,7,误差的传播与估计,1.7.1,误差估计的一般公式,在实际的数值计算中,参与运算的数据往往都是些近似值,带有误差,这些数据误差在多次运算过程中会进行传播,使计算结果产生误差,而确定计算结果所能达到的精度显然是十分重要的,但往往很困难。不过,对计算误差作出一定的定量估计还是可以做到的。下面利用,函数泰勒(,Taylor,)展开式,推出误差估计的一般公式。,考虑二元函数,,设,和,分别是,和,的近似值,,是函数值,的近似值,且,,函数,在点,处的泰勒展开式为:,略高阶小量,则上式可简化为,式中,,和,一般都是小量值,如忽,(,1.7.1,),的绝对误差增长因子,它们分别表示绝对误差,和,经过传播,因此,,的绝对误差为,式中,,和前面,的系数,和,分别是,和,对,由(,1.7.1,)可得出,的相对误差:,后增大或缩小的倍数。,(,1.7.2,),式中,,和,前面的系数,和,分别是,经过传播后增大或缩小的倍数。,和,对,的相对误差增长因子,它们分别表示相对误差,和,例,1.7.1,用电表测得一个电阻两端的电压和流过的电流范围分别为,(伏特,),和,(安培,),求这个电阻的阻值,其绝对误差和相对误差。,,并估算,由(,1.7.1,)可计算,的绝对误差:,将它们带入上式,即可估算出的绝对误差:,;,,,令,,,解,由欧姆定律,有,(,1.7.1,)和(,1.7.2,)可推广到更为一般的多元函数 中,只要将函数 在点 处作泰勒展开,,等小量的高阶项,即可得到函数的,近似值的绝对误差和相对误差的估算式分别为:,并略去其中的,(,1.7.3,),和,(,1.7.4,),对的绝对误差和相对误差的增长因子。,上两式中的各项 和 分别为各个,从(,1.7.3,)和(,1.7.4,)可知,误差增长因子的绝对值很大时,数据误差在运算中传播后,可能会造成结果的很大误差。凡原始数据的微小变化可能引起结果的很大变化的这类问题,称为,病态问题,或,坏条件问题,。,可以利用,(1.7.3),和(,1.7.4,)对算术运算中数据误差传播规律作一具体分析。,(,1.7.5,),(1.7.6),1.7.2,误差在算术运算中的传播,由,(1.7.3),和(,1.7.4,)有,(,1,)加,减运算,及,由,(1.7.5),可知:近似值之和的绝对误差等于各近似值绝对误差的代数和。两数 和 相减,由,(1.7.6),有,当,,即大小接近的两个同号近似值相减时,由上式可知,这时 可能会很大,说明计算结果的有效数字将严重丢失,计算精度很低。,因此在实际计算中,应尽量设法避开相近数的相减。当实在无法避免时,可用,变换计算公式,的办法来解决。,即,例,1.7.3,当 很小时,如要求 的值,可利用三角恒等式,进行公式变换后再来计算。同理,也可把 展开成泰勒级数后,按,来进行计算。这两种算法都避开了两个相近数相减的不利情况。,例,1.7.2,当要计算 ,结果精确到第五位数字时,至少取到,和 ,这样,才能达到具有五位有效数字的要求。如果变换算式:,也能达到结果具有五位有效数字的要求,而这时 和 所需的有 效位数只要五位,远比直接相减所需有效位数(八位)要少。,(,2,)乘法运算,由(,1.7.3,)及(,1.7.4,)有,因此,近似值之积的相对误差等于相乘各因子的相对误差的代数和。当乘数的绝对值很大时,乘积的绝对值误差 可能会很大,因此也应设法避免。,(,1.7.7,),和,(,1.7.8,),(,3,)除法运算,由(,1.7.3,)及(,1.7.4,)有,由,(,1.7.10,),可知,两近似值之商的相对误差等于被除数的相对误差与除数的相对误差之差。,又由,(,1.7.9,),可知,当除数 的绝对值很小,接近于零时,商的绝对误差 可能会很大,甚至造成计算机的“溢出”错误故应设法避免让绝对值太小的数作为除数。,(,1.7.9,),和,(,1.7.10,),(,4,)乘方及开方运算,由(,1.7.3,)及(,1.7.4,)有,由(,1.7.12,)可知,乘方运算将使结果的相对误差增大为原值 的,(乘方的方次数)倍,降低了精度;开方运算则使结果的相对误差缩,小为原值 的 (为开方的方次数),精度得到提高。,综上分析可知,大小相近的同号数相减,乘数的绝对值很大,以及除数接近于零等,在数值计算中都应设法避免。,(,1.7.11,),及,(,1.7.12,),1.7.3,对,1.3.1,中算例的误差分析,序号,近似值,真 值,绝对误差,相对误差,1,0.0142,0.0355=3.55%,0.000955,60.0355=21.3%,2,3,4,应用上述误差估计的公式,可对,1.3.1,中提出的算例中的各种算式作出误差估计和分析,从而可以比较出它们的优劣来。见结果下表,1.7.1,。,表,1.7.1,8,算法的相对稳定性,通过前面对误差传播规律的分析和对,1.3,算例的剖析,可知同一问题当选用不同的算法时,它们所得到的结果有时会相差很大,这是因为运算的舍入误差在运算过程中的传播常随算法而异。凡一种算法的计算结果受舍入误差的影响小者称它为数值稳定的算法。下面再通过其他一些例子来进一步说明算法稳定性的概念。,例,1.8.1,解方程,(,1.8.1,),解 由韦达定理可知,此精确解为,如果利用求根公式,(,1.8.2,),来编制计算机程序,在字长为,8,基底为,10,的计算机上进行运算,则由于计算机实际上采用的是规格化浮点数的运算,这时,的第二项最后两位数“,01”,,由于计算机字长的限制,在机器上表示不出来,故在计算机对阶舍入运算(用 标记)时,这样算出的根显然是严重失真的(精确解 ),这说明直接利用(,1.8.2,)求解方程(,1.8.1,)是不稳定的。其原因是在于当计算机进行加减运算时要对阶舍入计算,实际上受到机器字长的限制,在计算 时,绝对值小的数(,1,)被绝对值大的数,()“,淹没”了,在计算 时,被 “淹没”了;这些相对小的数被“淹没”后就无法发挥其应有的影响,由此带来误差,造成计算结果的严重失真。同样道理,当多个数在计算机中相加时,最好从其中绝对值最小的数到绝对值最大的数依次相加,可使和的误差减小。这时,如要提高计算的数值稳定性,必须改进算法。,在此例中,由于算出的根是可靠的,故可利用,根与系数的关系式,来计算,有,所得结果很好。这说明第二种算法有较好的数值稳定性(注意在利用根与系数关系式求第二个根时,必须先算出绝对值较大的一个根,然后再求另一个根,才能得到精度较高的结果)。,例,1.8.2,试计算积分,解 由,分部积分,可得,因此有递推公式,用上面的递推公式,在字长为,6,,基底为,10,的计算机上,从 出发计算前几个积分值,其结果如表,1.8.1,。,表,1.8.1,1,0.367879,2,0.264242,3,0.207274,4,0.170904,5,0.145480,6,0.127120,7,0.110160,8,0.118720,9,-0.068480,表,1.8.1,被积函数 在积分限区间 内都是正值,积分值 取三位有效数字的精确结果为,0.0916,,但上表中,=-0.068480,却是负值,与,0.0916,相差很大。怎么会出现这种现象?可分析如下。,由于在计算时有舍入误差约为,且考虑以后的计算都不再另有舍入误差。此对后面各项计算的影响为,这样,算到时产生的误差为,这就是一个不小的数值了。,可以改进算法来提高此例的数值稳定性,即将递推公式改写为,从后向前递推计算时,的误差下降为原来的 ,因此只要 取得足够大,误差逐次下降,其影响就会越来越小。由,可知:当 时 。因此 可取作为初始值进行递推计算。,由于 ,故 的误差约为 。在计算时误差下降到,,计算 时误差已下降到 ,结果如表,1.8.2,。,20,0.0000000,19,0.0500000,18,0.0500000,17,0.0527778,16,0.0557190,15,0.0669477,14,0.0627322,13,0.0669477,12,0.0717733,11,0.0773523,10,0.0838771,9,0.0916123,表,1.8.2,这样得到的,=0.0916123,已经很精确了。可见经过改进后的新算法具有很好的稳定性。,例,1.8.3,对于小的值,计算 。,解 如果用 直接进行计算,其稳定性是很差的,因为两个相近数相减会严重丢失有效数字,产生很大的误差。因此得采用合适的算法来保证计算的数值稳定性。可将 在点 附近展开成幂级数:,则可得,按上式计算就有很好的,数值稳定性,。,通过以上这些例子,可以知道算法的数值稳定性对于数值计算的重要性了。如无足够的稳定性,将会导致计算的最终失败。为了,防止误差传播,、,积累,带来的危害,提高计算的稳定性,将前面分析所得的各种结果归纳起来,得到数值计算中应注意如下几点:,(,1,)选用数值稳定的计算方法,避开不稳定的算式。,(,2,)注意简化计算步骤及公式,设法减少运算次数,选用运算次数少的算式,尤其是乘方幂次要低,乘法和加法的次数要少,以减少舍入误差的积累,同时也可节约计算机的机时。,例,1.8.4,要计算的值时,如果逐个相乘要做,254,次乘法,但若写成,则只要做,14,次乘法运算即可。,(,3,)应合理安排运算顺序,防止参与运算的数在数量级相差悬殊时,“大数”淹没“小数”的现象发生。多个数相加时,最好从其中绝对值最小的数到绝对值最大的数依次相加;多个数相乘时,最好从其中有效位数最多的数到有效位数最少的数依次相乘。,(,4,)应避免两相近数相减,可用变换公式的方法来解决。,(,5,)绝对值太小的数不宜作为除数。否则产生的误差过大,甚至会在计算机中造成“溢出”错误。,1.,下列,各数都是对真值进行四舍五入后得到的近似值,试分别写出它们的绝对误差限,相对误差限和有效数字的位数:,2.,如果求 的近似值的相对误差 ,问 至少应取几位有效数字?,3.,为了使 的近似值的相对误差 ,问至少应取几位有效数字?,4.,如用级数 来求 的值,为使相对差 ,问至少需取几项?,5.,用观测恒星的方法求得某地纬度 (读到秒),问计算 将有多大误差?,6.,正方形的边长约为,100,厘米,问测量时误差最多只能到多少,才能保证面积的误差不超过,1,平方厘米?,7.,已测得直角三角形的斜边 毫米,一直角边 毫米,如题,7,图示。试计算 的近似值,并估算出其绝对误差和相对误差限。,(,1,),(,2,),(,3,),(,4,),(,5,),习 题,1,)。,9.,求方程,的两个根,使它们至少具有,四位有效,数字(已知,8.,已知,计算,及,,并求,和,的相对误差。,10.,设近似数,的绝对误差为,,当分别计算下列两式时,问误,差对计算结果的影响如何?,(,1,),(,2,),11.,下列各题怎样计算才合理(即计算结果的精度高)?,(,1,)(四位函数表求三角函数值);,(,2,)(开方用六位函数表);,(,3,)(其中充分小);,(,4,)(其中,N,充分大);,12.,下面计算的公式中,哪一个算得更准确些?为什么?,(,1,)已知 :,(,2,)已知 :,(,3,)已知 :,(,4,)已知 :,13.,设 ,计算,:,算法,(1),:,算法,(2),:,试分析上述两种算法的好坏。,14.,用四位尾数浮点数计算,,要求分别按递增顺序和按递减顺,序相加,所得结果不同,为什么?哪个更接近真值?,中南大学数学科学与计算技术学院,Thank You!,
展开阅读全文

开通  VIP、SVIP  下载更划算
下载10份以上建议开通 VIP 会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        关注我们

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服