IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [转]LU分解

    u010255642发表于 2015-10-27 16:51:09
    love 0

    设A是一个方块矩阵。A的LU分解是将它分解成如下形式:

     A = LU, \,

    其中L和U分别是下三角矩阵和上三角矩阵。

    例如对于一个3 \times 3的矩阵,就有

             \begin{bmatrix}           a_{11} & a_{12} & a_{13} \\           a_{21} & a_{22} & a_{23} \\           a_{31} & a_{32} & a_{33} \\        \end{bmatrix} =      \begin{bmatrix}           l_{11} & 0 & 0 \\           l_{21} & l_{22} & 0 \\           l_{31} & l_{32} & l_{33} \\        \end{bmatrix}        \begin{bmatrix}           u_{11} & u_{12} & u_{13} \\           0 & u_{22} & u_{23} \\           0 & 0 & u_{33} \\        \end{bmatrix}。

    一个LDU分解是一个如下形式的分解:

     A = LDU

    其中D是对角矩阵,L和U是单位三角矩阵(对角线上全是1的三角矩阵)。

    一个LUP分解是一个如下形式的分解:

     A = LUP

    其中L和U仍是三角矩阵,P是一个置换矩阵。

    一个充分消元的LU分解为如下形式:

     PAQ = LU

     

    将以下矩阵进行LU分解:

             \begin{bmatrix}           4 & 3 \\           6 & 3 \\        \end{bmatrix} =      \begin{bmatrix}           l_{11} & 0 \\           l_{21} & l_{22} \\        \end{bmatrix}        \begin{bmatrix}           u_{11} & u_{12} \\           0 & u_{22} \\        \end{bmatrix}.

    由于矩阵阶数只是2,可以直接列方程解:

    l_{11}* u_{11} + 0 * 0 = 4
    l_{11}* u_{12} + 0 * u_{22} = 3
    l_{21}* u_{11} + l_{22} * 0 = 6
    l_{21}* u_{12} + l_{22} * u_{22} = 3.

    这个线性方程组有无数多组解。因此,可以假设其中一个是单位三角矩阵,比如说L,也就是说其对角线上的两个系数都是1。这时可以解出:

    l_{21} = 1.5
    u_{11} = 4
    u_{12} = 3
    u_{22} = -1.5。

    也就是说

             \begin{bmatrix}           4 & 3 \\           6 & 3 \\        \end{bmatrix} =      \begin{bmatrix}           1 & 0 \\           1.5 & 1 \\        \end{bmatrix}        \begin{bmatrix}           4 & 3 \\           0 & -1.5 \\        \end{bmatrix}.


沪ICP备19023445号-2号
友情链接