数值分析第一章基础知识_第1页
数值分析第一章基础知识_第2页
数值分析第一章基础知识_第3页
数值分析第一章基础知识_第4页
数值分析第一章基础知识_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数值分析第一章基础知识1/762014-2015学年硕士研究生课程数值分析

NumericalAnalysis第一页,共七十三页,2022年,8月28日2/76郑州大学2014-2015学年硕士研究生课程数值分析

NumericalAnalysis计算的目的不在于数据,而在于洞察事物。

--理查德·哈明Thepurposeofcomputingisinsight,notnumbers.

--Richard

Wesley

Hamming理查德·哈明美国工程院院士,1968年图灵奖得主。第二页,共七十三页,2022年,8月28日3/762014-2015学年硕士研究生课程数值分析NumericalAnalysis课程主题

讨论如何构造高效适用的计算机数值算法,来解科学与工程中的数值计算问题。课程内容

各类数值算法的构造、理论评价及程序实现。

各应用学科的共性问题第三页,共七十三页,2022年,8月28日4/762014-2015学年硕士研究生课程数值分析NumericalAnalysis算法和误差分析;数据代数插值;数据拟合;数值微分和数值积分;解线性代数方程组的直接法和迭代法;非线性方程和非线性方程组解法;常微分方程初值问题的数值解法;计算工具C/Matlab和Mathematica;课程主要内容第四页,共七十三页,2022年,8月28日5/762014-2015学年硕士研究生课程数值分析NumericalAnalysis微积分和常微分方程;线性代数;数值计算程序设计(C/Matlab和Mathematica)

预备知识第五页,共七十三页,2022年,8月28日6/762014-2015学年硕士研究生课程数值分析NumericalAnalysis参考教材教材李庆扬,王能超,易大义.数值分析(第五版).北京:清华大学出版社,2008李清善,宋士仓.数值方法.郑州:郑州大学出版社,2007.参考资料1.关治,陈景良.数值计算方法.北京:清华大学出版社,1990.2.周铁,徐树方等.计算方法.北京:清华大学出版社,2006.3.徐翠微,孙绳武.计算方法引论.北京:高等教育出版社,2005.4.JohnH.Mathews,KurtisD.Fink.数值方法(MATLAB版).北京:电子工业出版社,2005.5.徐士良.数值分析与算法.北京:机械工业出版社,2007.6.葛哲学.精通Matlab.北京:电子工业出版社,2008.7.任玉杰.数值分析及其MATLAB实现.北京:高等教育出版社,2007.第六页,共七十三页,2022年,8月28日7/762014-2015学年硕士研究生课程数值分析NumericalAnalysis课程教学活动和计划

周次课次课时教学内容备注2周二3课时第一章基础知识3周二3课时第二章代数插值[1]4周二

3课时第二章代数插值[2]5周二3课时第三章数据拟合的最小二乘法[1]6周二3课时第三章数据拟合的最小二乘法[2]7周二3课时第四章数值微分与数值积分[1]8周二3课时第四章数值微分与数值积分[2]9周二3课时习题课10周二3课时第五章解线性代数方程组的直接法[1]11周二3课时第五章解线性代数方程组的直接法[2]1.8.1教学内容时间安排第七页,共七十三页,2022年,8月28日8/762014-2015学年硕士研究生课程数值分析NumericalAnalysis课程教学活动和计划

周次课次课时教学内容备注12周二3课时第六章解线性代数方程组的迭代法[1]13周二3课时第六章解线性代数方程组的迭代法[2]14周二

3课时第七章非线性方程的数值解法[1]15周二3课时第七章非线性方程的数值解法[2]16周二3课时第八章常微分方程初值问题数值解法[1]17周二3课时第八章常微分方程初值问题数值解法[2]18周二3课时习题课19周二3课时总复习1.8.1教学内容时间安排注:数值算法演示主要用Matlab和C语言实现,有时采用Mathematica实现。课后实验题可用任何一种计算工具完成。第八页,共七十三页,2022年,8月28日9/762014-2015学年硕士研究生课程数值分析NumericalAnalysis课程教学活动和计划

1.8.1电子教案和课后习题请登录163邮箱

账户:zzumoe@163.com密码:zzumoe2014(请不要修改)下载电子教案、算法实现代码及课后习题。

1.每周周一上传本周课程电子教案,每周周三上传本周课程的算法实现代码。每章学习完成上传本周习题。2.请结合教材及电子教案课前预习教学内容,课后及时复习并调试算法代码,完成习题。

第九页,共七十三页,2022年,8月28日10/762014-2015学年硕士研究生课程数值分析NumericalAnalysis第一章基础知识

§1.1计算—第三种科学方法§1.2计算机算法及其评价§1.3浮点数系§1.4误差的基本概念§1.5数值算法的稳定性§1.6计算工具§1.7参考教材§1.8课程教学活动和计划

第十页,共七十三页,2022年,8月28日11/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.1计算—第三种科学方法

“当今,科学活动可分为三种:理论、实验和计算。定义计算科学最好是通过比较它的核心活动和实验及理论的核心活动。试验科学家从事于测量和设计科学设备及利用这些设备去进行测量,致力于可控、可重复试验的设计以及分析这些试验的误差;理论科学家研究实验数据之间的关系、这些关系满足的原理(如牛顿定律、对称性原理等)及把这些原理运用到具体特殊情形所需的数学概念和技术;计算科学家构造求解科学问题的计算方法,把这些方法软件化,设计和进行试验,分析这些数值试验的误差。他们研究计算方法的数学特征,通过计算揭露所求解科学问题的基本性质和规律。”诺贝尔奖获得者、计算物理学者Wilson教授第十一页,共七十三页,2022年,8月28日12/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

试验方法伽利略Galileo1564-1642理论方法牛顿Newton1643-1727计算方法冯.诺依曼Neumann1903-1957§1.1计算—第三种科学方法第十二页,共七十三页,2022年,8月28日13/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.1计算—第三种科学方法第十三页,共七十三页,2022年,8月28日14/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.1计算—第三种科学方法2010年6月的Top500()超级计算机排行上,来自中国的超级计算机“星云”以其峰值理论运算能力为2.98PFlop/s,而Linpack性能则为1.27PFlop/s,位于第35届超算排行榜第二位,这是中国超级计算机在Top500榜单历史上的最高名次。

位列本次Top500第一名的超级计算机是来自Cray的美洲豹“Jaguar”,凭借1.75PFlop/s(每秒1750万亿次)的计算能力继去年12月份之后再次成为冠军。而值得注意的是,“Jaguar”采用了224162个处理器核心,而名列第二的“星云”则只用了120640个处理器核心。

Top10排名中IBM“Roadrunner”位列第三,CrayKraken位列第四,而德国的JUGENE凭借IBM蓝色基因位列第五。而从国家角度来看,有7台超级计算机位于美国,欧洲1台,而中国有2台,分别是星云与位于第七的天河一号。

第十四页,共七十三页,2022年,8月28日15/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

美洲豹Jaguar

美国橡树岭国家实验室

目前,橡树岭国家实验室承担着很多科学计算相关项目,其中包括恶劣天气模拟、星体研究、生物元素研究、新型燃料、聚变以及火山爆发模拟等等。橡树岭实验室承担着全球首个对极端天气变化的模拟以及全球变暖的进程等等。

§1.1计算—第三种科学方法第十五页,共七十三页,2022年,8月28日16/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

IBM走鹃

美国洛斯阿拉莫斯国家实验室

走鹃超级计算机造价高达1.33亿美元,它由IBM和洛斯阿拉莫斯(LosAlamos)国家实验室技术人员共同开发和组装。走鹃提供给美国军方使用,其运算速度达到了1.026petaflop,即每秒钟可进行1026万亿次浮点运算,是全球首个突破千万亿次的超级计算机。主要用于运算分析美国军方的机密军事数据,如核武器及其他军事战略数据等,并模仿核战争爆发后对人类生存环境的破坏情况。正在做的项目有:纳米技术、核聚变,激光技术、磁重联技术、艾滋病毒研究、暗物质、铜反应和流体动力学等研究。

§1.1计算—第三种科学方法第十六页,共七十三页,2022年,8月28日17/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

曙光魔方上海超级计算中心位于上海超级计算机中心的曙光5000A首次亮相就让中国的身影再一次跻身前十行列。该系统总计拥有30720个计算核心、122.88TB内存,最大性能180.6TFlops,峰值性能233.472TFlops.

据2008年统计,“魔方”上面运行的应用,包括气象预报、生物药物、生命科学、汽车、核电、钢铁、新材料、土木工程、物理、化学、航空、航天、船舶等数十个应用领域。上海市着力发展的九大高新技术产业,如商用飞机、新材料、医药、重大装备、新能源以及电动汽车等六个领域都将依赖高性能计算技术。未来,“魔方”将助力上海国际金融中心建设,为金融机构设计衍生产品、控制风险、提供各种计算解决方案。

§1.1计算—第三种科学方法第十七页,共七十三页,2022年,8月28日18/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

MareNostrum巴塞罗那超级计算中心

MareNostrum拥有10240颗处理器,峰值计算速度能够达到每秒94.21万亿次浮点计算。组成MareNostrum的2560台JS21刀片式计算结点占据了大约半个篮球场(120平米)的面积,现在位于西班牙的巴塞罗那超级计算中心。MareNostrum目前的应用相当广泛,包含人类基因的研究、天气预报、药品研究等等领域。

§1.1计算—第三种科学方法第十八页,共七十三页,2022年,8月28日19/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

中国-科学计算

2010年6月的Top500()超级计算机排行中,来自中国的HPC超级计算机有24台,在数量上与德国并列第四位。而Top10中“星云”排名第二,“天河一号”排名第七,中国超算首次进入前两名的行列。计算数学方面,我国已故著名学者冯康先生独立于西方学者发展了有限元方法、辛几何算法等重要方法,这些方法现在已经是计算数学中具有核心地位的算法。我国科学家在计算科学和力学、材料工程、化学等学科的交叉领域也做出了诸多贡献。

§1.1计算—第三种科学方法第十九页,共七十三页,2022年,8月28日20/762014-2015学年硕士研究生课程数值分析NumericalAnalysis实际问题建立数学模型数值分析提出算法程序设计编程上机计算分析结果并对实际问题进行解释说明

在建立了数学模型之后,并不能立刻用计算机直接求解,还必须寻找用计算机计算这些数学模型的数值方,即将数学模型中的连续变量离散化,转化成一系列相应的算法步骤,编制出正确的计算程序,再上机计算得出满意的数值结果。

第二十页,共七十三页,2022年,8月28日21/762014-2015学年硕士研究生课程数值分析NumericalAnalysis晶体生长模拟海浪冲击结构物模拟桥墩受力模拟分子动力学模拟发电机磁场模拟第二十一页,共七十三页,2022年,8月28日22/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.2计算机算法及其评价

算法(Algorithm)是一系列解决问题的清晰指令。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。算法特性

□有穷性:算法必须保证执行有限步之后结束。□确切性:算法的每一步骤必须有确切的定义。□输入:算法有0个或多个输入,以刻画运算对象的初始情况。□输出:算法有一个或多个输出,以反映对输入数据加工后的结果。□可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。

第二十二页,共七十三页,2022年,8月28日23/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

§1.2计算机算法及其评价

第二十三页,共七十三页,2022年,8月28日24/762014-2015学年硕士研究生课程数值分析NumericalAnalysis例1.2.1(秦九韶算法)设计算法求多项式的值.解:引进记号§1.2计算机算法及其评价

第二十四页,共七十三页,2022年,8月28日25/762014-2015学年硕士研究生课程数值分析NumericalAnalysis可设计如下算法:§1.2计算机算法及其评价

请输入多项式阶数(单位:10000):10000请输入自变量x的值:0.0001100000000阶多项式在点0.000100的取值:100010002.000100秦九韶算法运行时间:0.750000秒100000000阶多项式在点0.000100的取值:100010002.000100常规算法运行时间:41.547000秒PressanykeytocontinueVC6.0环境C语言编程结果第二十五页,共七十三页,2022年,8月28日26/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

■常规方法(用重复乘法计算幂,再把各项相加)

需要次加法和次乘法

■秦九韶算法

次加法和次乘法

需要§1.2计算机算法及其评价

第二十六页,共七十三页,2022年,8月28日27/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

§1.2计算机算法及其评价

算法的评价指标乘除法与加减法相比花费的CPU时间较多,通常将算法所需要的乘除法的总次数作为计算量大小的尺度。例如两个n阶矩阵相乘的乘法次数是,则称两个n阶矩阵相乘这一问题的时间复杂度为.第二十七页,共七十三页,2022年,8月28日28/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.2计算机算法及其评价

例1.2.2试分析用定义法和消去法计算n阶行列式的时间复杂度。解:n阶行列式的计算需要计算n!项,每项做n-1次乘法,因而用定义计算n阶行列式的时间复杂度为n!(n

-1).消去法的第k步要把第k行的后n+1-k个元素同乘以某个值加到第k+1,k+2,…,n行相应元素(k=1,2,…,n-1),因而消去法的时间复杂度是第二十八页,共七十三页,2022年,8月28日29/762014-2015学年硕士研究生课程数值分析NumericalAnalysis当n=100的时候,可见两种算法在时间复杂度上想去甚远,后者用个人电脑(千兆1G=)只需不到1秒,而前者用千万亿次计算机(每秒1千万亿次浮点运算,)需要约秒,需要的时间太长已经使得计算失去了意义。§1.2计算机算法及其评价

第二十九页,共七十三页,2022年,8月28日30/762014-2015学年硕士研究生课程数值分析NumericalAnalysis◆当前计算机的加减运算和乘除运算的速度相差甚微,因此有人提出将算法的所有运算次数的总和作为时间复杂度的度量。◆现代计算机的运算速度已经远远高于数据的传输速度,这使得一个算法实际运行的快慢在很大程度上依赖于该算法实现后数据传输量的大小,这一点对并行算法尤其重要。

§1.2计算机算法及其评价

如果时间复杂度对问题的大小n来说是多项式级(例如),则称问题是可计算的,否则称为不可计算的。一个问题可能有多种算法,达到算法复杂性下界的算法称为最优算法。第三十页,共七十三页,2022年,8月28日31/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.3浮点数系

■所有的数值算法将要在计算机上执行,因而需要了解实数在计算机中是如何表示的。在一台典型的计算机中,每个数是由有限位二进制数字组成,实际上是用实数系R的一个离散子集来表示所有实数。

第三十一页,共七十三页,2022年,8月28日32/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.3浮点数系

在IBM3000系列计算机中,单精度浮点数(float)由32位二进制数字表示,其中

它表示如下形式的数其中7位二进制数字的阶,范围是0~127,但对每个阶将自动减去64,因此阶的实际范围是-64~63.称(1.3.1)表示了一个浮点数系。第三十二页,共七十三页,2022年,8月28日33/762014-2015学年硕士研究生课程数值分析NumericalAnalysis考虑机器数的正负指示符是0,表示是正数。接着7位是1000010是阶,转换成十进制是最后24位数表示尾数,等价于因此,机器数精确表达的十进制数是§1.3浮点数系

第三十三页,共七十三页,2022年,8月28日34/762014-2015学年硕士研究生课程数值分析NumericalAnalysis和实数系不同,在浮点数系(1.3.1)中,可以找到比大的相邻数c和比小的相邻数b

这意味着实数在浮点数系(1.3.1)中表示的时候,位于区间上的实数并不能得到准确描述。实际上,区间内的任何一个实数都是用来表示的。

§1.3浮点数系

第三十四页,共七十三页,2022年,8月28日35/762014-2015学年硕士研究生课程数值分析NumericalAnalysis为保证表示的唯一性,要求每个机器数在尾数的最左四位中至少有一个位是1.因此,在浮点数系(1.3.1)中,最小的正机器数是而最大的正机器数是在计算中,出现量级小于的数的状况称为下溢,这时一般由将该数置为零;出现量级大于的数的状况称为上溢,这种状况导致计算停止。

§1.3浮点数系

第三十五页,共七十三页,2022年,8月28日36/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.3浮点数系

★对计算机而言,凡是在机器数系量级范围内的实数,除了部分是机器数外,大部分是由最相近的机器数为近似值。因此,实数在计算机中一般为近似值,这种近似值是通过数制转换,并依据机器字长及确定的舍入规则产生的。由此而产生的误差称为舍入误差。★实际上,在实数的输入、计算、输出等每一个环节都有舍入误差产生。目前的机器字长能够保证舍入误差足够小,不会影响大部分科学和工程计算的精确度。第三十六页,共七十三页,2022年,8月28日37/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

误差的来源误差来自应用计算手段解决实际问题的各个环节。▲建立数学模型▲设计计算算法▲算法机器实现▲数值结果分析算法设计编码计算数学模型结果分析误差第三十七页,共七十三页,2022年,8月28日38/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

模型误差/*ModelingError*/

——从实际问题中抽象出数学模型时产生的误差

观测误差/*MeasurementError*/——通过测量得到模型中参数的值导致输入数据的误差

方法误差(截断误差/*TruncationError*/)——近似求解时产生的误差

舍入误差/*RoundoffError*/

——由于计算机字长有限而在数值运算的每一步所产生的误差第三十八页,共七十三页,2022年,8月28日39/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

设一根铝棒在温度t时的实际长度为,在t=0时的实际长度为.如果假定铝棒的单位长度增长量与温度成正比,得到如下数学模型其中表示铝棒在温度t时的长度(理论长度),是通过试验观测到的常数,则称为此模型的模型误差,而是比例系数的观测误差。1.4.1误差的类型第三十九页,共七十三页,2022年,8月28日40/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

对给定的数,计算

的值.解:由幂级数展开式取前面有限n+1项来近似计算,可得称为此算法的截断误差(方法误差)。1.4.1误差的类型第四十页,共七十三页,2022年,8月28日41/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

误差的类型总结

1.4.1误差的类型第四十一页,共七十三页,2022年,8月28日42/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.2误差和有效数字

设是某个量的准确值,为其近似值,称为近似值的绝对误差。

如果

,则称为近似值

的绝对误差限。

称为近似值的相对误差。在实际计算时,也将作为近似值的相对误差。如果或,则称为近似值的相对误差限。

第四十二页,共七十三页,2022年,8月28日43/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.2误差和有效数字

用最小刻度为毫米的直尺测量桌子长度,读数为1235mm.设桌子的准确长度为,而其近似值为则近似值的绝对误差限为0.5(mm),记为第四十三页,共七十三页,2022年,8月28日44/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.2误差和有效数字

万有引力常数

真空中光速

普朗克常数

电子的基本电荷

电子的静质量

常用物理量的取值范围第四十四页,共七十三页,2022年,8月28日45/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.2误差和有效数字

设实数的近似值为其中每个是中的一个数字,且如果的绝对误差满足就称用近似时具有n位有效数字,或者说准确到该位。第四十五页,共七十三页,2022年,8月28日46/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.2误差和有效数字

圆周率的近似值和有效数字

有效数字n

3位

5位

6位

第四十六页,共七十三页,2022年,8月28日47/762014-2015学年硕士研究生课程数值分析NumericalAnalysis练习:设

x1=1.73,x2=1.7321,x3=1.7320是其近似值,问它们分别有几位有效数字?3位5位4位第四十七页,共七十三页,2022年,8月28日48/762014-2015学年硕士研究生课程数值分析NumericalAnalysis有效数字与相对误差的关系

有效数字

相对误差限已知x*有n位有效数字,则其相对误差限为相对误差限有效数字已知x*的相对误差限为则可见x*至少有n位有效数字。第四十八页,共七十三页,2022年,8月28日49/762014-2015学年硕士研究生课程数值分析NumericalAnalysis初始数据引起计算函数值的误差1、函数值A*的绝对误差略去高阶项:§1.4误差的基本概念

1.4.3误差的累积第四十九页,共七十三页,2022年,8月28日50/762014-2015学年硕士研究生课程数值分析NumericalAnalysis

问题:

2、函数值A*的相对误差引起A的很大误差病态问题、坏条件问题第五十页,共七十三页,2022年,8月28日51/762014-2015学年硕士研究生课程数值分析NumericalAnalysis3、初始数据误差与计算结果误差之间的关系第五十一页,共七十三页,2022年,8月28日52/762014-2015学年硕士研究生课程数值分析NumericalAnalysis3、初始数据误差与计算结果误差之间的关系第五十二页,共七十三页,2022年,8月28日53/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.3误差的累积定理1.4.1设是的近似值,是的近似值,则的绝对误差界是的绝对误差界是当且时,的绝对误差界是第五十三页,共七十三页,2022年,8月28日54/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.3误差的累积定理1.4.2设是的近似值,是的近似值,则的相对误差界是的相对误差界是当且时,的相对误差界是第五十四页,共七十三页,2022年,8月28日55/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.3误差的累积例1.4.4计算并估计误差,其中原始数据的误差界为解:由定理1.4.1可得可见计算结果有三位有效数字。(?)第五十五页,共七十三页,2022年,8月28日56/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.3误差的累积定理1.4.3设是的近似值,函数在包含和的区间上有足够阶的导数,且与相比不太大,则有第五十六页,共七十三页,2022年,8月28日57/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.3误差的累积例1.4.5设求的误差解:因为,则有定理1.4.3可知第五十七页,共七十三页,2022年,8月28日58/762014-2015学年硕士研究生课程数值分析NumericalAnalysis4、推论1.在乘、除、开方运算时,问题数据的相对误差对计算结果的相对误差影响不大。2.尽量避免两相近数的减法运算。3.不宜用绝对值很小的数做除数.当x与y同号且x–y≠0时,由公式(f)至少有一个绝对值大于1x≈y时,至少有一个的绝对值很大y很小时,很大第五十八页,共七十三页,2022年,8月28日59/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.4数值计算基本原则<1>.避免两个相近的数相减。

由定理1.4.2可见,若两个相近的数相减,相对误差会很大。这是因为二者前面的有效数字相同,相减以后有效数字位数严重减少。例如当充分大时应变换来进行运算。第五十九页,共七十三页,2022年,8月28日60/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.4数值计算基本原则<2>.两个相差很大的数进行运算,要防止大数“吃掉”小数。调整运算次序可以避免这种情况发生。

例如则有在计算时由于对阶将“吃掉了”,.第六十页,共七十三页,2022年,8月28日61/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.4数值计算基本原则例1.4.6在8位十进制的机器上解方程利用求根公式而方程的根是和1,即错误。这是因为在的计算式子中,分子遇到两个相近的数相减。使用求根的韦达公式可以避免这种情况。第六十一页,共七十三页,2022年,8月28日62/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.4误差的基本概念

1.4.4数值计算基本原则<3>.尽量简化计算步骤,不但可以节约解题的时间,还能减少舍入误差。<4>.避免被除数的绝对值远远大于除数绝对值的除法。这有可能导致上溢,也会增大原有的误差第六十二页,共七十三页,2022年,8月28日63/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.5数值算法的稳定性

一个算法,如果在执行它的过程中,舍入误差可以在一定条件下得到控制,从而不影响算法得到可靠的结果,则称它是数值稳定的。否则称之是不稳定的。如果对输入数值的微小误差,经过某个算法的运算,输出结果产生了较大变化,则称算法是病态的;否则称算法是良性的。第六十三页,共七十三页,2022年,8月28日64/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.5数值算法的稳定性

建立一个算法来计算积分解:注意到两边在区间[0,1]上积分可得从而可得迭代递推格式第六十四页,共七十三页,2022年,8月28日65/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.5数值算法的稳定性

按照以上关系编程计算可得n=0积分值I(n)=1.000500e-003n=1积分值I(n)=5.001673e-004n=2积分值I(n)=3.328343e-004n=3积分值I(n)=8.318346e-004n=4积分值I(n)=-5.810028e-001n=5积分值I(n)=5.806218e+002n=6积分值I(n)=-5.800410e+005第六十五页,共七十三页,2022年,8月28日66/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.5数值算法的稳定性

计算结果可靠码?首先当,所以因此是单调递减收敛于0的数列,因此计算结果严重错误。产生计算谬误的原因是:如果,则计算时产生999倍的误差,计算时产生倍的误差,误差的传播像洪水冲破闸门一样泛滥成灾!可见以上的算法是病态和不稳定的。第六十六页,共七十三页,2022年,8月28日67/762014-2015学年硕士研究生课程数值分析NumericalAnalysis§1.5数值算法的稳定性

我们可以改变以上格式,取按照以上关系编程计算可得

n=0积分值I(n)=1.000500e-003n=1积分值I(n)=5.001668e-004上限1/n=1.000000n=2积分值I(n)=3.334167e-004上限1/n=0.500000n=3积分值I(n)=2.500500e-004上限1/n=0.333333n=4积分值I(n)=2.000333e-004上限1/n=0.250000n=5积分值I(n)=1.666905e-004上限1/n=0.200000n=6积分值I(n)=1.428750e-004上限1/n=0.166667算法是稳定的舍入误差得到良好的控制第六十七页,共七十三页,2022年,8月28日

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论