1. 伴随矩阵

1.1 二阶矩阵的伴随矩阵

主对角线换位,副对角线编号,例如

[[1, 2]

 [3, 4]]*

==>

[[4, -2]

 [-3  1]]

1.2 N阶矩阵的伴随矩阵

代数余子式方法

1.3 Numpy的做法 (Numpy之前版本可能直接支持)

linala.det(A) * linalg.inv(A)

A-1 = 1 / |A| * A*

2. 逆矩阵(方阵)

2.1 Numpy的做法

linalg.inv(A)

2.2 对于方阵的互逆

AA-1=A-1A=E,如果A有逆矩阵为A-1

 

3. 行列式的值

3.1 算法

from numpy import * 
mat = [[1, 2, 3], [4, 5, 9], [4, 2, 2]]

m = len(mat)

print m
print linalg.det(mat)

s = 0
t = 0
while t < m:
    p = 1
    q = 1
    i = 0
    while i < m:
        j = (i + t) % m;
        k = (m + t - i) % m;
        p *= mat[i][j]
        q *= mat[i][k]
        i += 1
    t += 1
    s += (p - q)
print s

3.2 Numpy的做法

linalg.det(a)

3.3 判断是否为奇异矩阵的依据

A为奇异矩阵,那么AX=0有无穷多的解,或者无解。

A不为奇异矩阵,那么AX=0有唯一0解,AX=b有唯一解。

 

4 矩阵的转置

4.1 Numpy的做法

numpy.transpose(a)

4.2 Python的做法

mat = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]]
print map(list, zip(*mat))

5. 矩阵的稚

linalg.matrix_rank(m)

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-28
  • 2021-06-23
  • 2022-12-23
  • 2022-12-23
  • 2021-05-10
猜你喜欢
  • 2021-07-07
  • 2021-06-21
  • 2021-07-01
  • 2021-08-26
  • 2021-08-10
  • 2022-02-16
相关资源
相似解决方案