[原创]介绍一种求多元方程组的方法:-)
%简单的GAUSS消去法%a为系数方阵,b为右端向量
function x = gauss(a,b)
= size(b);
if size(a) ==
for i = 1 : (n - 1)
if a(i,i) == 0 error('Divide by zero');end
b((i + 1):n,:) = b((i + 1):n,:) - a((i + 1):n,i)*b(i,:)/a(i,i);
a((i + 1):n,i:n) = a((i + 1):n,i:n) - ...
a((i + 1):n,i)*a(i,i:n)/a(i,i);
end
if a(n,n) == 0,error('Divide by zero');end
x(n,:) = b(n,:)/a(n,n);
for i = n-1:-1:1
x(i,:) = b(i,:) - a(i,(i + 1):n)*x((i + 1):n,:)/a(i,i);
end
else,error('Divede of matrix must agree');
end
%请大家赐教其他的好方法
页:
[1]