方程迭代3
- 格式:doc
- 大小:1.50 MB
- 文档页数:39
1 西南交通大学数值分析题库 (1).设()3()1fxx=-,则()fx关于[0,1]C的f¥= 1 ,1f= 14 ,
2f= 17 。
(2) 设A是正定矩阵,则A的cholesky的分解 唯一 (唯一,不唯一) (3) 用梯形公式计算积分232xedx 9.219524E-003:此值比实际值 小 (大,小)
(4) 用Euler方法解初值问题 0(0)1yyy的近似解的最终表达式ny=()1nh+ (取步长xhn=);当n时,limnny= xe 。 (5) 令f(x)=3x7+ x4+3x+1, 则f[20, 21,…,27]= 3 ;f[20, 21,…,28]= (5) 在以10((),())()(),(),()[0,1]gxfxxfxgxdxfxgxC为内积的空间C[0,1]
中,与非零常数正交的一次多项式是 2,03cxc 例4-2 证明0sin1xx在[0,1]内有一个根,使用二分法求误差不大于41021的根要迭代多少次? 解答 设xxxfsin1)(,则01sin)1(,01)(fxf;又因
]1,0[,0cos1)(xxxf,故)(xf在[0,1]上单减,因此f(x)在[0,1]上有且仅有一
个根。 使用二分法时,误差限(按例4-1的编号方式)为
4111102121)(21*kkkabxx,解得
7 287.132ln/10ln4,1024kk 所以需迭代14次即可。 例4-3 求解方程xex的根,要求取5.00x,分别用简单迭代法、迭代法的加速方
法:)(1)(111kkkkkxxppxxx,以及埃特金方法求解,要求误差应满足5110kkxx
。
解答 (1)简单迭代法。此时迭代公式为 ,2,1,0,5.0,01kxexxk 2
计算结果如下: k kx k k
x
0 0.5 10 0.566 907 2 1 0.606 530 6 11 0.567 277 2 2 0.545 239 2 12 0.567 067 3 3 0.579 703 1 13 0.567 486 3 4 0.560 064 6 14 0.567 118 8 5 0.571 172 1 15 0.567 157 1 6 0.564 862 9 16 0.567 135 4 7 0.568 438 0 17 0.567 147 7 8 0.566 409 4 18 0.567 140 7 9 0.567 559 6
此时已满足5171810xx,故取5671407.0*18xx。
(2)用加速技巧来做。在5.00x附近,6.0)(xe,故取6.0p,此时迭代式为
,2,1,0),(6.016.01111kxxxxex
kkkkx
kk
计算结果如下: k kx kx k kx k
x
0 0.5 3 0.567 149 8 0.567 143 1 1 0.606 530 7 0.566 581 7 4 0.567 143 4 0.567 143 3 2 0.567 461 9 0.567 131 8
此时已满足53410xx,做5671433.0*4xx。 (3)用埃特金方法来做。此时迭代式为
,2,1,0,2)()(),(121111kxcccccxccxc
kkkkkkk
kkkk
计算结果如下: k kC 1kC k
x
0 0.5 1 0.6065307 0.5452392 0.5676239 2 0.5668708 0.5672979 0.5671433 3 0.5671433 0.5671433
此时不能再算了,因已达到精度要求,故取5671433.0*2xx即可 3
例4-4 当R取适当值时,曲线2xy与222)8(Rxy相切,试用迭代法求切点横坐标的近似值,要求不少于4位有效数字,也不求R。 分析 两曲线相切,在切点处曲线函数值相等,导数值相等,根据这些条件可列出切点横坐标应满足的关系式,然后用迭代法求解。
解答 2xy的导数为222)8(;2Rxyxy的导数y满足
0)8(22xyy,故由两曲线相切的条件,可得
0)8(242xxx 即 0823xx 令82)(3xxxf,则0)2(,0)1(ff,因此0)(xf在(1,2)内有根。又在(1,2)内016)(2xxf仅有一个根,构造迭代格式 2,1,0,]2/)8[(3/11kxxkk
取 5.1)21(210x,计算结果如下: 482563.1,482671.1,481248.1,5.13210xxxx 由于3231021000108.0xx,故取483.1*3xx,即可保证有4位有效数字。即两曲线切点的横坐标为1.438. 例4-5 分别用单点弦割法和双点弦割法求020102)(23xxxxf的根,要
求6110kkxx。 解答 因010341643)(2acxxf,故)(xf没有极值点。由于012)2(,70)1(ff,因此0)(xf在(1,2)内仅有一根。
(1)用单点弦割法,迭代公式为 ,2,1),()()(001kxfxfxfxxxxkkkkk
取2,110xx,计算结果如下: k kx k k
x
0 1 5 1.368808644 1 2 6 1.368808049 4
2 1.368421053 7 1.368808115 3 1.368851263 8 1.368808107 4 1.368803298
此时,已满足精度要求,故取368808107.1*8xx即可 (2)若采用双点弦割法,迭代公式为 ,2,1),()()(111kxfxfxfxxxxkkkkkkk
仍取2,110xx,则有 k kx k k
x
0 1 3 1.368850469 1 2 4 1.368808104 2 1.368421053 5 1.368808108
取368808108.1*5xx,可保证64510xx。 注记 本题方程为Leonardo方程。Leonardo于1225年研究了该方程,并得到了368808107.1*x的结果,这在当时是非常重要的结果,但无人知道他是用何法而得。这
时000000009.0*)(xf。 例4-6 用牛顿法求解Leonardo方程 02010223xxx
要求 6110kkxx。 解答 由上题知,0)(xf在(1,2)内有一个根,且0)2(,0)(fxf,故应取20x,利用牛顿迭代公式
,2,1,0),(/)(1kxfxfxxkkkk
计算结果如下:
k kx k k
x
0 1 3 1.368869419 1 1.6 4 1.368808109 2 1.383388704 5 1.368808108
684510101.0xx
,故取368808108.1*5xx。
注记 由上两题知,要达到同样的精度,牛顿法的迭代次数不一定比弦割法少,尽管牛顿法是平方收敛的。究竟二者谁的迭代次数少,要视问题而定。另外就整体计算时间而言, 5
当牛顿法中)(kxf的计算量超过)(kxf的计算量的44%时,双点弦割法的总计算时间较牛顿法的少,见参考文献7. 例4-10 能不能用迭代法求解下列方程,如果不能时,试将方程改写成能用迭代法求解的形式。
(1)4/)sin(cosxxx; (2)xx24。
分析 判断方程)(xx能否用迭代法求根,最关键的是)(x在根的附近能否满足1)(Ix。因此可用该条件来判断。
解答 (1)4/)sin(cos)(xxx,对所有的x,有 121424/)cossin()(xxx 故能用迭代法求根。 (2)方程为024xx。设xxxf24)(,则0)2(,0)1(ff,故有根区
间为[1,2],题中138629.12ln22ln2)(,24)(xxxx,故不能用kxkx241来迭代。
把原方程改写为2ln/)4ln(xx,此时,2ln)4ln()(xx,
12ln212ln12412ln141)(xx,故可用迭代公式
2ln/)4ln(1kkxx
来求解。
例4-11为求方程0123xx在5.10x附近的一个根,设将方程改写为下列等价形式,并建立相应的迭代公式:
(1)211xx,迭代公式 2111kkxx
(2)231xx,迭代公式 3/121)1(kkxx (3)112xx,迭代公式 2/11)1/(1kkxx 试分析每种迭代公式的收敛性,并取一种公式求出具有4位有效数字的近似根。 解答 取5.10x的邻域[1.3,1.6]来考察。
(1)1901.03.1/2/2)(,/11)(332xxxx,故迭代公式(1)收敛。