SOR迭代法解线性方程组

2019-07-17 10:28:05 浏览数 (3)

SOR迭代是在Gauss-Seidel迭代方法基础之上的进一步改进。其特征是取xk 1和xk的一个适当的加权平均来加快Gauss-Seidel收敛。对于方程组

Gauss-Seidel迭代格式为

而SOR迭代则是:

显然,参数ω=1时就是Gauss-Seidel迭代。而参数ω>1时称为逐次超松弛(Successive Over-Relaxation,SOR)迭代,ω<1时称为逐次低松弛(Successive Under-Relaxation)迭代。

·数值算例

对于下列的稀疏方程组,其精确解是X=[1,1,...,1]。

1)当n=200时,分别用Jacobi,Gauss-Seidel以及SOR

(ω=1.5和ω=1.2),比较三种方法收敛所需的迭代步数。

2)当n=1000时,分别取ω=1.2,1.3,1.6时SOR收敛所需的迭代步数

合理选择参数ω决定了SOR比Gauss-Seidel更快收敛。如果参数选择不当,SOR反而比Gauss-Seidel更慢。参数ω=1时就是Gauss-Seidel迭代。而参数ω>1时称为逐次超松弛(Successive Over-Relaxation,SOR)迭代,ω<1时称为逐次低松弛(Successive Under-Relaxation)迭代。

SOR方法Fortran程序

0 人点赞