雅克比迭代法的例子matlab,matlab-雅克比迭代法

%算法 p188

%例题 p209

clc;

clear;

A=[1 0.4 0.4

0.4 1 0.8

0.4 0.8 1];

b=[ 1

2

3];

%迭代四次

height=size(A,1);

D=diag(diag(A));

L=tril(A,-1);%得到L

U=triu(A,1);%得到U

% x=[1 ;1 ;1]%初始向量x

x=ones(height,1);

k=0;

for i=1:1:length(A)

for j=1:1:length(A)

sum=0;

if j~=i

sum=sum+A(i,j)*x(j);

end

x(i)=(b(i)-sum)/A(i,i);

k=k+1;

end

% %迭代4次

% %迭代矩阵B

% B=inv(D)*(L+U)

% f=inv(D)*b

% x(1)=B*x(1)+f

% x(2)=B*x(2)+f

% x(3)=B*x(3)+f

end

x1=A\b

x

%上面的三行代码等于下面注释掉的多行代码

% d=diag(A)

% D=zeros(height,height);

% for i=1:1:height

% D(i,i)=d(i)

% end

% L=zeros(height,height);

% U=zeros(height,height);

% for i=1:1:height

% for j=1:1:height

% if i

% L(i,j)=A(i,j)

% else if i>j

% U(i,j)=A(i,j)

% end

% end

% end

% end

%A=D+L+U

%k表示迭代次数

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值