《数值计算课后答案.pdf》由会员分享,可在线阅读,更多相关《数值计算课后答案.pdf(15页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、习 题 二 解 答 1用二分法求方程 x3-2x2-4x-7=0 在区间3,4内的根,准确到 10-3,即误差不超过31102。分析:准确到 10-3与误差不超过 10-3不同。解:因为 f(3)-100,f(4)=90,所以,方程在区间3,4上有根。由 34311*1022222nnnnnnbabaxx 有 2n-11000,又为 21010241000,所以 n11,即只需要二分 11 次即可。列表讨论如下:n an bn xn f(xn)的符号 1 3 4 2 4 3 4 8 5 8 7 6 7 1 7 1 3 8 3 29 9 29 3 1 10 1 3 2 11 1 2 2 x*x1
2、1=。指出:1注意准确度的不同表述。准确到 10-3和误差不超过 10-3是不同的。2在计算过程中按规定精度保存小数,最后两次计算结果一样。如果计算过程中取 4 位小数,结果取 3 位,那么如下表:n an bn xn f(xn)的符号 1 3 4 2 4 3 4 5 6 7 8 9 10 11 3用秦九韶算法计算 f(xn)比拟简单。1*求方程 x3-2x2-4x-7=0 的隔根区间。解:令32247yxxx,那么2344322()()yxxxx 当23443220()()yxxxx 时,有12223,xx。函数单调区间列表分析如下:x(-,23)23 223(,)2(2,+)y+0 0+y
3、 14927 15 因为214902150327(),()yy ,所以方程在区间223(,)上无根;因为21490327()y ,而函数在23(,)上单调增,函数值不可能变号,所以方程在该区间上无根;因为2150()y,函数在(2,+)上单调增,所以方程在该区间上最多有一个根,而(3)=-100,所以方程在区间(3,4)有一个根。所以,该方程有一个根,隔根区间是(3.4)。2 证明1sin0 xx在0,1内有一个根,使用二分法求误差不大于41102的根,需要迭代多少次?分析:证明方程在指定区间内有一个根,就是证明相应的函数在指定区间有至少一个零点。解:令()1sinf xxx,因为(0)10s
4、in 010,(1)1 1 sin1sin10ff ,那么(0)(1)0ff,由零点定理,函数f(x)在0,1 区间有一个根。由 41 011*1022222nnnnnnbabaxx 有 2n-110000,又为 2101024,213819210000 所以 n15,即需要二分 15 次。指出:要证明的是有一个解而不是唯一解,因此不必讨论单调性。3试用迭代公式10220,1210kkkxxxx,求方程32210200 xxx的根,要求准确到510。分析:准确到510即误差不超过51102 解:令32()21020f xxxx 列表进展迭代如下:kx()kf x 0 1-7 1 1.53846
5、 3.75964 2 1.29502-3 4 5 6 7 8 9 10 11 12 13 14 53 992 10.15 53 992 10.指出:准确到510可以从两个方面判定。第一,计算过程中取小数到510位,最后两个计算结果一样,终止计算。第二,计算过程中取小数到610,当511102kkxx终止计算。此题采用第一种方法。4 将一元非线性方程20cosxxe写成收敛的迭代公式,并求其在00 5.x 附近的根,要求准确到210。解:20cosxxe改写为222110coscoscosxxxxxxeee ,那么 21cosxxxxe,设 21cos()xxg xxe 有 22 2222411
6、1sin()sincos(sincos)()()xxxxxxxexexxg xeee 在00 5.x 处,因为 0 52 20 540 510 96151.sin(.)(.).ge 所以迭代法121cos()kkkkxxg xxe在00 5.x 的邻域内收敛。列表迭代如下:kx 0 05 1 071 2 069 3 069 此时0 6920 690 00614.cos.e。5为求方程3210 xx 在01 5.x 附近的一个根,设将方程改为以下等价形式,并建立相应的迭代公式:12213223121121111121111311(),;(),();(),.()kkkkkkxxxxxxxxxxxx
7、 迭代公式迭代公式迭代公式 试分析每种迭代公式的收敛性,并取一种公式求出具有 4 位有效数字的近似值。解:1因为211xx,所以迭代函数为211()g xx,那么 23212()()()g xxxx,33221 52 1 511 53 375(.).g 满足局部收敛性条件,所以迭代公式1211kkxx 具有局部收敛性。2因为1231()xx,所以迭代函数为1231()()g xx,那么 1212233223122121333 1()()()()xg xxxxxx,2232 1 51 50 456131 1 5.(.).(.)g满 足 局 部 收 敛 性 条 件,所 以 迭 代 公 式12311
8、()kkxx具有收敛性。3因为1211()xx,所以迭代函数为1211()()g xx,那么 13122111122()()()g xxx ,3232111 51 5 11 414122 0 5(.)(.).g不满足收敛性条件,所以迭代公式 11211()kkxx不具有收敛性。用迭代公式1211kkxx 列表计算如下:kx 0 15 1 1444 2 1480 3 1457 4 1471 5 1462 6 1468 7 1464 8 1467 9 1465 10 1466 11 1465 所以,方程的近似根为1 465*.x。6设23()()xxC x,应如何取 C 才能使迭代公式1()kkx
9、x具有局部收敛性?解:设 C 为常数,因为23()()xxC x,所以12()xCx,要使迭代公式具有局部收敛性,需001 21()xCx,此时即有01 1 21Cx ,也即 010Cx。即只要 C 取满足如上条件的常数,就可以使得迭代公式具有局部收敛性。指出:此题的一般形式为:设()()xxCf x,应如何取 C 才能使迭代公式1()kkxx具有局部收敛性?显然,()()xxCf x是迭代格式1()kkxx相应的迭代函数,因此该迭代格式要求解的方程是()()()0 xxxxCf xf x。也就是说,这是如何选择 C,构造一个求解方程f(x)=0的收敛的迭代格式的问题。因为()()xxCf x
10、,所以()1()xCfx,要使迭代格式收敛,需()1()1xCfx 解之得2()0Cfx,即 C 与()fx异号,且()2Cfx。下面的讨论利用了此题的特殊条件,求出了具体的结果:因为23()()xxC x,所以当2(3)xxC x时,有2(3)0C x,那么3x ,即函数23()()xxC x的不动点为*3x 。而12()xCx,根据局部收敛性定理,当1(3)123103Cc 时,迭代格式收敛到3;当1(3)12(3)103Cc 时,迭代格式收敛到3。7用牛顿法求方程3310 xx 在初始值02x 邻近的一个正根,要求3110kkxx。解:因为3310 xx 所以有3()31f xxx,相应
11、的迭代公式为 3312231213333kkkkkkkxxxxxxx 取 x0=2 为迭代的初始近似值。迭代的结果列表如下:k 0 1 2 3 xk 2 因为33210.0001102xx,符合计算的精度要求,所以*31.8794xx。8用牛顿法解方程10cx,导出计算数 c 的倒数而不用除法的一种简单的迭代公式。用此公式求 0.324 的倒数,设初始值03x,要求计算有 5 位有效数字。解:对于方程10cx,有1()f xcx,相应的迭代公式为 212121kkkkkkcxxxxcxx。应用该迭代公式求 0.324 的倒数,列表计算如下 kx 0 3 1 3084 2 30864 3 308
12、64 所以13 08640 324.。指出:如果将方程10cx改写为等价的10cx,那么有1()f xcx,相应的迭代公式为 111kkkcxxxcc 无法展开迭代。9设 a 为数,试用牛顿法导出求na的迭代公式,并求极限 12lim()nknkkaxax。解:设 a 为正实数,n 为自然数,由牛顿法,方程0()nf xxa的解为 11111()()(1)1(1)kkkknnnkkkknnkknknkknkf xxxfxxanxxaxnxnxnxanxanxnx 此即求na的迭代公式。由此,那么 1112221111(1)(1)limlimlim()()()1(1)(1)lim2(1)()1(
13、1)(1)lim2()1(1)()limnnnknnkkkknnnkkkkkknknkknknkknkkaanxanxaxaxnxnaxaxaxnan xnaxnan xnaxann xn 11112(1)(1)(1)(1)1lim22lim2()2nnnnnkkkkananannxxaa 指出:此题中,外表上是k 的问题,但实际上却是nkxa的问题,1,kkxx才是极限过程中实际的变量。本质上。此题实际上是求极限 1112221211(1)(1)limlimlim()()()1(1)lim()nnnnknnkkkknnnkkkkkknnnxaaanxanxaxaxnxnaxaxaxanxax
14、nax 由于讨论的是00型不定式,且不定式的分母上有 2 次的“0因子,因此两次应用罗必塔法那么。解二:首先证明一个定理:定理:设*()0,()0f xfx,又设 f(x)在*x的某个邻域内具有连续的二阶导数,那么牛顿迭代法具有局部收敛性,且有。*1*2*()lim()()kkkxxfxxxfx。证明:因为()()()f xg xxfx 所以2()()()()()()f xf x fxg xxfxfx 因为 f(x)在邻域内具有连续的二阶导数,所以()g x在邻域内连续,且*2*()()()0()f xfxg xfx 由局部收敛性定理,牛顿迭代法具有局部收敛性。对2()()()()()()f
15、xf x fxg xxfxfx求导,根据条件有*()()()fxgxfx 由收敛阶定理,假设*()0fx,那么*()()0()fxgxfx,牛顿迭代法二阶收敛,假设*()0fx,那么*()()0()fxgxfx,牛顿迭代法有更高的收敛阶。因为牛顿迭代法有二阶收敛性,所以*1*2*()()()()lim()2!2!2()kkkfxxxgxfxfxxxfx。显然 如果*x是方程 f(x)=0 的单根,那么*()()()f xxxx,且*()0 x。此时*()()()()fxxxxx,那么*()()0fxx,可见定理中的条件“*()0,()0f xfx可以等价替换为“*x是方程f(x)=0 的单根
16、对此题来说,()nf xxa,*nxa是方程的单根,所以 11(),()()0nnnnfxnxfana 22()(1),()(1)()nnnnfxn nxfan na 那么 211221(1)()11limlim()()2()22nnnnkknnnnnnkkkkaxxan nannaxxanaaa 。指出:应用分组分解法进展因式分解,分子、分母约去“0因子,就可以按连续函数的极限性质求解了。10 用快速弦截求方程3310 xx 在初始值02x 邻近的实根 取11.9x,要求准确到310。解:因为3310 xx 所以有3()31f xxx,相应的迭代公式为 111()()()()kkkkkkkf
17、 xxxxxf xf x 取 x0=2 为迭代的初始近似值。迭代的结果列表如下:k xk xk-xk-1 f(xk)f(xk)-f(xk-1)0 2 1 1 19 2 18811 3 18794 4 18794 因为34310.0000102xx,符合计算的精度要求,所以*41.8794xx。指出:本教程所说快速弦截法是通常所说的弦截法割线法,而它所说弦截法是通常的单点弦截法。11、分别用以下方法求方程4cosxxe在04x邻近的根,要求有三位有效数字。1用牛顿法,取04x;2用弦截法,取01,42xx;3用快速弦截法,取01,42xx。解:方程4cosxxe变形为4cos0 xex,那么()
18、4cos,()4sinxxf xex fxex。牛顿法、弦截法、快速弦截法公式分别为 1牛顿法 1()4cos()4sinkkxkkkkkxkkf xexxxxfxex;2弦截法 1()(0.785)()1.81kkkkkf xxxxf x;3快速弦截法 111()()()()kkkkkkkf xxxxxf xf x。取 3 位有效数字,分别计算得 k xk 牛顿法 弦截法 快速弦截法 0 0785 0785 0785 1 159 157 157 2 141 133 133 3 139 140 138 4 139 138 140 5 139 139 6 138 139 补充题 一 1、确定方程
19、 x5+x-100 的根的个数,找出隔根区间。2、用二分法求方程 f(x)=x32x-5=0 在2,3的根的近似值,要求误差不超过 0.005。3、用二分法求方程 f(x)=x32x-5=0 在2,3的根的近似值,要求误差不超过 0.05。4、用二分法求方程2()sin04xf xx的非零实近似根,使误差不超过 102。5、分析方程()sin02xf xx的根的分布情况,并用二分法求正根的近似值,使误差不超过 102。6、估计用二分法求方程 f(x)=x34x2-10=0 在1,2内的根的近似值,为使误差不超过 105时所需要的二分次数。分析与解答 1、令510yxx,451yx,显然0y,而
20、且函数没有不可导点,所以,函数在区间(,)上是单调增的,故方程最多有一个根。因为(0)100,(2)240yy,所以方程在0,2区间有一个根,0,2即为方程的隔根区间。2、因为 f(2)=70,f(3)=280,实际上本方程在指定范围内无根。但如果不加判定,也可以计算出一个值来。所以,用二分法求方程的根必须先行判定。要特别注意的是,完整的二分法的过程是,第一步代入初值,第二步判断是否有解,第三步在有解的前提下求出解来。不进展判断就形式地套用二分法的过程是不可以的,同样地,如果因为无解就放弃讨论也是不正确的。3、因为 f(2)=10,f(3)=160,所以方程在区间上有解。321*0.05222
21、2nnnnnnbabaxx,所以,2n20,n=5。x*4、画出 y=sinx 和24xy 的曲线,可以看出,两条曲线除了原点外,在第一象限有且只有一个 交点。交点的横坐标介于 1.5 与 2 之间显然,21.5,sin(2)=1,2()214,所以在 2 点,f(x)0,而当 x2 时,214x,sinx1,所以在 2 点,f(x)0。5、画出 y=sinx 和2xy 的曲线,可以看出,两条曲线除了原点外,在第一象限有且只有一个交点。交点的横坐标介于 1.8 与 1.9 之间根据图像,用计算器计算估计,当 sinx 的值从大于2x的值变为小于时,隔根区间就找到了。要求x*xn0.01,可以求
22、出用二分法计算的次数。在区间1.8,1.9上,因为 1.91.80.1*0.012222nnnnnnbabaxx 所以,n=4。具体计算过程如下 n an bn xn f(xn)的符号 1 2 3 4 所以,x*x4 指出:确定求根区间和根的初始近似值,应用 MATLAB 工具,用交轨法是重要的途径,可以先确定大致范围,再缩小区间重新画图精细化。在用普通的手工画草图的方法画交轨图的时候,可以借助于计算器使得隔根区间更短,但这种方法只对简单问题有效。6、x*xn105,即52 111022nn,所以 2n105。因为 21532768,21665537,217131072,所以 n=17。二 1
23、、对于方程 3x2ex0,为求最大正根与最小正根的近似值,试分别确定迭代函数 g(x)及区间a,b,使得当 x0a,b时,相应的迭代过程 xk+1=g(xk)收敛到要求的根。2、证明:当 x0=1.5 时,迭代法 1104kkxx 和311102kkxx 都收敛于方程 f(x)=x3+4x2-10=0 在区间1,2内的唯一实根 x*,分别用上述迭代法求满足精度xk+1xk105的近似根。3、为求方程 f(x)=x3x210 在 x01.5 附近的一个根,可将方程改写成以下等价形式,并建立相应的迭代公式 1改写成211xx,迭代公式为1211kkxx;2改写成 x3=1+x2,迭代公式为2311
24、kkxx;3改写成211xx,迭代公式为111kkxx。试分析每一种迭代公式的收敛性。分析与解答 1、根据 3x2和 ex的图像可知,方程 3x2ex0 在实数域上有三个根,分别在区间(1,0),(0,1),(3,4)内。其最大正根在3,4区间,最小正根在0,1区间。取迭代函数 g(x)=ln3x2,可以得到最大正根,而取迭代函数()3xg xe,可以得到最小正根。2、两种迭代法的迭代函数分别在区间1,2和1,1.5上满足定理 2不动点原理的条件,故当 x0=1.5 时两种迭代法都收敛,且分别迭代 9 次和 25,都可得到近似根 1.36523。我们讨论第一种迭代法,用定理 2 证明。它的迭代
25、函数为10()4g xx。首先,g(x)是一个减函数,当 x=1 时,(1)2g,当 x2 时,5(2)3g。所以当 x1,2时,1g(2)g(x)g(1)2,即 g(x)1,2。其次,3101()2(4)g xx,显然这是一个增函数,当x2 时,其函数值为 31015(2)2432(42)g ,所以,g(x)g(2)1。指出:只给出了含根区间,就只能用定理 2 证明。3、1给出了初始近似值,也即知道了准确根的大致位置,可以用定理4局部收敛性定理证明。由题意,方程有实根。下面证明 g(x)连续和 g(x*)1 x*是方程的准确根。方程2312()1,()g xg xxx,可见 g*的邻域内,由函数 g(x)的连续性,g(x*)1,所以此迭代法具有局部的收敛性。指出:一般地说,用定理 2不动点原理证明只要利用函数的单调性与区间上的最值就可以讨论,而用定理 4局部收敛性定理那么需要用到函数的连续性。