gaussian_elimination.m
来自「用MATLAB写的Gaussian Elimination算法即LU算法」· M 代码 · 共 37 行
M
37 行
function [L,U]=LU(A)
% Gaussian Elimination
Size=size(A);
m=Size(1,1); %计算行数
R=eye(m);%产生单位矩阵,以后用于L
n=Size(1,2);%计算列数
num=1;%设置变换的行数
Z=0;%记录行变换次数
for i=1:m
for k=i:m
if abs(A(i,i))<abs(A(k,i))
temp=A(i,i);
A(i,i)=A(k,i);
A(k,i)=temp;
num=k;
end
end
if i<num
for j=(i+1):n
temp=A(i,j);
A(i,j)=A(num,j);
A(num,j)=temp;
end
Z=Z+1;
end
for k=(i+1):m
R(k,i)=A(k,i)/A(i,i);
for j=i:n
A(k,j)=A(k,j)-A(i,j)*R(k,i);
end
end
end
disp('进行列变换的次数为:');
disp(Z);
L=R;
U=A;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?