⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jacobi iteration.m

📁 线性方程组的数值解法
💻 M
字号:
function jacobi_iteration(A,B)
%jacobi_iteration(A,B)
error(nargchk(2,2,nargin))
n=max(size(A));   %get dimention of A
for i=1:n
    if A(i,i)==0
        '对角元素不能为零'
        return
    end
end
format long
e = input('输入终止差值: ');
if isempty(e)
   fprintf('您没有输入值');
   return
end
X=zeros(n,1);%set origin radix
k=0;   %prefabricate degree of iterating

kmax = input('输入最大迭代次数: ');
if isempty(kmax)
   kmax=50;  %max degree of iterating
end

r=1;  %前后项差值的无穷范数
while k<=kmax&r>e    %set end condition of iterativing
    X0=X;
    for i=1:n
        X(i)=0;
        for j=1:n
            X(i)=X(i)+A(i,j)*X0(j);
        end
       
        X(i)=X0(i)+(B(i)-X(i))/A(i,i);
    end
    r=norm(X-X0,inf);
    k=k+1;
end
if k>kmax
    'can not constringe it'
else
    'constringetion  succeed'
    X
    k
end

⌨️ 快捷键说明

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