Почему умножение матрицы на ее обратное с нулевой не производит единичную матрицу? - PullRequest
0 голосов
/ 30 мая 2019

Я умножаю матрицу на обратную и не получаю взамен идентификационную матрицу.Я подозреваю, что есть проблема с округлением с плавающей запятой (или его отсутствие, если исходные записи в матрицах просто целочисленные?) Любая помощь приветствуется.

C = np.array([[5,5,5],[4,5,6],[7,8,9]])
print("Original matrix")
print(C)
print("Inverse matrix")
D = np.linalg.inv(C)
print(D)
print("Identity matrix")
print((C.dot(D)))
Original matrix
[[5 5 5]
 [4 5 6]
 [7 8 9]]
Inverse matrix
[[-6.75539944e+14 -1.12589991e+15  1.12589991e+15]
 [ 1.35107989e+15  2.25179981e+15 -2.25179981e+15]
 [-6.75539944e+14 -1.12589991e+15  1.12589991e+15]]
Identity matrix
[[ 0.5  -2.    1.75]
 [ 0.    0.    0.5 ]
 [ 0.5   0.    2.75]]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...