Mijn vraag
Ik krijg in Python een verkeerde inverse matrix. Ik heb een controle in Excel gedaan. Het voorbeeld wat ik volg op internet gebruikt Mathcad en deze geeft de resultaten zoals in Excel naar voren komen.
Relevante software en hardware die ik gebruik
Python 3.6
Excel 2016
Wat ik al gevonden of geprobeerd heb
Python code:
output python:
Excel input (voor de inverse):
In beide programmas geven A * A^-1 de eenheidsmatrix
Ik krijg in Python een verkeerde inverse matrix. Ik heb een controle in Excel gedaan. Het voorbeeld wat ik volg op internet gebruikt Mathcad en deze geeft de resultaten zoals in Excel naar voren komen.
Relevante software en hardware die ik gebruik
Python 3.6
Excel 2016
Wat ik al gevonden of geprobeerd heb
Python code:
code:
1
2
3
4
5
| import numpy as np a = [[1.35e+06, 4.50e+07, 6.00e+07],[4.50e+07, 6.00e+09, 2.00e+07], [6.00e+07, 2.00e+07,4.00e+09]] print (np.array(a)) print(np.linalg.inv(np.array(a))) print(np.dot(np.array(a),np.linalg.inv(np.array(a)))) |
output python:
code:
1
2
3
4
5
6
7
8
9
| [[1.35e+06 4.50e+07 6.00e+07] [4.50e+07 6.00e+09 2.00e+07] [6.00e+07 2.00e+07 4.00e+09]] [[ 8.54851004e-06 -6.36874613e-08 -1.27909213e-07] [-6.36874613e-08 6.41148939e-10 9.52106174e-10] [-1.27909213e-07 9.52106174e-10 2.16387767e-09]] [[ 1.00000000e+00 -9.37204898e-18 -3.52524525e-18] [-5.13553840e-14 1.00000000e+00 -7.96834916e-16] [-3.92614001e-14 9.68417004e-17 1.00000000e+00]] |
Excel input (voor de inverse):
code:
1
2
3
| 2.46914E-06 -7.40741E-09 -3.33333E-08 -7.40741E-09 2.22222E-10 0 -3.33333E-08 0 7.5E-10 |
In beide programmas geven A * A^-1 de eenheidsmatrix