jor.m

来自「Matlab语言常用算法程序集.rar 里面有很多有用的Matlab数值运」· M 代码 · 共 29 行

M
29
字号
function [x,n]=JOR(A,b,x0,w,eps,M)
if nargin==4
    eps= 1.0e-6;
    M  = 10000;
elseif nargin ==5
    M  = 10000;
end  
if(w<=0 || w>=2)     %收敛条件要求
    error;
    return;
end
D=diag(diag(A));    %求A的对角矩阵
B=w*inv(D);
%迭代过程
x=x0;
n=0;                                      %迭代次数
tol=1;
%迭代过程
while tol>=eps
    x=x0-B*(A*x0-b);
    n  = n+1;
    tol = norm(x-x0);
    x0 = x;
    if(n>=M)
        disp('Warning: 迭代次数太多,可能不收敛!');
        return;
    end
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?