列组元素LU分解的matlab程序,矩阵LU分解程序实现(Matlab)

编程入门 行业动态 更新时间:2024-10-27 16:28:01

列组元素LU<a href=https://www.elefans.com/category/jswz/34/1767758.html style=分解的matlab程序,矩阵LU分解程序实现(Matlab)"/>

列组元素LU分解的matlab程序,矩阵LU分解程序实现(Matlab)

n=4;%确定需要LU分解的矩阵维数

%A=zeros(n,n);

L=eye(n,n);P=eye(n,n);U=zeros(n,n);%初始化矩阵

tempU=zeros(1,n);tempP=zeros(1,n);%初始化中间变量矩阵

A=[1 2 -3 4;4 8 12 -8;2 3 2 1;-3 -1 1 -4];%需要LU分解矩阵赋值

for p=1:n %将A矩阵赋值给U

for q=1:n

U(p,q)=A(p,q);

end

end

jt=1;kt=0;

for i=1:n-1

jt=jt+1;

kt=kt+1;

ii=U(i,i);

if ii==0 %主元为零,进行行变换

for m=i:n

if U(m,i)~=0

tempU=U(i,:);

U(i,:)=U(m,:);

U(m,:)=tempU;

ii=U(i,i);

%%

tempP=P(i,:); %行变换结果存储在P中

P(i,:)=P(m,:);

P(m,:)=tempP;

break;

end

end

%disp(ii);

end

disp(ii);

for j=jt:n %%两重循环,完成高斯消元

perj=U(j,i)/ii;

L(j,i)=perj;

for k=kt:n

U(j,k)=U(j,k)-perj*U(i,k);

end

end

end

savefile='LUdapart';

save(savefile)

更多推荐

列组元素LU分解的matlab程序,矩阵LU分解程序实现(Matlab)

本文发布于:2024-02-24 13:45:02,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1695495.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:分解   程序   矩阵   元素   matlab

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!