X(K) = (X1(K),…,XI(K),…XN(K))T,[03]
由雅克比迭代公式有Dx(k+1) = (L+U)x(k)+b,
或 aiixi(k+1) = -∑_(j=1)^(i-1)▒a_ij x_j^((k)) - ∑_(j=i+1)^n▒〖a_ij x_j^((k)) 〗+bi, I=1,2,3,…,n.
于是,解Ax = b的雅克比迭代式的计算方法为
x(0) = (x1(0),x2(0),…,xn(0))T,
xi(k+1) = (bi-∑_(j=1,j≠i)^n▒〖a_ij x_j^((k)) 〗)/aii,
I = 1,2,…,n;k=0,1,…表示迭代次数。
由上式可知,雅克比迭代式计算公式简单,每迭代一次只需计算一次矩阵和向量的乘法且计算过程中原始矩阵A始终不变。
1.2 GS迭代法
选取分裂矩阵M为A的下三角部分,[02]即选取M = D – L(下三角矩阵),A = M-N,于是由
X(0) (初始向量)
X(K+1) =BX(K) + F,K = 0,1,…,
其中B = I-(D-L)-1A=(D-L)-1U≡G,f=(D-L)-1b。称G = (D-L)-1U为解Ax = b的高斯-赛德尔迭代法的迭代矩阵.
下面给出GS迭代法的分量计算公式。记
X(k) =(x1(k),…xi (k),…xn(k))T.
由上式有
(D-L)x(k+1)= Ux(k)+b,
或
Dx(k+1)= Lx(k+1)+Ux(k)+b,
即
a_ii x_i (k+1)= bi-∑_(j=1)^(i-1)▒〖a_ij x_j^((k+1)) 〗-∑_(j=i+1)^n▒〖a_ij x_j^((k)),〗 I = 1,2,…,n
于是解Ax=b的高斯-赛德尔迭代法计算公式为[05]
X(0)=(x1(0),…,xn(0))T,
Xi(k+1)=(bi-∑_(j=1)^(i-1)▒〖a_ij x_j^((k+1))-∑_(j=i+1)^n▒〖a_ij x_j^((k)) 〗〗)/aii,
i = 1,2,…,n;k = 0,1,…
或
X(0) = (x1(0),…,xn(0))T,
Xi(k+1)= xi(k)+∆x_i,
∆x_i=(bi-∑_(j=1)^(i-1)▒〖a_ij x_j^((k+1))-∑_(j=i+1)^n▒〖a_ij x_j^((k)) 〗〗)/aii,
i = 1,2,…,n;k = 0,1,…
解线性方程组
高斯-赛德尔迭代公式:取x(0)=(0,0,0)T.
X1(k+1)= (20+3x2(k)-2x3(k))/8,
X2(k+1)= (33-4x1(k+1)+x3(k))/11, k=0,1,…
X3(k+1)= (36-6x1(k+1)-3x2(k+1))/12,
计算x(7)=(3.000002,1.999 988 7,0.999 993 2)T,且
||x*-x(7)︳︳∞< 2.02*10-6,
从上面的例子我们可以知道,Jacobi迭代法和GS迭代法在解线性方程组的时候都是收敛的,而且Jacobi迭代法没有GS迭代法收敛的快。
1.3 .SOR迭代法
超松弛迭代法(SOR方法)[08]
计算量的大小决定了迭代法的困难程度,在迭代过程中,有些是收敛的,但它的收敛速度却非常慢,从而会使计算过程变得非常的麻烦,因此,对于加速迭代过程很重要。
超松弛迭代法的基本思想
超松弛迭代法目的是为了提高迭代法的收敛速度,它是在GS迭代法的基础上进行的,与GS迭代法并没有太大的区别,只是对此做了一些简单的修改。这种方法是对GS迭代法的迭代值适当地进行加权平均,从而获得期望的结果,是解大型稀疏矩阵方程组的有效方法之一,有着广泛的应用。
解Ax=b的SOR方法为[12]
X(0) (初始向量)
X(K+1) =BX(K) + F,K = 0,1,…, (1)
其中L_ω=(D-ωL)-1((1-ω)D+ωU),f=ω(D-ωL)-1b。
下面是用SQR迭代法解Ax=b的分量计算公式。记
X(k) =(x1(k),…xi (k),…xn(k))T.
由(1)可知
(D-ωL) X(K+1)= ((1-ω)D+ωU) X(k)+ ωb,
或
D X(K+1)=DX(k)+ ω(b+LX(K+1)+UX(k)-DX(k)).
由此,得到解Ax=b的SQR方法的计算公式 迭代法收敛判定的应用举例(2):http://www.751com.cn/shuxue/lunwen_38759.html