?? gaosisaideer.m
字號:
function [x, k, index]=gaosisaideer(A, b, ep, it_max)
% 求解線性方程組的Gauss-Seidel迭代法,其中
% A --- 方程組的系數矩陣
% b --- 方程組的右端項
% ep --- 精度要求。省缺為1e-5
% it_max --- 最大迭代次數,省缺為100
% x --- 方程組的解
% k --- 迭代次數
% index --- index=1表示迭代收斂到指定要求;
% index=0表示迭代失敗
if nargin <4 it_max=100; end
if nargin <3 ep=1e-5; end
n=length(A); k=0;
x=zeros(n,1); y=zeros(n,1); index=1;
while 1
y=x;
for i=1:n
z=b(i);
for j=1:n
if j~=i
z=z-A(i,j)*x(j);
end
end
if abs(A(i,i))<1e-10 | k==it_max
index=0; return;
end
z=z/A(i,i); x(i)=z;
end
if norm(y-x,inf)<ep
break;
end
k=k+1;
end
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -