scipy.linalg.solve
,在其较新的版本中,有一个参数assume_a
可用于指定矩阵是对称的或正定的;在这些情况下,使用 LDL 或 Cholesky 而不是 LU(Lapack 的sysv
而posv
不是gesv
)。
稀疏求解器是否有类似的界面?据我了解,scipy.sparse.linalg.spsolve
不支持assume_a
并始终使用LU。那么(如果有的话)在 Scipy 中使用对称稀疏直接求解器的推荐方法是什么?
我已经看到还有sksparse.cholmod
,但它是一个具有不同接口的单独包,并且从文档中看起来它根本不处理不定矩阵。