因此原方程的解为xJ丈1=0.090525
迭代法收敛速度由定理I的⑺式出,乙或I0O)|在[%]上越小,迭代法收敛就越快
(9)
若存在实数^n1和c>0满足lim£^LL—Q
2°°課"i
则称迭代法P阶收敛,当p=1时称为线性收敛丿>1时
称为超线性收敛,p=2时称为平方收敛
显然'p越尢收敛速度也就越快
那么,如何确定P,从而确定收敛阶呢?
如果迭代函数0(工)在精确解X*处充分光滑,即处处可导
将0(对在兀*作Taylor^开,有
0(兀)=0(巧+0(巧(兀-x*)_巧2+...
如果0(兀*)=0'(疋)=…=^>(;?
_1)(X*)=0而nxo
0(X)=0(才9+-—(x-x*)77+•••
P!
,伙Too)
即迭代法无+1=0(无)的收敛阶是卩
定理3•如果迭代法迭代函数0⑴在根x*附近满足:
(1)©⑴存在p阶导数切连续;
(2)0(巧=0〃(巧=•••=037(屮)=0,
而(p{p\x^乂0
则迭代法忑+i=©(忑)的收敛阶是p
用迭代法求解方程2x3-x-l=0
解:
本题迭代函数有两种构造形式
⑴x=2x3—l=(pY(x),迭代法发散.
X=q兀;'=02(兀/可验调0‘2(X)|<1,Xe[0,1]
迭代法收敛.
1.Newton迭代公式建立
将f(x)在点Xn作Taylor展开:
f"(X)
/(x)=/(xJ+/7xJ(x-xJ+^^(x-xh)2+..
/(x)«/(XH)+/,(XM)(X-XH)——Taylor展开线性化fM=o近似于faj+fajgxAo
(1)
从⑴解出X,记为Xn+1,贝!
|
(n=0,1,...)
(2)
广(对显然是f(x)=O的同解方程,故其迭代函数为
cp(x)=X—
广(切
“)(广心0)
在躯尸)的根x*的某个邻域朋兀一⑷<(兀)在X才的邻域R内,对任意初值兀0,应用公式
(2)来解方程的方法就称为牛顿迭代法。
它是解代数方程和超越方程的有效方法之
2.Newton迭代法的几何意义
用于㈢在&处的切线
y=f(Xn)+f'(Xn)(X~Xn)
与X轴(y=0)的交点X,作为下一个迭代点召+1,
Newton迭代法又称切线法.
4.Newton迭代法收敛定理
定理设后*)二0,/6*)工0,且在X的邻域
±『存在,连续,则可得
(1)Newton迭代公式在单根情况下至少2阶收敛;
证:
将/⑴在占处作2阶Taylor展开拼将解涉代入
Q=f(x^)=f(xn)+ff(xn)(兀*-旺巴"(兀*-兀畀)2
注意到J在占及兀*之间,及Hmxn=x^,故
11H—>00
注意到J在及疋之间,及lim^n,故
H—>00
畑-打
f"(^„)
->
r(x)
,2一
2广(g
2广(门
=r>o(二阶收敛)若厂(兀升0
[=0(大于二阶收敛)若/"(X)=0
所以,Newton法至少二阶收敛.L—(^+1-/)_f"(x*)
例3.设兀*是方程/(兀)=0的加(>2)重根,证明迭代法
证明:
因为八是方程/(兀)=0的加重根,故
f(x)=(x-x*)wg(x)且g(〃)^0zm>2
所以广⑴=加(X7*)"jg(x)+(x-X*)"'g'(x)
__fM_=x氏一x*)"g(xQ
Xk+1~Xk广(耳)k加(耳7*)"5(耳)+(“7*)"'g'(“)
=x(母一x*)g(®)
k吨(“)+(“-Og'(“)
1
m>2时」>0"定乂1
m
该迭代法对m(>2)重根是线性收敛的
例4.设/⑷=0,且广(°)丰0,证明迭代法
嫌+17-召诧至少是平方收敛的
fM
注意例4与例3的迭代法是相同的,两例有何区别?
证明:
令
则0(兀)=
'[广[广(0『
所以0⑷
由定理2该迭代法至少是平方收敛的
1'【纠t皿迭代法前特征
•Newton迭代公式是一种特殊的不动点迭代,其迭代矩阵为:
(p(x)=X-
广⑴
•Newton迭代是局部线性化方法,它在单根附近具有较高的收敛速度.
•方法有效前提:
/(忑)H°
5・Newton迭代法的应用开方公式
对于给定正数c应用牛顿迭代法解二次方程
兀2_c—0
可导出求开方值坨的计算公式
1(C)
忑+1=卞兀+—
设Xk是忑的某个近似值,则c/耳自然也是一个近似值,上式表明,它们两者的算术平均值将是更好的近似值。
定理开方公式对于任意给定的初值观>0均为平方收敛。
牛顿迭代法的优缺点
优点:
在单根附近,牛顿迭代法具有平方收敛的速度,所以在迭代过程中只要迭代几次就会得到很精
确解。
计算函数值外还要计算微商值;
3•选定的初值要接近方程的解,否则有可能得
不到收敛的结果;
牛顿迭代法的改进
缺点克服:
1.局部线性收敛……改进公式或加速
或弦截法
3•初值近似问题——二分法求初值或”下山算法”
方法一•若已知重数m(m>1),则利用m构造新的迭代公式:
此时,©(%)=%—加诜寺0(%)=°,至少2阶收敛.不实用:
m往往不确定.
方法二取F(x)=,再对函数F(x)用Newton迭代/W
FM=xMZfgFg—k[/(xj]2-/(xj/\xj
此时,X*为F(x)的单根,所以是2阶收敛.但要用到二阶导数.
6.Newton法的改进(II)
广(耳)
Newton迭代法
需要求每个迭代点处的导数/也)
复杂!
用%。
近似替代广(忑)中的无,得
/(忑)广(兀。
)
这种格式称为简化Newton迭代法
精度稍低
如果用数值导数代替/U)
/(忑)—了(耳1)
xk~xk-l
则Newton迭代法变为
fg
fg—fgJ
这种格式称为弦截法
收敛阶约为1・61
例4用简化Newton法和弦截法解下面方程的根,并和
g迭代法比较亠3兀+1=0
Ml
蹑(k)=x3-3x+lf\x)=3x2-3
由简化Newton法
V_V—/(忑)_¥Xk-3忑+1k+1~k玩h
由弦截法x_x
AZr+l—入k
/(")
由Newton迭代法忑+i=忑—广(工)
x:
-3兀£+1
3x1-3
简化Newton法迭代11次
弦截法迭代5次
简化Newton法
Xq=0.5
Xj=0.3333333333x2=0.3497942387兀3=0.3468683325x4=0.3473702799x5=0.3472836048x6=0.3472985550x7=0.3472959759心二0.3472964208x9=0.3472963440勺0=0.3472963572Xjj=0.3472963553
由弦截法
兀0=0.5;勺=0.4;
兀2=0.3430962343兀3=0.3473897274x4=0.3472965093兀5=0.3472963553兀°=0.3472963553
要达到精度
由Newton迭代法
x0=0.5;
Xj=0.3333333333x2=0.3472222222£=0.3472963532与=0.3472963553
,迭代法的局部收敛性
无论哪种迭代法:
Newton迭代法简化Newton法弦截法
是否收敛均与初值的位置有关.
例:
f(x)=arctan(x)=0,精确解x*=0
用Newton迭代法求解:
S+i=xk-arctan-(1+^)
6.Newton法的改进(III):
牛顿下山法
一般地说,牛顿法的收敛性依赖于初值入的选取,如果
*
兀0偏离兀较远,则牛顿法可能发散。
为了防止发散,通常对迭代过程再附加一项要求,即保证
函数值单调下降:
|/(耳+1)|<|/(")|
满足这项要求的算法称为下山法。
牛顿下山法采用以下迭代公式:
其中0v251称为下山因子。
111
几的选取方式按A=的顺序
直到〃(檢+)<1/仇)i成立为止
牛顿下山法只有线性收敛.
例7・求解方程几兀)=二-兀=0,取初值兀o=-0.99丨£一®"$1°一5
解:
1•先用Newton迭代法广(兀)=x1-1
2•用Newton下山法,结果如下
k
k=0
下山因子
Xk
xO=-0.99
fM
fxO=0.666567
k=
1
xl=32.505829
f(x)=11416.4
w=0.5
xl=15.757915
f(x)=1288.5
w=0.25
xl=7.383958
f(x)=126.8
w=0.125
xl=3.196979
f(x)=7.69
w=0.0625
xl=1.103489
f(x)=-0.655
k=
2
x2=4.115071
f(x)=19.1
w=0.5
x2=2.60928
f(x)=3.31
w=0.25
x2=1.85638
f(x)=0.27
k=
3
x3=1.74352
f(x)=0.023
k=
4
x4=1.73216
f(x)=0.00024
k=
5
x5=1.73205
f(x)=0.00000
k=
6
x6=1.73205
f(x)=0.000000
2・/(兀)=0在区间[%]有重根
/(x)=0在区间⑷b]有加重根>2
因此可令/(兀)=(兀一疋)"g(Q且g(x*)H0
故有/(X*)=广(於)=fg=(疋)=0
且/("')(h)H0
对于Newton迭代法斥+i=忑一;;;{趋于零
此时Newton迭代法可能不收敛
即使广(耳)h0,Newton迭代法也只是线性收敛
由,迭代法Xk+1
至少是二阶收敛
/(忑)
/U)
NumericalValueAnalysis
第6章方程与方程组的迭代解法
Steffensen方法
简单迭代公式的加速
一次得
设乂左是根乂的某个近似值,用迭代公式校正
假设0(瓦+1)=g,贝U有
迭代:
九+1=0(林)
改进:
r-1y__r_7亠丄心_丫)
Ak+l—:
和+11人k—和+1十:
VA^+1入k丿
1-q1-q1-q
简单迭代法的加速方案:
九+1=0X)
+吕一(£?
+1一®)i_q
迭代次数大大减少,总的计算工作量减少,但涉及导数值的计算不便于实际应用。
简单迭代法加速方案的改进:
4〃辰卅加速方案:
<
Xk=Xk+2
(檢+2一忑+1尸耳+2-2耳+1+Xk(®+1一x$Xk+2-2忑+1+Xk
避免了导数值的计算,但需要用两次迭代值进行计算。
定理
设序列{耳}线性收敛于X*,
\/k>0,ek=x-xkH0,且
lim=c(o<|(?
|<1)ks乞
则{耳}的Aitken序列{耳}存在,且
即印比
*一
lim^_Z^L=0
ksX-Xk
快收敛于Xt
Xk
证明:
首先
lim£^±2ks£*
其次
*—
X—Xk
-==c2
kSQQ
9+1匕k
兀+2—2兀+1+兀
=Ck—(勺+1一勺)2
kek+2一2乞+1+ek
*_(加-1)2
所以
X—Xk二]
X—Xkek+2_2ek+[_|_|ks
Steffensen迭代
在Aitken加速法中,只要有三个相邻的点就可以进行家速,即对任意线性收敛序列{忑}构建的•现将其与不动点迭代无+i=申(林)方法结合起来:
迭代函数0(兀)迭代初始值兀°迭代序列{xk}
族=0(儿)
Steffensen迭代<
£=0丄•…
或写成不动点迭代形式无+严0(无),即
(0(耳)一耳)2
0[0(耳)]-20(耳)+耳
k二0丄•…