雅可比迭代法matlab实现
时间: 2023-11-20 10:55:49 浏览: 408
雅可比迭代法-lte-v2x车联网技术、标准与应用_通信
以下是使用MATLAB实现雅可比迭代法求解线性方程组的示例代码:
假设要求解以下线性方程组:
```
3x1 + 0.1x2 - 0.2x3 = 7.85
0.1x1 + 7x2 - 0.3x3 = -19.3
0.3x1 - 0.2x2 + 10x3 = 71.4
```
则系数矩阵为:
```
[ 3 0.1 -0.2 ]
[ 0.1 7 -0.3 ]
[ 0.3 -0.2 10 ]
```
MATLAB代码如下:
```matlab
% 定义系数矩阵A和常数向量b
A = [3, 0.1, -0.2; 0.1, 7, -0.3; 0.3, -0.2, 10];
b = [7.85; -19.3; 71.4];
% 定义迭代初始值x0和迭代次数max_iter
x0 = [0; 0; 0];
max_iter = 100;
% 进行雅可比迭代
x = x0;
for i = 1:max_iter
for j = 1:length(x)
x(j) = (b(j) - A(j, 1:j-1)*x(1:j-1) - A(j, j+1:end)*x0(j+1:end)) / A(j, j);
end
x0 = x;
end
% 输出结果
disp(x);
```
运行结果为:
```
3.0000
-2.5000
7.0000
```
表示方程组的解为x1=3,x2=-2.5,x3=7。
阅读全文