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

📄 jacobi.m

📁 Jacobi
💻 M
字号:
%function [x,k,flag,er]=Jacobi(A,b,delta,max1)
%Jacobi迭代法
%A为方程组的系数矩阵
%b为方程组的右端项
%delta为精度要求,缺省值为1e-5
%max1为最大迭代次数,缺省值为100
%x为方程组的解
%k为迭代次数
%flag为指标变量 flag='OK'表示迭代收敛到指标要求
%              flag='fail'表示迭代失败 
clc;
clear;
for i=1:14
    A(1+i,i)=-1;
    A(i,1+i)=-1;
    A(i,i)=4;
end
A(15,15)=4;

b=[3,2,2,2,2,2,2,2,2,2,2,2,2,2,3];

delta=10^(-6);

max1=19;

n=length(A);
k=0;
x=zeros(n,1);
y=zeros(n,1);
flag='OK!';
while 1
    for i=1:n
        y(i)=b(i);
        for j=1:n
            if j~=i
                y(i)=y(i)-A(i,j)*x(j);
            end
        end
%         if abs(A(i,j))<1e-10|k==max1
%             flag='Fail';
%             return;
%         end
        y(i)=y(i)/A(i,i);
    end
    if norm(y-x,inf)<delta | k==max1
        break;
    end
    x=y;
    k=k+1;
end

⌨️ 快捷键说明

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