zoukankan      html  css  js  c++  java
  • 矩阵分析线性系统3 LU分解

    1. LU分解

    LU分解在本质上是高斯消元法的一种表达形式。实质上是将A通过初等行变换变成一个上三角矩阵,其变换矩阵就是一个单位下三角矩阵。这正是所谓的杜尔里特算法(Doolittle algorithm):从下至上地对矩阵A做初等行变换,将对角线左下方的元素变成零,然后再证明这些行变换的效果等同于左乘一系列单位下三角矩阵,这一系列单位下三角矩阵的乘积的逆就是L矩阵,它也是一个单位下三角矩阵。

    下面以具体例子来说明。若AX=b是一个非奇异系统,那么高斯消元法将A化简为一个上三角矩阵。若主轴上没有0值,则无需交互行,因此只需进行第3类初等行变换(把第 i 行加上第 jk 倍)即可完成此变换。例如

                                        image                                         (1)

    第3类行变换可以通过左乘相应的初等矩阵image实现,对上例来说进行的3个变换就是相应初等矩阵的乘积。注意最右边是一个下三角矩阵L

                                   image   =L            (2)

    从而有image,即image。因此A=LU,为一个下三角与一个上三角矩阵的乘积,因此称为LU分解。

    注意

    1)U是高斯消元的结果,且对角线上是主元

    2)L对角线上是1,对角线下面的元素image恰恰是在式1中用于消去(i,j)位置上元素的乘子。

    2. LDU分解

    LU分解存在不对称,因为L矩阵的主对角线元素为1,而U矩阵主对角线不为1。为了对此进行弥补,可U矩阵进一步做如下分解

                         image = DU

    这就是LDU分解,其中L和U是单位三角阵(主对角线都为1),D是对角阵。

    下图说明了Walsh matrix的LDU分解 

                                 

    3. LDLT分解

    当A是对称阵时,LDU分解为A=LDLT 。例子如下

    对称阵   image, LU分解为image, LDLT 分解为image

    进一步,由于对角阵D的元素为正,可有image,从而得到image,其中U是上三角阵。

  • 相关阅读:
    Codeforces 451A Game With Sticks
    POJ 3624 Charm Bracelet
    POJ 2127 Greatest Common Increasing Subsequence
    POJ 1458 Common Subsequence
    HDU 1087 Super Jumping! Jumping! Jumping!
    HDU 1698
    HDU 1754
    POJ 1724
    POJ 1201
    CSUOJ 1256
  • 原文地址:https://www.cnblogs.com/pegasus/p/2257258.html
Copyright © 2011-2022 走看看