当前位置:文档之家› 数值计算课后答案2

数值计算课后答案2

习 题 二 解 答1.用二分法求方程x 3-2x 2-4x-7=0在区间[3,4]内的根,精确到10-3,即误差不超过31102-⨯。

分析:精确到10-3与误差不超过10-3不同。

解:因为f(3)=-10<0,f(4)=9>0,所以,方程在区间[3,4]上有根。

由34311*1022222n nn nnnb a b a x x -----≤===<⨯有2n-1>1000,又为210=1024>1000, 所以n =11,即只需要二分11次即可。

x *≈x 11=3.632。

指出:(1)注意精确度的不同表述。

精确到10-3和误差不超过10-3是不同的。

(2)在计算过程中按规定精度保留小数,最后两次计算结果相同。

(3)用秦九韶算法计算f(x n )比较简单。

1*.求方程x 3-2x 2-4x-7=0的隔根区间。

解:令32247y x x x =---, 则2344322()()y x x x x '=--=+-当23443220()()y x x x x '=--=+-=时,有12223,x x =-=。

因为214902150327(),()y y -=-<=-<,所以方程在区间223(,)-上无根;因为21490327()y -=-<,而函数在23(,)-∞-上单调增,函数值不可能变号,所以方程在该区间上无根;因为2150()y =-<,函数在(2,+∞)上单调增,所以方程在该区间上最多有一个根,而(3)=-10<0,y(4)=9>0,所以方程在区间(3,4)有一个根。

所以,该方程有一个根,隔根区间是(3.4)。

2.证明1sin 0x x --=在[0,1]内有一个根,使用二分法求误差不大于41102-⨯的根,需要迭代多少次?分析:证明方程在指定区间内有一个根,就是证明相应的函数在指定区间有至少一个零点。

解:令()1sin f x x x =--,因为(0)10sin 010,(1)11sin 1sin 10f f =--=>=--=-<,则(0)(1)0f f <,由零点定理,函数f(x)在[0,1]区间有一个根。

由41011*1022222n nn nnnb a b a x x -----≤===<⨯有2n-1>10000,又为210=1024,213=8192<10000,214=16384>10000 所以n =15,即需要二分15次。

指出:要证明的是有一个解而不是唯一解,因此不必讨论单调性。

3.试用迭代公式10220,1210k k k x x x x +==++,求方程32210200x x x ++-=的根,要求精确到510-。

分析:精确到510-即误差不超过51102-⨯解:令32()21020f x x x x =++- 列表进行迭代如下:指出:精确到510-可以从两个方面判定。

第一,计算过程中取小数到510-位,最后两个计算结果相同,终止计算。

第二,计算过程中取小数到610-,当511102k k x x -+-<⨯终止计算。

本题采用第一种方法。

4.将一元非线性方程20cos x x e -=写成收敛的迭代公式,并求其在005.x =附近的根,要求精确到210-。

解:20cos x x e -=改写为222110cos cos cos x xxx x x e ee=⇒=⇒-=,则21cos xx x x e=+-,设 21cos ()xx g x x e=+-有22224111)sin cos (sin cos )()()xxxxxx xe xex x g x e eeπ+--+'=+=-=-在005.x =处,因为05054051096151..)(.).g eπ+'=-=<所以迭代法121cos ()kkk k x x g x x e+=+-在005.x =的邻域内收敛。

列表迭代如下:此时0692069000614.cos ..e -=。

5.为求方程3210x x --=在015.x =附近的一个根,设将方程改为下列等价形式,并建立相应的迭代公式:12213223121121111121111311(),;(),();(),.()k kk kk k x x xx x x x x x x x x +++=+=+=+=+==--迭代公式迭代公式迭代公式 试分析每种迭代公式的收敛性,并取一种公式求出具有4位有效数字的近似值。

解:(1)因为211x x=+,所以迭代函数为211()g x x =+,则23212()()()g x xxx--'''===-,3322152151153375(.)...g -'=-⨯==<满足局部收敛性条件,所以迭代公式1211k kx x+=+具有局部收敛性。

(2)因为1231()x x =+,所以迭代函数为1231()()g x x =+,则12122332231221213331()()()()xg x x x x x x --'=+=+=+,223215150********.(.).(.)g ⨯'==<+满足局部收敛性条件,所以迭代公式12311()k kx x +=+具有收敛性。

(3)因为1211()x x =-,所以迭代函数为1211()()g x x =-,则13122111122()()()g x x x ---'=--=--,323211151********205(.)(.)..g -'=-==>⨯不满足收敛性条件,所以迭代公式11211()k k x x +=-不具有收敛性。

用迭代公式1211k kx x+=+列表计算如下:所以,方程的近似根为1465*.x ≈。

6.设23()()x x C x ϕ=+-,应如何取C 才能使迭代公式1()k k x x ϕ+=具有局部收敛性?解:设C 为常数,因为23()()x x C x ϕ=+-,所以12()x Cx ϕ'=+,要使迭代公式具有局部收敛性,需00121()x Cx ϕ'=+<,此时即有01121Cx -<+<,也即010Cx -<<。

即只要C 取满足如上条件的常数,就可以使得迭代公式具有局部收敛性。

指出:本题的一般形式为:设()()x x Cf x ϕ=+,应如何取C 才能使迭代公式1()k k x x ϕ+=具有局部收敛性?显然,()()x x Cf x ϕ=+是迭代格式1()k k x x ϕ+=相应的迭代函数,因此该迭代格式要求解的方程是()()()0x x x x Cf x f x ϕ=⇒=+⇒=。

也就是说,这是如何选择C ,构造一个求解方程f(x)=0的收敛的迭代格式的问题。

因为()()x x Cf x ϕ=+,所以()1()x Cf x ϕ''=+, 要使迭代格式收敛,需()1()1x Cf x ϕ''=+< 解之得2()0Cf x '-<<,即C 与()f x '异号,且()2Cf x '<。

下面的讨论利用了本题的特殊条件,求出了具体的结果:因为23()()x x C x ϕ=+-,所以当2(3)x x C x =+-时,有2(3)0C x -=,则x =23()()x x C x ϕ=+-的不动点为*x =。

而12()x Cx ϕ'=+, 根据局部收敛性定理,当1210C c ϕ'=+<⇒-<<;当(12(10C c ϕ'=+<⇒<<时,迭代格式收敛到。

7.用牛顿法求方程3310x x --=在初始值02x =邻近的一个正根,要求3110k k x x -+-<。

解: 因为3310x x --=所以有3()31f x x x =--,相应的迭代公式为3312231213333k k k k k k k x x x x x x x +--+=-=--取x 0=2为迭代的初始近似值。

迭代的结果列表如下:因为33210.0001102x x --=<⨯,符合计算的精度要求,所以*3 1.8794x x ≈=。

8.用牛顿法解方程10c x-=,导出计算数c 的倒数而不用除法的一种简单的迭代公式。

用此公式求0.324的倒数,设初始值03x =,要求计算有5位有效数字。

解:对于方程10c x -=,有1()f x cx =-,相应的迭代公式为212121k k k k k kc x x x x cx x +-=-=--。

应用该迭代公式求0.324的倒数,列表计算如下所以1308640324..≈。

指出: 如果将方程10c x -=改写为等价的10cx -=,则有1()f x cx =-,相应的迭代公式为111k k k cx x x cc+-=-=无法展开迭代。

9.设alimk →∞。

解:设a 为正实数,n 为自然数,由牛顿法,方程0()n f x x a =-=的解为11111()()(1)1[(1)]k k k k nnnk k k k n n k kn k n kk n kf x x x f x x a nx x ax nxnx n x anx a n x nx+----=-'--+=-=-+==-+此即求 由此,则111111[(1)][(1)] lim lim lim1[(1)(1)]lim1[(1)(1)]lim1[((1)()limnk n k k k k knkknkknkkan x n x axx n xn a n xn a n xa n n xn--→∞→∞→∞--→∞-→∞-→∞-+-+==--+-=--+-=---=111]2(1)(1)(1)lim22limn nkk kka n a nx x-++→∞→∞-⨯---====指出:本题中,表面上是k→∞的问题,但实际上却是kx→的问题,1,k kx x+才是极限过程中实际的变量。

本质上。

本题实际上是求极限11111[(1)][(1)] lim lim lim1[(1)]nk n k k k k knxan x n x axx n xn x ax--→∞→∞→∞--+-+==-+=由于讨论的是0型不定式,且不定式的分母上有2次的“0”因子,因此两次应用罗必塔法则。

解二:首先证明一个定理:定理:设**()0,()0f x f x'=≠,又设f(x)在*x的某个邻域内具有连续的二阶导数,则牛顿迭代法具有局部收敛性,且有。

相关主题