当前位置: 代码迷 >> 综合 >> cholesky求逆
  详细解决方案

cholesky求逆

热度:89   发布时间:2024-03-06 21:27:23.0

 

矩阵求逆经常会用到cholesky分解,接下来写一下主要的计算公式

设对称正定矩阵X=【】5*5矩阵

cholesky分解可得一个三角矩阵

如果是上三角矩阵,则计算公式为X=U'U,如果是下三角矩阵,则X=LL'

通过下面的例子可以清晰的看到结果

clear
clc
X=pascal(5) 
U=chol(X)%产生一个上三角阵
XU=U'*U
L=U'%产生一个下三角阵
XL=L*L'
X =1     1     1     1     11     2     3     4     51     3     6    10    151     4    10    20    351     5    15    35    70U =1     1     1     1     10     1     2     3     40     0     1     3     60     0     0     1     40     0     0     0     1XU =1     1     1     1     11     2     3     4     51     3     6    10    151     4    10    20    351     5    15    35    70L =1     0     0     0     01     1     0     0     01     2     1     0     01     3     3     1     01     4     6     4     1XL =1     1     1     1     11     2     3     4     51     3     6    10    151     4    10    20    351     5    15    35    70

那么矩阵求逆就是先对三角矩阵求逆,然后相乘

 

如果是上三角矩阵,则计算公式为X=U'U,invX=U-1*U-1'

如果是下三角矩阵,则X=LL',invX=L-1'*L-1

通过下面的例子可以清晰的看到结果


invU=inv(U)
invL=inv(L)
invXU=invU*invU'
invXL=invL'*invLinv(X)
invU =1    -1     1    -1     10     1    -2     3    -40     0     1    -3     60     0     0     1    -40     0     0     0     1invL =1     0     0     0     0-1     1     0     0     01    -2     1     0     0-1     3    -3     1     01    -4     6    -4     1invXU =5   -10    10    -5     1-10    30   -35    19    -410   -35    46   -27     6-5    19   -27    17    -41    -4     6    -4     1invXL =5   -10    10    -5     1-10    30   -35    19    -410   -35    46   -27     6-5    19   -27    17    -41    -4     6    -4     1ans =5.0000  -10.0000   10.0000   -5.0000    1.0000-10.0000   30.0000  -35.0000   19.0000   -4.000010.0000  -35.0000   46.0000  -27.0000    6.0000-5.0000   19.0000  -27.0000   17.0000   -4.00001.0000   -4.0000    6.0000   -4.0000    1.0000

 

  相关解决方案