matlab数值分析程序--高等数学,数值代数的matlab实现-文字版, matlab电子书, 和matlab 有关的电子书:

4.4 解方程组的超松弛迭代法及其MATLAB程序

4.4  解方程组的超松弛迭代法及其MATLAB程序

超松弛迭代法是数值计算中解线性代数方程组的一类迭代法。当方程组的未知量个数甚多而又有大量的零系数时,常用这类方法求解。 
  基本迭代格式  设线性代数方程组为

松弛法 (1)

此处x1,x2,…,xn为未知量,αij(i,j=1,2,…,n)和ƒ1,ƒ2,…,ƒn为已知量,又设αii(i=1, 2,…,n)均不为零,则由迭代公式

松弛法 (2)

和给定的初值x松弛法,x松弛法,…,x松弛法,就可求出x松弛法,x松弛法,…,x松弛法,由后者又可求出x松弛法,x松弛法,…,x松弛法,如此继续直到满足精度要求为止,例如对所有的i,松弛法松弛法(若松弛法)或剩余

松弛法

的绝对值|松弛法|小于某给定的小数ε时就终止迭代而将松弛法取作方程组(1)的解。迭代格式(2)称为同时超松弛法或JOR法,其中的ω为一实参数,称为松弛因子,当ω=1时就是通常所谓的简单迭代法,或称雅可比法。 
  若在迭代格式(2)中,将第i个方程迭代出的松弛法的值代替其后各方程中的松弛法,就得到迭代格式

松弛法 (3)

它称为逐次超松弛法,或SOR法,一般所说的超松弛法就是指这种方法,当ω=1时称为高斯-赛德尔法或赛德尔法,有时将ω >1的情形称为超松弛法,而将ω <1的情形称为亚松弛法或低松弛法。迭代格式也可用矩阵形式来写,设

松弛法 (4)

为n阶方阵,松弛法,松弛法为n维列向量,则(1)可写为

松弛法  (5)

记A的对角线元素所成的对角矩阵为D,又B=D-A,则(2)可写为

松弛法 (6)

松弛法, (7)

再设L和U分别为B的下三角形和上三角形矩阵,则A=D-L-U,而(3)可写为

松弛法。 (8)

  收敛性  迭代格式(7)和(8)可统一地写为

松弛法 (9)

的形式,其中G称为迭代矩阵,对应于(7)和(8)分别有G=D -1【(1-ω)D+ωB】和G=(D-ωL)-1【(1-ω)D+ωU】。 以ρ(M)表示方阵M的谱半径,其定义为M的按模最大特征值的模,则迭代过程(9)收敛的充分必要条件为

ρ(G)<1。   

(10)由此可得收敛的一个充分条件为这里‖G‖是G的任意一

‖G‖<1 ,        (11)

种范数。


欢迎转载,转载请注明来自一手册:http://yishouce.com/book/3/3040400.html
友情链接It题库(ittiku.com)| 版权归yishouce.com所有| 友链等可联系 admin#yishouce.com|粤ICP备16001685号-1