资源描述:
《武汉大学 计算方法课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、1.要使用数值稳定的算法例4:求(n=0,1,2,…,8)的值。解:由于初值§1.3数值计算中应该注意的一些原则递推公式(1.8)注意此公式精确成立按(1.8)式就可以逐步算出Whathappened?!不稳定的算法!由递推公式(1.8)可看出,In-1的误差扩大了5倍后传给In,因而初值I0的误差对以后各步计算结果的影响,随着n的增大愈来愈严重。这就造成I4的计算结果严重失真。这就是误差传播所引起的危害!改变公式:将公式变为不妨设I9I10,于是由可求得I90.017,按公式(1.9)可逐次求得(1.9)I80.019I70.021I60
2、.024I80.028I40.034I30.043I20.058I10.088I00.182稳定的算法!在我们今后的讨论中,误差将不可回避,算法的稳定性会是一个非常重要的话题。2.要避免两个相似数相减在数值计算中,两个相近的数作减法时有效数字会损失。(1.10)的值。当x=1000,y的准确值为0.015801、直接相减2、将(1.10)改写为则y=0.01581例5:求类似地3.避免大数吃小数例7:用单精度计算的根。精确解为算法1:利用求根公式在计算机内,109存为0.11010,1存为0.1101。做加法时,两加数的指数先向大指
3、数对齐,再将浮点部分相加。即1的指数部分须变为1010,则:1=0.00000000011010,取单精度时就成为:109+1=0.100000001010+0.000000001010=0.100000001010算法2:先解出注:求和时从小到大相加,可使和的误差减小。例8:按从小到大、以及从大到小的顺序分别计算1+2+3+…+40+109再利用5.绝对值太小的数不宜作除数例6:如分母变为0.0011,也即分母只有0.0001的变化时4.先化简再计算,减少步骤,避免误差积累。第二章非线性方程的数值解法(NumericalMethodsofN
4、onlinearEquations)§2.1二分法(BisectionMethod)原理:若f(x)C[a,b],且f(a)·f(b)<0,则f(x)在(a,b)上必有一根。abx1x2a1b2x*b1a2停机条件(terminationcondition):或执行步骤1.计算f(x)在有解区间[a,b]端点处的值,f(a),f(b)。2.计算f(x)在区间中点处的值f(x1)。3.判断若f(x1)=0,则x1即是根,否则检验:(1)若f(x1)与f(a)异号,则知解位于区间[a,x1],b1=x1,a1=a;(2)若f(x1)与f(a)同号,则知
5、解位于区间[x1,b],a1=x1,b1=b。反复执行步骤2、3,便可得到一系列有根区间:(a,b),(a1,b1),…,(ak,bk),…4、当时5、则即为根的近似定义f(x)f(a)f(b)>0f(a)f(b)=0f(a)=0打印b,k打印a,k结束是是是否否否m=(a+b)/2
6、a-b
7、<f(a)f(b)>0打印m,ka=mb=m结束k=K+1是是否否输入k=0误差分析:第1步产生的有误差第k步产生的xk有误差对于给定的精度,可估计二分法所需的步数k:Remark1:求奇数个根Findsolutionstotheequationx3-
8、6x2+10x-4=0ontheintervals[0,4],Usethebisectionmethodtocomputeasolutionwithanaccuracyof10-7.Determinethenumberofiterationstouse..[0,1],[1.5,2.5]and[3,4],利用前面的公式可计算迭代次数为k=23.例1用二分法求在(1,2)内的根,要求绝对误差不超过10-6解:f(1)=-5<0有根区间中点f(2)=14>0-(1,2)+f(1.25)<0(1.25,1.5)f(1.375)>0(1.25,1.375)f(
9、1.313)<0(1.313,1.375)f(1.344)<0(1.344,1.375)f(1.360)<0(1.360,1.375)f(1.368)>0(1.360,1.368)f(1.5)>0(1,1.5)Remark2:要区别根与奇异点Considerf(x)=tan(x)ontheinterval(0,3).Usethe20iterationsofthebisectionmethodandseewhathappens.Explaintheresultsthatyouobtained.(如下图)Remark3:二分发不能用来求重根(1)简单;(
10、2)对f(x)要求不高(只要连续即可).(1)无法求复根及重根(2)收敛慢(3)不能区别根与奇异点小结:f(