没有包装的快速矩阵反演
假设我有一个方形矩阵M
假设我想反转矩阵M
我正在尝试使用gmpy2中的分数mpq
类作为我的矩阵M
成员。 如果你不熟悉这些分数,它们在功能上与Python的内置fractions
相似。 唯一的问题是,没有任何软件包会颠倒我的矩阵,除非我将它们从分数形式中提取出来。 我需要分数形式的数字和答案。 所以我将不得不编写自己的函数来反转M
有一些我可以编程的已知算法,例如高斯消元法。 然而,表现是一个问题,所以我的问题如下:
有没有一种计算快速的算法可以用来计算矩阵M
的逆?
还有什么你知道这些矩阵? 例如,对于对称正定矩阵,Cholesky分解允许您比您提到的标准Gauss-Jordan方法更快地进行反演。
对于一般的矩阵求逆,Strassen算法会给你比Gauss-Jordan更快的结果,但比Cholesky慢。
看起来你想得到确切的结果,但是如果你对近似反演很好,那么有一些算法比以前提到的算法快得多。
但是,您可能需要问自己,您是否需要整个矩阵逆转用于特定的应用程序。 根据你在做什么,使用另一个矩阵属性可能会更快。 根据我的经验,计算矩阵求逆是一个不必要的步骤。
我希望这有助于!
链接地址: http://www.djcxy.com/p/96407.html上一篇: Fast matrix inversion without a package
下一篇: Correct way to write