.Gauss列主元消去法求解线性方程组
6
2
21250310822x12x25x37x447, 10
(k)迭代法计算停止的条件为:max
1j3
xj(k1)xj106.
采用用用Gauss列主元消去法时,Matlab计算程序为:
clear
clc
A=[2 2 1 2;4 1 3 -1;-4 -2 0 1;2 3 2 3]; B=[1;2;1;0];
n=length(B);
X=zeros(n,1);
c=zeros(1,n);
d1=0;
fori=1:n-1
max=abs(A(i,i));
m=i;
for j=i+1:n
if max
max=abs(A(j,i));
m=j;
end
end
if(m~=i)
for k=i:n
c(k)=A(i,k);
A(i,k)=A(m,k);
A(m,k)=c(k);
end
d1=B(i);
B(i)=B(m);
B(m)=d1;
end
for k=i+1:n
for j=i+1:n
A(k,j)=A(k,j)-A(i,j)*A(k,i)/A(i,i); end
B(k)=B(k)-B(i)*A(k,i)/A(i,i);
A(k,i)=0;
end
end
X(n)=B(n)/A(n,n);
fori=n-1:-1:1
sum=0;
for j=i+1:n
sum=sum+A(i,j)*X(j);
end
X(i)=(B(i)-sum)/A(i,i); end
X
计算结果为:X =(1.5417;-2.7500;0.0833;)1.6667
.Gauss列主元消去法求解线性方程组
6
2
21250310822x12x25x37x447, 10
(k)迭代法计算停止的条件为:max
1j3
xj(k1)xj106.
采用用用Gauss列主元消去法时,Matlab计算程序为:
clear
clc
A=[2 2 1 2;4 1 3 -1;-4 -2 0 1;2 3 2 3]; B=[1;2;1;0];
n=length(B);
X=zeros(n,1);
c=zeros(1,n);
d1=0;
fori=1:n-1
max=abs(A(i,i));
m=i;
for j=i+1:n
if max
max=abs(A(j,i));
m=j;
end
end
if(m~=i)
for k=i:n
c(k)=A(i,k);
A(i,k)=A(m,k);
A(m,k)=c(k);
end
d1=B(i);
B(i)=B(m);
B(m)=d1;
end
for k=i+1:n
for j=i+1:n
A(k,j)=A(k,j)-A(i,j)*A(k,i)/A(i,i); end
B(k)=B(k)-B(i)*A(k,i)/A(i,i);
A(k,i)=0;
end
end
X(n)=B(n)/A(n,n);
fori=n-1:-1:1
sum=0;
for j=i+1:n
sum=sum+A(i,j)*X(j);
end
X(i)=(B(i)-sum)/A(i,i); end
X
计算结果为:X =(1.5417;-2.7500;0.0833;)1.6667