基于MATLAB的GS算法
时间: 2023-12-14 17:49:21 浏览: 59
GS算法(Gauss-Seidel algorithm)是一种迭代方法,用于求解线性方程组。基于MATLAB的GS算法实现如下:
```matlab
function [x, error, iter] = gauss_seidel(A, b, x0, tol, max_iter)
% Gauss-Seidel algorithm for solving linear equations
% Input:
% A: coefficient matrix
% b: right-hand side vector
% x0: initial guess
% tol: tolerance
% max_iter: maximum number of iterations
% Output:
% x: solution vector
% error: absolute error at each iteration
% iter: number of iterations
n = length(b);
x = x0;
error = zeros(max_iter, 1);
for iter = 1:max_iter
for i = 1:n
x(i) = (b(i) - A(i,1:i-1)*x(1:i-1) - A(i,i+1:n)*x0(i+1:n)) / A(i,i);
end
error(iter) = norm(A*x-b);
if error(iter) < tol
break
end
x0 = x;
end
error(iter+1:end) = [];
```
其中,A为系数矩阵,b为右侧向量,x0为初始猜测值,tol为容差,max_iter为最大迭代次数。函数输出解向量x、每次迭代的绝对误差error和迭代次数iter。
阅读全文
相关推荐













