逐次逼近法
1.Jacobi迭代法:
A = D − L − U A=D-L-U A=D−L−U
D x = ( L + U ) x + b Dx=(L+U)x+b Dx=(L+U)x+b
x = D − 1 ( L + U ) x + D − 1 b x=D^{-1}(L+U)x+D^{-1}b x=D−1(L+U)x+D−1b
B J = D − 1 ( L + U ) , f = D − 1 b B_J=D^{-1}(L+U),f=D^{-1}b BJ=D−1(L+U),f=D−1b
x = B J x + f x=B_J x+f x=BJx+f
2.Gauss-Seidel迭代法:
B G = ( D − L ) − 1 U , f G = ( D − L ) − 1 b B_G~=(D-L)^{-1}U,f_G=(D-L)^{-1}b BG =(D−L)−1U,fG=(D−L)−1b
x ( k + 1 ) = B G x ( k ) + f G , ( k = 0 , 1 , . . . ) x^{(k+1)}=B_G x^{(k)}+f_G ,(k=0,1,...) x(k+1)=BGx(k)+fG,(k=0,1,...)
**定理4.1 **
定理4.2 迭代法 x ( k + 1 ) = B x ( k ) + f x^{(k+1)}=Bx^{(k)}+f x(k+1)=Bx(k)+f
x和B均收敛的充要条件是 ρ ( B ) < 1 ρ(B)<1 ρ(B)<1
定理4.3(充分条件)若||B||<1,则迭代法 x ( k + 1 ) = B x ( k ) + f x^{(k+1)}=Bx^{(k)}+f x(k+1)=Bx(k)+f收敛。
1.Jacobi迭代法收敛:
B J = D − 1 ( L + U ) B_J=D^{-1}(L+U) BJ=D−1(L+U)
d e t ( λ I − B J ) = 0 det(λI-B_J)=0 det(λI−BJ)=0
得出 ρ ( B ) ρ(B) ρ(B)并判断是否>1
2.Gauss-Seidel迭代法收敛:
B G = ( D − L ) − 1 U B_G=(D-L)^{-1}U BG=(D−L)−1U
d e t ( λ I − B G ) = 0 det(λI-B_G)=0 det(λI−BG)=0
d e t ( λ ( D − L ) − U ) = 0 det(λ(D-L)-U)=0 det(λ(D−L)−U)=0
定义4.1 对角占优,严格对角占优
定理4.4 若Ax=b中A为严格对角占优阵,则Jacobi和Gauss-Seidel法均收敛。
x k + 1 = φ ( x k ) x_{k+1}=φ(x_k) xk+1=φ(xk)
φ ( x ) φ(x) φ(x)为迭代函数, x k x_k xk为第k步的迭代值。
k趋于无穷时, x k x_k xk趋于 α α α,则称迭代法收敛,否则迭代法收敛。
定理4.5 函数 φ ( x ) φ(x) φ(x)满足
(1)当x属于【a,b】时, a ≤ φ ( x ) ≤ b a≤φ(x)≤b a≤φ(x)≤b
(2)存在整数 0 < L < 1 0
则在【a,b】上存在唯一根 α α α,且对任意初始值x0属于【a,b】,迭代法
x k + 1 = φ ( x k ) x_{k+1}=φ(x_k) xk+1=φ(xk)
收敛于 α α α,且
∣ x k − α ∣ ≤ L 1 − L ∣ x k − x k − 1 ∣ |x_{k}-α|≤\frac{L}{1-L}|x_{k}-x_{k-1}| ∣xk−α∣≤1−LL∣xk−xk−1∣
∣ x k − α ∣ ≤ L k 1 − L ∣ x 1 − x 0 ∣ |x_{k}-α|≤\frac{L^k}{1-L}|x_{1}-x_{0}| ∣xk−α∣≤1−LLk∣x1−x0∣
局部收敛:
∣ φ ′ ( x ) ∣ < 1 |φ^{'}(x)|<1 ∣φ′(x)∣<1
x k = φ ( x k − 1 ) x_{k}=φ(x_{k-1}) xk=φ(xk−1)收敛于 α α α,,即f(α)=0
定义4.2 p≥1,c>0,k趋于无穷时
l i m ∣ e k + 1 ∣ ∣ e k ∣ = c lim\frac{|e_{k+1}|}{|e_{k}|}=c lim∣ek∣∣ek+1∣=c
迭代法p阶收敛,当p=1时,称为线性收敛,p>1时称为超线性收敛,当p=2时称为平方收敛。
p越大,迭代法的收敛速度也越快。
定理4.6 如果 x = φ ( x ) x=φ(x) x=φ(x)的迭代函数 φ ( x ) φ(x) φ(x)在根 α α α附近满足:
(1) φ ( x ) φ(x) φ(x)存在p阶导函数且连续;
(2) φ ′ ( α ) = φ ′ ′ ( α ) = . . . = φ p − 1 ( α ) = 0 , φ p ( α ) ≠ 0 φ'(α)=φ''(α)=...=φ^{p-1}(α)=0,φ^{p}(α)≠0 φ′(α)=φ′′(α)=...=φp−1(α)=0,φp(α)=0,则迭代法 x k + 1 = φ ( x k ) x_{k+1}=φ(x_{k}) xk+1=φ(xk)为p阶收敛。
定理4.7 设方程 f ( x ) = 0 f(x)=0 f(x)=0的根为 α α α,且 f ′ ( x ) ≠ 0 f'(x)≠0 f′(x)=0,则迭代法
x k + 1 = x k − f ( x k ) f ′ ( x k ) ( k = 0 , 1 , 2 , . . . ) x_{k+1}=x_{k}-\frac{f(x_k)}{f'(x_k)}(k=0,1,2,...) xk+1=xk−f′(xk)f(xk)(k=0,1,2,...)
至少是平方收敛的,并称该表达式为Newton迭代法(也称切线法)。
由于Newton迭代法带有导数,使用不方便,可用导数的近似值代替导数。
f ′ ( x k ) ≈ f ( x k ) − f ( x k − 1 ) x k − x k − 1 f'(x_k)≈\frac{ f(x_{k})-f(x_{k-1}) }{x_{k}-x_{k-1} } f′(xk)≈xk−xk−1f(xk)−f(xk−1)
x k + 1 = x k − f ( x k ) f ( x k ) − f ( x k − 1 ) ( x k − x k − 1 ) x_{k+1}=x_{k}-\frac{f(x_k)}{f(x_{k})-f(x_{k-1})}(x_{k}-x_{k-1}) xk+1=xk−f(xk)−f(xk−1)f(xk)(xk−xk−1)该式为弦截法,弦截法的收敛阶为 p = ( 1 + 5 ) / 2 = 1.618 p=(1+\sqrt[]{5})/2=1.618 p=(1+5)/2=1.618,低于Newton法,为超线性收敛。
弦截法在几何上是一种以直代曲的近似方法。
初始值的选取与Newton法的收敛很有关系,使用时必须充分注意。
使用Newton法时,为了防止迭代发散,附件一个条件:
∣ f ( x k + 1 ) ∣ < ∣ f ( x k ) ∣ |f(x_{k+1})|<|f(x_{k})| ∣f(xk+1)∣<∣f(xk)∣
x k + 1 = x k − λ f ( x k ) f ′ ( x k ) ( 0 < λ ≤ 1 ) x_{k+1}=x_{k}-λ\frac{f(x_k)}{f'(x_k)}(0<λ≤1) xk+1=xk−λf′(xk)f(xk)(0<λ≤1),λ为下山因子,该迭代法为Newton下山法。
一、【a,b】是f(x)=0仅有单根的多根区间
(1)求单根区间
(2)在单根区间【c,d】求根
x 0 = ( 0 , 0 , 0 ) T x_0=(0,0,0)^T x0=(0,0,0)T
r 0 = b − A x 0 = p 0 r_0=b-Ax_0=p_0 r0=b−Ax0=p0
α 0 = ( r 0 , r 0 ) ( p 0 , A p 0 ) α_0=\frac{(r_0,r_0)}{(p_0,Ap_0)} α0=(p0,Ap0)(r0,r0)
x 1 = x 0 + α 0 p 0 x_1=x_0+α_0p_0 x1=x0+α0p0
r 1 = r 0 − α 0 A p 0 r_1=r_0-α_0Ap_0 r1=r0−α0Ap0
β 0 = ( r 1 , r 1 ) ( r 0 , r 0 ) β_0=\frac{(r_1,r_1)}{(r_0,r_0)} β0=(r0,r0)(r1,r1)
p 1 = r 1 + ( β 0 , β 0 , β 0 ) T p_1=r_1+(β_0,β_0,β_0)^T p1=r1+(β0,β0,β0)T
α 1 = ( r 1 , r 1 ) ( p 1 , A p 1 ) α_1=\frac{(r_1,r_1)}{(p_1,Ap_1)} α1=(p1,Ap1)(r1,r1)
x 2 = x 1 + α 1 p 1 x_2=x_1+α_1p_1 x2=x1+α1p1
r 2 = r 1 − α 1 A p 1 = ( 0 , 0 , 0 ) T r_2=r_1-α_1Ap_1=(0,0,0)^T r2=r1−α1Ap1=(0,0,0)T
方程组的解为 x 2 x_2 x2