在MATLAB中用求解高斯—塞德尔迭代法线性方程组

问题描述:

在MATLAB中用求解高斯—塞德尔迭代法线性方程组
1个回答 分类:综合 2014-11-30

问题解答:

我来补答
function x=Gauss_Seidel(A,b,x0,tol)
if (nargin==2)
x0=ones(size(b));
tol=1e-6;
elseif (nargin==3)
tol=1e-6;
else
sprintf('USAGE:Gauss_Seidel(A,b,x0,tol)')
end
D=diag(diag(A));
U=triu(A,1);
L=tril(A,-1);
G=-(D+L)\U;
d1=(D+L)\b;
x=G*x0+d1;
n=1;
while norm(x-x0)>=tol
x0=x;
x=G*x0+d1;
n=n+1;
end
n
 
 
展开全文阅读
剩余:2000
上一页:hfftbjhg