计算方法第4章方程组迭代法.ppt
文本预览下载声明
第四章 线性方程组的迭代法 §4.1 三种基本的迭代法 4.1.1.雅克比(Jacobi)迭代法 (以三阶方程 组为例) 假设 对于n阶方程组 若用矩阵来表示雅可比迭代,则如下: 令A=D-L-U,其中 A x=b, ( D – L – U) x = bDx = (L+U) x+b 迭代 Dx(m+1)=(L+U)x(m) + b,若 则D可逆,于是得 4.1.2 高斯—赛德尔迭代法 (Gauss-Seidel) 对雅可比迭代法作如下的改进:将初值 代入4.1的第一个方程可得 ,用 代 入第二个方程得 ,用 代入第三 个方程得 , 这样一直做下去,直到得到满意的 解为止. 例1(p90):分别Jacob及G-S迭代法解下列线性方程组。初值均取(0,0,0)T 解: 用matlab解,程序如下 4.1.3 超松弛迭代法 假设 是第m次迭代, 是用G-S法得 到的第m+1次迭代,那么第m+1次迭代取为: 用D左乘之,得: 写成分量式的计算公式为: 此方法称为带有 松弛因子ω的松弛迭代法. 当ω1时称为超松弛迭代法 (SOR法) ; 当ω1时称为低松弛迭代法; 当ω=1时就是G-S迭代法. 例2(p95):用SOR法求解方程 Matlab的关于三种迭代法的通用程序 1.雅可比迭代法的通用程序 2.高斯_塞德尔迭代法的通用程序 %G_S法解方程组的通用程序 %A为线性方程组,X为初值 function [x,k]=ya4(A,X) n=length(A); a=A(:,1:n-1); bo=A(:,n);N=size(X); if N(1)N(2) xo=X; else xo=X end D=-(a-triu(a)-tril(a)); L=-(tril(a)-D); U=-(triu(a)-D); ep=0.0001;dx=1;k=0; while dxep k=k+1; x=(D-L)\U*xo+(D-L)\bo; dx=norm(x-xo); xo=x; end 3. SOR法解线性方程组的通用程序 %SOR法解方程组的通用程序 %A为线性方程组,X为初值 % omiga为松弛因子 function [x,k]=ya3(A,X,omiga) n=length(A); a=A(:,1:n-1);bo=A(:,n);N=size(X); if N(1)N(2) xo=X; else xo=X end D=-(a-triu(a)-tril(a)); L=-(tril(a)-D); U=-(triu(a)-D); ep=0.0001;dx=1;k=0; while dxep k=k+1; x=(D-omiga*L)\(omiga*U+(1-omiga)*D)*xo+(D-omiga*L)\bo*omiga; dx=norm(x-xo); xo=x; end 4.2 迭代法的收敛条件 前面介绍了三种常用迭代法. 它们可能收敛,也可能发散。 4.2.1 迭代法收敛的概念 定义4.2 设x*是方程组Ax=b的解,对于给定 的初始向量x(0) ,若由某种迭代法产生的向 量序列{x(n)}有 引理1 证: 4.2.2 迭代法收敛的判定定理 定理4.1 设 先证 若 由于E-B是非奇异的,所以方程组 (E-B)X=f的解存在且唯一.设为X*,即 X*=BX*+f,进而有 由于0q1,所以 于是有 定义4.3 如果方阵A满足 定理4.2 若Ax=b的系数矩阵A按行(列)严格对角占优,则Jacobi迭代及G-S迭代都收敛. 以上两个定理都是收敛的充分条件. 定理4.3 对于任意的初始向量 写出一定收敛的Jacobi迭代格式。 由BJ的特征多项式 得特征值为:?1=2,?2=-2 其系数矩阵是严格对角占优的,所以用雅可 比迭代法求解收敛.其迭代格式为: 定理4.4 设方程组Ax=b的系数矩阵A为实 对称正定矩阵,且0?2,则松驰迭代法收敛. 例5 (p105) :讨论例2 (p95)中的方程组用 SOR方法求解的收敛性. 首先A是对称矩阵,再由 小结 雅可比迭代矩阵: 所以雅可比迭代是收敛的. 行范数: 2. G-S迭代格式为: G-S迭代矩阵 行范数: 所以G-S迭代也是收敛的. 取初始向量 用G-S迭代格式计算的结果: 此方程准确解为: 则称A按行严格对角占优.(类似地可定义按 列严格对角占优
显示全部