?? 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 + -