matlab实现高斯消元
时间: 2023-10-16 14:12:30 浏览: 110
matlab实现高斯消元法
高斯消元是一种线性方程组求解方法,可以用 MATLAB 来实现。以下是一个简单的 MATLAB 代码示例:
```matlab
% 定义系数矩阵 A 和常数向量 b
A = [2, -1, 0; -1, 2, -1; 0, -1, 2];
b = [1; 0; 1];
% 将系数矩阵 A 和常数向量 b 合并成增广矩阵 Ab
Ab = [A, b];
% 使用高斯消元法求解增广矩阵 Ab
n = size(Ab, 1); % 方程组的个数
for k = 1:n-1
for i = k+1:n
factor = Ab(i,k) / Ab(k,k);
Ab(i,k:n+1) = Ab(i,k:n+1) - factor * Ab(k,k:n+1);
end
end
% 回带求解
x = zeros(n,1);
x(n) = Ab(n,n+1) / Ab(n,n);
for i = n-1:-1:1
x(i) = (Ab(i,n+1) - Ab(i,i+1:n) * x(i+1:n)) / Ab(i,i);
end
% 输出解向量 x
disp(x);
```
运行以上代码,即可求解系数矩阵为 `A`,常数向量为 `b` 的线性方程组。
阅读全文