我正在实施一个LinearTransformation
类,它继承自numpy.matrix
并使用numpy.matrix.I
计算转换矩阵的逆矩阵。
在尝试计算逆算之前,是否有人知道numpy是否检查矩阵的正交性?我问,因为我的大多数矩阵(但不是全部)都是正交的,我想知道在尝试反转之前是否要实施一些快速正交检查。
答案 0 :(得分:5)
它没有!
numpy.linalg.inv(A)
实际上会调用numpy.linalg.solve(A,I)
,其中I
是标识,解决方案使用lapack's LU factorization。
也就是说,最终,它会进行高斯消除,其中默认情况下未检测到正交性。
我并不认为有一点像黑暗那样检查A * A.T = I
之类的东西,因为矩阵时矩阵成本很高。