矩阵的LU分解(Matlab程序)

原创 2012年03月30日 18:34:43

%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,j)=0;
    end
end
L %下三角阵
for i=2:n
    for j=1:i-1
        U(i,j)=0;
    end
end
U %上三角阵       
%-----用LU分解解线性方程组------
y=zeros(n,1);
y(1)=b(1);
for i=2:n
    y(i)=b(i)-sum(L(i,1:i-1)'.*y(1:i-1));
end
y
x(n)=y(n)/U(n,n);
for i=n-1:-1:1
    x(i)=(y(i)-sum(U(i,i+1:n)'.*x(i+1)))/U(i,i);
end
x
%可不必先将A分解后再求解Ly=b,计算y与A的分解可同时进行
%对增广矩阵A=[A,b]进行LU分解,分解后第n+1列位置上的元即是y

 


 

LU分解Matlab算法分析

最近矩阵分析老师出了一道题目作为作业,是一道程序题,题目是对A矩阵做LU分解,要求能对A实现PA=LU的分解,并最终输出L,U,P矩阵。         先来解读下题目,寥寥几句话,里面囊括的信息量...
  • zengaliang
  • zengaliang
  • 2016年10月05日 11:25
  • 3607

LU分解(matlab实现)

LU分解(LU Decomposition)是矩阵分解的一种,可以将一个矩阵分解为一个下三角矩阵和一个上三角矩阵的乘积。 主要的算法思路是从下至上地对矩阵A做初等行变换,将对角线左下方的元素变成...
  • Lrrent
  • Lrrent
  • 2016年05月02日 17:32
  • 10848

LU分解的MATLAB程序

  • 2016年04月26日 15:17
  • 907B
  • 下载

Doolittle分解法(LU分解)详细分析以及matlab的实现

本文分析了LU分解法的详细实现,并对编程实现进行了主要步骤的说明,给出了matlab语言的实现代码。最后测试了Gauss消去法、列主元素消去法以及LU分解法的计算效率。...
  • lol_IP
  • lol_IP
  • 2017年11月09日 16:49
  • 554

LU分解法的matlab实现

  • 2011年04月11日 13:15
  • 1KB
  • 下载

LU分解MatLab源代码

  • 2016年10月05日 11:57
  • 2KB
  • 下载

LU三角分解(matlab程序)

A=[1,2,3;1,3,5;1,3,6]; b=[2,3,4]; x=grout(A,b); function x=grout(B,c) n=size(B,1); L=ey...
  • qq_40739034
  • qq_40739034
  • 2017年10月22日 14:06
  • 434

matlab-线性代数 根据方程组写出系数矩阵与增广矩阵

慈心积善融学习,技术愿为有情学。善心速造多好事,前人栽树后乘凉。我今于此写经验,愿见文者得启发。 % 2x+2y-z=10 % -x+3y+2z=5 % x-y-z...
  • yushaopu
  • yushaopu
  • 2016年07月02日 11:40
  • 1285

Matlab 矩阵LU分解

  • 2014年04月07日 17:07
  • 1KB
  • 下载

matlab 用LU分解求解线性方程组——代码记录

转自http://www.cnblogs.com/wangshide/archive/2011/12/09/2282641.html 求解Ax=d的解x 1. LU分解 ...
  • qq_32423847
  • qq_32423847
  • 2016年05月08日 19:56
  • 1137
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:矩阵的LU分解(Matlab程序)
举报原因:
原因补充:

(最多只允许输入30个字)