python中numpy计算数组的行列式numpy.linalg.det()

numpy.linalg.det

numpy.linalg.det(a)[source]

计算任何一个数组a的行列式,但是这里要求数组的最后两个维度必须是方阵。

参数:

a: (..., M, M) array_like

Input array to compute determinants for.

返回:

det: (...) array_like

Determinant ofa.

例如:

>>>a=np.reshape(np.arange(6),(2,3))
 >>>a
 out:array([[0, 1, 2],
        [3, 4, 5]])
 >>>np.linalg.det(a)
 out:LinAlgError: Last 2 dimensions of the array must be square
 
 >>>a=np.reshape(np.arange(20),(5,2,2))
 >>>a
 out:array([[[ 0,  1],
         [ 2,  3]],
 
        [[ 4,  5],
         [ 6,  7]],
 
        [[ 8,  9],
         [10, 11]],
 
        [[12, 13],
         [14, 15]],
 
        [[16, 17],
         [18, 19]]])
 
 >>>np.linalg.det(a)
  out:array([-2., -2., -2., -2., -2.])

其实这个函数就是为了计算方阵的行列式值的。