




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1*)()(xxxxxExErbAx ni, 3 ,2 四川大学QQ:1648277629Tel:)(*yEr*2*2*2*1*1*1rrxfyxxfyx2&教材教材 (Text Book) 数值计算方法数值计算方法 吕同富吕同富 康兆敏康兆敏 方秀男方秀男 编著编著 (清华大学出版社,(清华大学出版社,2008年)年)& 参考书目参考书目 (Reference) 数值计算方法数值计算方法 (上、下册上、下册) 林成森林成森 编著编著 (科学出版社(科学出版社 1998年)年) Principle of Numerical Analysis 数值分析原理数值分析原理 封建湖、车
2、刚明、聂玉峰封建湖、车刚明、聂玉峰 编著编著 (科学出版社,(科学出版社,2001年)年) 数值计算方法数值计算方法 李维国、黄炳家、同登科、王子亭李维国、黄炳家、同登科、王子亭 编著编著 (石油大学出版社,(石油大学出版社,2004年)年)3 课程评分方法课程评分方法 (Grading Policies) 平时成绩和上机实验平时成绩和上机实验 (40%左右左右) 期末考试成绩期末考试成绩 (60%左右左右)4 提问:提问:数值计算方法是做什么用的?数值计算方法是做什么用的?研究对象研究对象:数值问题数值问题有限个输入数据(问题的自有限个输入数据(问题的自变量、原始数据)与有限个输出数据(待求
3、解数据)之变量、原始数据)与有限个输出数据(待求解数据)之间函数关系的一个明确无歧义的描述。间函数关系的一个明确无歧义的描述。如一阶微分方程初值问题如一阶微分方程初值问题2(0)1dyxdxy求函数解析表达式求函数解析表达式( )yy x数学问题数学问题求函数求函数 在某些点在某些点( )yy x 1niix的近似函数值的近似函数值数值问题数值问题5程序程序设计设计上机上机计算计算设计高效、可设计高效、可靠的数值方法靠的数值方法数值数值问题问题求解求解近似结果近似结果输出输出重点讨论重点讨论数值问题的来源:数值问题的来源:实际实际问题问题建立数学模型建立数学模型数值数值问题问题6数值方法的设计
4、原数值方法的设计原则则收敛性:方法的可行性收敛性:方法的可行性稳定性:初始数据等产生的误差对结果的影响稳定性:初始数据等产生的误差对结果的影响便于编程实现:逻辑复杂度要小便于编程实现:逻辑复杂度要小计算量要小:时间复杂度要小,运行时间要短计算量要小:时间复杂度要小,运行时间要短存贮量要尽量小:空间复杂度要小存贮量要尽量小:空间复杂度要小可可靠靠性性分分析析计算复杂性计算复杂性误差估计:运算结果不能产生太大的偏差且误差估计:运算结果不能产生太大的偏差且能够控制误差能够控制误差71 误误 差差 /* Error */一、一、 误差的来源与分类误差的来源与分类 /* Source & Cla
5、ssification */ 1、从实际问题中抽象出数学模型从实际问题中抽象出数学模型 模型误差模型误差 /* Modeling Error */ 2、通过观测得到模型中某些参数(或物理量)的值通过观测得到模型中某些参数(或物理量)的值 观测误差观测误差 /* Measurement Error */ 3、数学模型与数值算法之间的误差求近似解数学模型与数值算法之间的误差求近似解 方法误差方法误差 (截断误差截断误差 /* Truncation Error */ ) 4、由于机器字长有限,原始数据和计算过程会产生新的误差由于机器字长有限,原始数据和计算过程会产生新的误差 舍入误差舍入误差 /*
6、Roundoff Error */8二、二、 误差分析的基本概念误差分析的基本概念 /* Basic Concepts */ 设设 为真值(精确值),为真值(精确值), 为为 的一个近似值的一个近似值 称称 为近似值为近似值 的绝对误差,简称误差。的绝对误差,简称误差。 xxexx 注:注:误差可正可负,常常是无限位的误差可正可负,常常是无限位的绝对绝对误差限误差限/* accuracy */ 绝对值的上界绝对值的上界 exx 如:如:5314159110314159262.(.) 绝对绝对误差还不能完全表示近似值的好坏误差还不能完全表示近似值的好坏(绝对误差(绝对误差/* absolute
7、error */)1 1 .Defx x 9近似值近似值 的误差的误差 与准确值与准确值 的比值:的比值:xe*xexxxx 称为近似值称为近似值 的相对误差,记作的相对误差,记作*reex x注:注:实际计算时,相对误差通常取实际计算时,相对误差通常取rexxexx 因为因为221()()( )()eeee xxexexxxxxxex 1 2 .Def(相对误差(相对误差/* relative error */ )10相对相对误差也可正可负误差也可正可负rrexxexx 1 3 .Def(有效数字有效数字/*Significant Digits*/ )相对相对误差限误差限相对相对误差的绝对值
8、的上界误差的绝对值的上界r /* relative accuracy */如:如:31415926*. 314. 3141592. 3位位21102e 6位位51102e 若近似值若近似值 与准确值与准确值 的误差的误差绝对绝对值不超过某一位值不超过某一位的半个单位,该位到的半个单位,该位到 的第一位非零数字共有的第一位非零数字共有 位则位则xxnxn称称 有有 位位有效数字有效数字*x11 有效数字有效数字(另外一种定义形式另外一种定义形式)用科学计数法,记用科学计数法,记 其中其中 , 若若 (即(即 的截取按四舍五入规则),则称的截取按四舍五入规则),则称 为有为有 位有效位有效数字,精
9、确到数字,精确到 。12010mnx.a aa 01 a| 0 5 10m nxx. naxnm 10 120 19, ,nmZ a aa n3.1415926535897932;3.1415 例例1:问:问: 有几位有效数字?请证明你的结论。有几位有效数字?请证明你的结论。 131 40 3141510and*0 5100 510*., | |.证明:证明:有有 位有效数字,精确到小数点后第位有效数字,精确到小数点后第 位。位。43规格化形式规格化形式12注:注:若若 的每一位都是有效数字,则的每一位都是有效数字,则 称是称是有效数有效数xx特别,经特别,经“四舍五入四舍五入”得到的数均为有
10、效数得到的数均为有效数1 1 .Th1 2010 mknx.aaaa 将将 的近似值的近似值 表示为表示为 ,若若 是有效数字,则相对误差不超过是有效数字,则相对误差不超过 ;反之,若已知相对误差反之,若已知相对误差 ,且有,且有 ,11102()k *xre1102kre xkaka则则 必为有效数字。必为有效数字。证明:证明:一方面,一方面, 是有效数字,是有效数字, ka则则1102m kxx 且且111 101010mmx 111101210102()m kkmrxxex 13另一方面,另一方面,11101022km kxxx 1102krxxex 10mx 必为有效数字,必为有效数字
11、, ka即即 至少有至少有 位有效数字位有效数字xk注注: :定理定理1说明了说明了有效数字与相对误差限的关系有效数字与相对误差限的关系. 有效数字有效数字 相对误差限相对误差限1212110 51010010201102mnnrmnnne.ex.a aa.a aaa 已知已知 x 有有 n 位位有效数字有效数字,则其,则其相对误差限相对误差限为为14 相对误差限相对误差限 有效数字有效数字112111111001021101100 51021|()()()nmrnmmnxxex.a aaa.a 1111021()nrea 已知已知 x 的的相对误差限相对误差限可写为可写为则则可见可见 x 至
12、少有至少有 n 位有效数字位有效数字。例例2 2:为使为使 的相对误差小于的相对误差小于0.001%, ,至少应取几位有至少应取几位有效数字?效数字?解:解:假设假设 取到取到 n 位有效数字,则其相对误差上限为位有效数字,则其相对误差上限为111102nrea 15要保证其相对误差小于要保证其相对误差小于0.001%,只要保证其上限满足,只要保证其上限满足111100 0012.%nea 已知已知 a1 = 3,则从以上不等式可解得,则从以上不等式可解得 n 6 log6,即即 n 6,应取,应取 = 3.14159。16例例3 3 计算下列多项式的值计算下列多项式的值nnnaxaxaxp1
13、0)(为已知数据为已知数据01,na aax分析:分析:输入数据为输入数据为 ,输出数据为,输出数据为 ,若直接由,若直接由 算出算出 ,再乘相应的系数,再乘相应的系数 并并相加,则要做次相加,则要做次 乘法和乘法和 次加法,占用个次加法,占用个 存储单元。存储单元。 0,naaxx)(xpnxx,2021,aaann12()nn n12 n秦九韶方法,也称为秦九韶方法,也称为HornerHorner算法算法 用递推公式表示为用递推公式表示为nnaxaxaxaxp)()(11000ab xbabiii1ni, 2 , 1)(xpbnn只用只用 次乘法和次乘法和 次加法,并占用次加法,并占用 个
14、存储单元个存储单元 n2nn三、数值算法及稳定性三、数值算法及稳定性 /* Numerical Algorithm and Stability */17大家一起猜?大家一起猜? dxe2x1011 / e解法之一解法之一:将将 作作Taylor展开后再积分展开后再积分2xe 91!4171!3151!21311)!4!3!21(10864210dxxxxxdxe2xS4R4 /* Remainder */,104 Sdxe2x取取则则 111!5191!414R称为称为截断误差截断误差 /* Truncation Error */005091!414.R 这这里里743002401033301
15、4211013114.S 0010200050. | 舍入误差舍入误差 /* Roundoff Error */ |006000100050102.dxe-x 的的总总体体误误差差计计算算= 0.747 由截去部分由截去部分/* excluded terms */引起引起由留下部分由留下部分/* included terms */引起引起例例4 4 近似计算近似计算210 xedx 10 333333. 10 0238042. 18 一个算法如果输入数据有扰动(即误差),而计算一个算法如果输入数据有扰动(即误差),而计算过程中舍入误差不增长过程中舍入误差不增长, ,则称此算法是数值稳定的,否则
16、则称此算法是数值稳定的,否则此算法就称为不稳定的。此算法就称为不稳定的。 1 4 .Def(数值稳定性(数值稳定性/ /* Numerical Stability */) 对数学问题本身如果输入数据有微小扰动,引起对数学问题本身如果输入数据有微小扰动,引起输出数据(即问题真解)的很大扰动,这就是病态问输出数据(即问题真解)的很大扰动,这就是病态问题。题。1 5 .Def(病态问题(病态问题/ /* ill-posed problem */) 它是数学问题本身性质所决定的,与算法无关,它是数学问题本身性质所决定的,与算法无关,也就是说对病态问题,用任何算法(或方法)直接计也就是说对病态问题,用任
17、何算法(或方法)直接计算都将产生不稳定性。算都将产生不稳定性。 19此公式此公式精确精确成立成立80001050 .IIE记为记为*0I632120560111100.edxeeIx 则初始误差则初始误差111111110010 nI)e(ndxexeIdxexennnn10109111012111312141315141 10 36787944.1 100 088128001 110 030592001 120 632896001 137 22764801 1494 9594241 151423 3914II.II.II.II.II.II.II. ? ! !What happened?!例例
18、5 5 计算计算1010 1 2, , ,.nxnIx e dxne 11101011nxnxnnIx enxe dxn Ie 公式一:公式一:20考察第考察第n步的误差步的误差nE11|(1)(1)|nnnnnEIInInI | !01En|Enn 我们有责任改变。我们有责任改变。造成这种情况的是造成这种情况的是不稳定的算法不稳定的算法 /* unstable algorithm */迅速积累,误差呈递增趋势。迅速积累,误差呈递增趋势。初始的小扰动初始的小扰动801050| .E)1(1111nnnnInIInI 公式二:公式二:注意此公式与公式一注意此公式与公式一在理论上等价。在理论上等价
19、。方法:先估计一个方法:先估计一个IN , ,再反推要求的再反推要求的In ( n N )。11)1(1 NINeN1112(1)1NNIIe NN 可取可取0* NNNIIEN, ,时时当当21()()()()()()1514151314121311121011121110 04274623321616110 06381691815110 06687022014110 07177921413110 07735173212110 08387711511110 367879442I.eII.II.II.II.II.II. ()01110 632120561II.取取22考察反推一步的误差:考察反
20、推一步的误差:()()1111|11|NNNNEIIENNN 以此类推,对以此类推,对 n N 有:有:|) 1(.) 1(1|NnEnNNE 误差逐步递减误差逐步递减, 这样的算法称为这样的算法称为稳定的算法稳定的算法 /* stable algorithm */ 在我们今后的讨论中,在我们今后的讨论中,误差误差将不可回避,将不可回避, 算法的算法的稳定性稳定性将会是一个非常重要的话题。将会是一个非常重要的话题。23例例6:蝴蝶效应:蝴蝶效应 纽约的一只蝴蝶翅膀一拍,风和日纽约的一只蝴蝶翅膀一拍,风和日 丽的北京就刮起台风来了?!丽的北京就刮起台风来了?!纽约纽约北京北京这是一个这是一个病态
21、问题病态问题242 误差分析的方法和原则误差分析的方法和原则 /* Error Analysis */一、误差分析的方法一、误差分析的方法1、向前误差分析法向前误差分析法:利用误差限,:利用误差限,随着计算过程随着计算过程 逐步向前进行分析,直至估计出最后的结果。逐步向前进行分析,直至估计出最后的结果。(例(例4 4) 1212()()()xxxx121221()()()x xxxxx 12211222()()()xxxxxxx 注:注:两个近似数两个近似数 ,四则运算得到的误差限分别为,四则运算得到的误差限分别为12,x x(1 1)25(2 2)对于函数对于函数 y = f (x),若用,
22、若用 x * 取代取代 x ,将对,将对y 产生产生什么影响什么影响?分析:分析:e(y) = f (x*) f (x) e(x) = x* xMean Value Theorem( )()fxx x *与与 x 非常接近时,可认为非常接近时,可认为 ,则有:,则有:( )()ffx ( )()( )e yf xe x 即:即: 产生的误差经过产生的误差经过 作用后被作用后被放大放大/ /缩小缩小了了 倍。倍。故称故称 为为放大放大/缩小缩小因子因子 /* amplification factor */ 或或 绝对绝对条件数条件数 /* absolute condition number */
23、.x f()f x ()f x 26( )|( )|()re yeyf x ( )|( )|re xexx ()( )( )()()( )()rrf xf xxxxeyxxf xxxfxexf x 相对误差条件数相对误差条件数 /* relative condition number*/ f 的条件数在某一点是的条件数在某一点是小小 大大,则称则称 f 在该点是在该点是好条好条件的件的 /* well-conditioned */ 坏条件的坏条件的 /* ill-conditioned */。注:注:关于多元函数关于多元函数 可类似讨论可类似讨论,理论工具:理论工具:Taylor公式公式 (教
24、材第教材第6页页).,(21nx,x,xfy ()( )()fxe xf x 27例例7 7105%x 设设 ,试求函数试求函数 的相对误差限的相对误差限. ( )nf xx 解:解:由题设知由题设知:近似值为近似值为 ,绝对误差限为绝对误差限为 10 x ()5%x 1111()()nnfxxxnnx re ffx e xe xeff xf xnxn()() ()()0.005()()() 282、向后误差分析法向后误差分析法:把舍入误差的累积与导出:把舍入误差的累积与导出 的已的已知知 量量 的某种摄动(微小误差)等价起来,的某种摄动(微小误差)等价起来, A 12,nx xx即令即令11
25、22(,)nnAf xxx 利用摄动理论,由利用摄动理论,由 的界估计出最后的舍入误差界。的界估计出最后的舍入误差界。i 3、区间分析法区间分析法:把参加运算的数都看成区间量,:把参加运算的数都看成区间量,根根据区间运算规则求得最后结果的近似值和误差限。据区间运算规则求得最后结果的近似值和误差限。4、概率分析法概率分析法:利用概率统计方法,将:利用概率统计方法,将数据和运算中数据和运算中 的舍入误差视为适合某种分布的随机变量,然后确定计的舍入误差视为适合某种分布的随机变量,然后确定计算结果的误差分布。算结果的误差分布。 29二、几点注意事项二、几点注意事项 /* Remarks */1、 避免
26、相近二数相减避免相近二数相减例:例:a1 = 0.12345,a2 = 0.12346,各有,各有5位有效数字。位有效数字。 而而 a2 a1 = 0.00001,只剩下,只剩下1位有效数字位有效数字。 几种经验性避免方法:几种经验性避免方法:;xxxx ;1lnlnln xxx当当 | x | 1 时:时:;2sin2cos12xx .6121112xxxex302、 避免小分母避免小分母 : 分母小会造成浮点溢出分母小会造成浮点溢出 /* over flow */3、避免大数避免大数吃吃小数小数例:例:用单精度计算用单精度计算 的根。的根。010)110(992 xx精确解为精确解为110
27、291 x,x 算法算法1 1:利用求根公式利用求根公式aacbbx242 在计算机内,在计算机内,109存为存为0.1 1010,1存为存为0.1 101。做加法时,做加法时,两加数的指数先向大指数对齐,再将浮点部分相加。即两加数的指数先向大指数对齐,再将浮点部分相加。即1 的指数部分须变为的指数部分须变为1010,则:,则:1 = 0.01 1010,取单精度时取单精度时就成为:就成为: 109+1=0.10000000 1010+0.00000000 1010=0.10000000 1010大数大数吃吃小数小数024,102422921 aacbbxaacbbx31算法算法2:先解出先解
28、出 再利用再利用9211024)( aacbbsignbx11010991221 xacxacxx求和时求和时从小到大从小到大相加,可使和的误差减小。相加,可使和的误差减小。例:按从小到大、以及从大到小的顺序分别计算例:按从小到大、以及从大到小的顺序分别计算1 + 2 + 3 + + 40 + 1094、 先化简再计算,减少步骤,避免误差积累。先化简再计算,减少步骤,避免误差积累。一般来说,计算机处理下列运算的速度为一般来说,计算机处理下列运算的速度为 exp ,5、选用稳定的算法。选用稳定的算法。32称为称为尾数,尾数,j为为阶阶3 计算机的数系结构计算机的数系结构/* Structure of Number System */计算机的数系是一个计算机的数系是一个不完整不完整的数系。计算机只能表示的数系。计算机只能表示有限个数,即计算机的精度是有限
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理规培出科汇报
- 2025年工业缝纫机电控项目合作计划书
- 2025年无功功率自动补偿装置项目合作计划书
- 玉树市重点中学2025届高三第三次模拟考试化学试卷含解析
- 2025年数控组合机床项目发展计划
- 五年级数学(小数四则混合运算)计算题专项练习及答案
- 2025年螺旋锥齿轮项目可行性建设方案
- 2025年非调质钢合作协议书
- 2025年泡丝剂项目合作计划书
- 2025年FS-L系列柔软剂项目发展计划
- 2025年吉林铁道职业技术学院单招职业技能测试题库及参考答案
- 2025年春统编版七年级语文下册 第三单元 阅读综合实践(公开课一等奖创新教案+)
- 信息通信工程安全施工指南
- DB33T 1134-2017 静钻根植桩基础技术规程
- 信息系统监理师(中级)考试题库(含答案)
- 2023年5月7日内蒙古事业单位联考职业能力倾向测验A类真题答案解析
- 《高性能混凝土应用技术标准》(征求意见稿)
- 研究生考试考研化学(农315)试题及解答参考(2024年)
- 《鲁迅研究性学习》课件
- 连锁经营管理专业学生专业技能考核标准
- 电影《白日梦想家》课件
评论
0/150
提交评论