?? fanmifa.m
字號:
clear
clc
A=xlsread('data8_5.xls');
eps=1e-5;
KM=50;
k=0;
[m,n]=size(A);
nb=n+1;
u=ones(m,1);
Ab=[A,u];
r1=0;
while k<KM
k=k+1;
%LU分解
Ab(2:m,1)=Ab(2:m,1)/Ab(1,1);
for k=2:m
for j=k:nb
Ab(k,j)=Ab(k,j)-Ab(k,1:k-1)*Ab(1:k-1,j);
end
for i=k+1:m
Ab(i,k)=(Ab(i,k)-Ab(i,1:k-1)*Ab(1:k-1,k))/Ab(k,k);
end
end
v=zeros(m,1);
v(n)=Ab(n,nb)/Ab(n,n);
for k=n-1:-1:1
v(k)=(Ab(k,nb)-Ab(k,k+1:n)*v(k+1:n,1))/Ab(k,k);
end
%等價于v=inv(A)*u;
[r2,p]=max(abs(v));
r2=v(p);
u=v/r2;
if(abs(r1-r2)<eps)
break;
end
r1=r2;
Ab=[A,u];
r2
v
u
end
if k>=KM
fprintf('The Method is disconvergent\n');
else
fprintf('r=%f\n',r2);
for i=1:m
fprintf('x[%d]=%f\n',i,u(i));
end
end
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -