📄 lu_decompostion.m
字号:
function [L,U]=LU_decompostion(A)
%在求解线性方程组Ax=b时,如果能够通过正交变换,将m*n矩阵A分解为A=LU,其中,L为m*m单位下三角矩阵(对角元素为1的下三角矩阵);
%U为A的m*n阶梯型矩阵。这样一来,线性方程组Ax=b即变为LUx=b,它可以简单求解。
%A 是非奇异阵
%—————————————————————————————————————————————————————————————————————----
c=size(A); %取出矩阵的行数和列数
t1=c(1); %t1为行数
t2=c(2); %t2位列数
k=1;
for t=1:t1
B=A(t,t);
%取出下三角
for ti=1:t1
if k>ti
L(ti,k)=0;
else
L(ti,k)=A(ti,k)/A(t,t); %取出A矩阵的下三角归一化矩阵作为新的下三角矩阵
end
end
%取出上三角
for i=t+1:t1
if A(i,t)==0
break
else
C=A(i,t); %取出行除数
for j=t:t2
A(i,j)=-A(i,j)*(B/C)+A((i-1),j); %前向回归算法
end
A
end
end
k=k+1;
end
U=A;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -