计算numpy矩阵的极分解?

2 投票
2 回答
2399 浏览
提问于 2025-04-17 09:36

一个方阵 A 的 极分解 是一种把这个矩阵拆分成两部分的方式,具体形式是:

A = UP,

这里的 U 是一个单位矩阵,而 P 是一个正半定的厄米矩阵。这个极分解和 QR分解 不一样,后者可以通过 scipy.linalg.qr 来实现。

那么,我该如何用 numpy 或 scipy 来找到 P 呢?

2 个回答

3

现在有一个叫“scipy.linalg.polar”的东西了 :) http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.linalg.polar.html

2

好吧,你链接的这个维基百科关于极分解的页面里有一些公式,可以用来通过奇异值分解(SVD)来计算极分解。

其次,在你链接的scipy linalg教程的上面几段里,有解释如何计算奇异值分解(SVD)

所以,把这两者结合起来,你应该就能得到极分解,对吧?

撰写回答