通过分解将对称正定厄米特矩阵分解成下三角矩阵L和对角矩阵D来求其逆矩阵
目录
前言
一、LDL^H基本算法
二、LDL^H Right-Looking算法
三、D矩阵求逆
四、L矩阵求逆
五、A矩阵求逆
六、计算量分析
七、MATLAB仿真
八、参考资料
总结
前言
在线性代数中,LDL^H分解是将一个矩阵分解为一个下三角矩阵(L)与一个对角矩阵(D)的过程。由于D是对角矩阵,那么其逆矩阵就等于其所有对角元素的倒数组合成的对角矩阵。求逆矩阵,分解之后便只需要去求L的逆矩阵进而就能求出厄米特矩阵的逆矩阵。
提示:以下是本篇文章正文内容,希望能帮助到各位,转载请附上链接。
一、LDL^H基本算法
对于一个厄米特矩阵A,可以将其写为
其中D为对角矩阵,L为下三角矩阵,且对角元全为1。
A的下三角部分(即)满足:
、可按以下步骤求解:
a)
b)
c) 对于第列:
d) 如果j=N,则矩阵分解完成;否则j=j+1,返回 c)。
例如,对于4×4阶矩阵,按公式写出每一个元素表达式如下图所示。
二、LDL^H Right-Looking算法
注意到LDL分解的步骤c含有计算 部分,该计算在第 j 列完成列约化操作之后即可对后续子矩阵完成部分更新:
称为Right-Looking结构。
、可按以下步骤求解:
a)
(取A的下三角部分)
b) 对于第列:
c) 对于第行:
1)执行执行列约化:
2)更新子矩阵对应行:
d)如果 j = N ,则矩阵分解完成;否则j = j+1,返回b)。
例如,对于4×4阶矩阵,按公式写出每一个元素表达式如下图所示。
三、D矩阵求逆
由于D是一个对角矩阵,所以D矩阵的逆矩阵可表示为:
四、L矩阵求逆
由于L是一个下三角矩阵,我们可以对其求共轭转置得到一个上三角矩阵,这样便可以参考下面这篇文章求其逆矩阵:
http://t.csdnimg.cn/aHPmd
五、A矩阵求逆
因为A=LDL^H,所以
六、计算量分析
对于一个N×N阶厄密对称正定A矩阵,
第n次列约化需要的除法次数为N-n;
第n次子矩阵更新需要的乘法次数为:
加法次数(减可看成加)为:
那么执行完整个LDLH分解需要的
乘法次数为:
加法次数为:
除法次数为:
执行完之后对对角阵D求逆需要N次除法。
参考http://t.csdnimg.cn/aHPmd,对主对角线全为1的三角矩阵L求逆需要的乘法与加法次数均为
因为A=LDLH,那么计算(注意D-1是对角阵,L-1、(LH)-1是三角阵)需要的乘法次数为:
加法次数为:
所以通过LDL^H分解求解逆矩阵总共需要的运算次数如下:
乘法:
加法:
除法:
七、MATLAB仿真
以MATLAB自带求逆函数inv为对比,仿真得出以下结果:
八、参考资料
https://download.csdn.net/download/m0_66360845/89030881
总结
以上介绍了一种基于LDL^H,进而求解逆矩阵的方法与MATLAB仿真。小伙伴们认真看完此文章必定有所收获。