%LU分解,Doolittle分解
%L为单位下三角阵,U为上三角阵
clear;clc;
A=[3 -5 6 4 -2 -3 8;
1 1 -9 15 1 -9 2;
2 -1 7 5 -1 6 11;
-1 1 3 2 7 -1 -2;
4 3 1 -7 2 1 1;
2 9 -8 11 -1 -4 -1;
7 2 -1 2 7 -1 9];%系数矩阵
b=[11 2 29 9 5 8 25]';%n维向量
% A=[4,-2,0,4;-2,2,-3,1;0,-3,13,-7;4,1,-7,23];
% b=[1 2 3 4];
n=length(b);%方程个数n
x=zeros(n,1);%未知向量
A(2:n,1)=A(2:n,1)./A(1,1);
for i=2:n-1
A(i,i)=A(i,i)-sum(A(i,1:i-1)'.*A(1:i-1,i));
for j=i+1:n
A(i,j)=A(i,j)-sum(A(i,1:i-1)'.*A(1:i-1,j));
A(j,i)=(A(j,i)-sum(A(j,1:i-1)'.*A(1:i-1,i)))/A(i,i);
end
end
A(n,n)=A(n,n)-sum(A(n,1:n-1)'.*A(1:n-1,n));
A
U=A;L=A;
for i=1:n
L(i,i)=1;
end
for i=1:n-1
for j=i+1:n
L(i
矩阵的LU分解(Matlab程序)
最新推荐文章于 2024-06-20 10:29:02 发布
这篇博客介绍了如何在Matlab中进行LU分解,通过Doolittle分解方法构建单位下三角阵L和上三角阵U。接着展示了如何利用LU分解解线性方程组的过程,包括计算向量y和逐步求解未知数x的步骤。
摘要由CSDN通过智能技术生成