python中的cholesky分解

时间:2015-05-26 19:02:21

标签: python numpy scikits matrix-decomposition

我正在尝试在python中使用cholesky分解,使用numpy(np)和scikits(sci)库。假设D是稀疏的(使用csc_matrix)。以下两行的结果不同

L1 = csc_matrix(np.linalg.cholesky(D.todense()));
L2 = sci.sparse.cholmod.cholesky(D).L();

实际上当我使用

print np.allclose(np.dot(L1.todense(),L1.todense().T), D.todense())
print np.allclose(np.dot(L2.todense(),L2.todense().T), D.todense())

我对L1有效,对L2有误。

D是Hermitian和pos_def。有人可以帮我弄清楚我的实施有什么问题。

0 个答案:

没有答案