201702GraduateEx0600 - dknife/Graduate2017_Autumn GitHub Wiki
import numpy as np
M = np.array(
[[1,3,3,2,4,9,2,3],
[2,1,4,2,3,8,2,1],
[3,2,3,3,4,7,2,2],
[4,1,4,3,5,6,2,3],
[5,2,3,2,6,5,3,1],
[6,1,3,2,7,4,3,2],
[7,2,4,4,8,3,3,3],
[8,1,4,5,9,2,3,3]])
b = np.array([100 for x in range(0,8)])
def inverse(Mat):
u,s,v = np.linalg.svd(Mat)
Minv = np.dot (v.transpose(), np.dot(np.diag(s**-1),u.transpose()))
return Minv
Minv = inverse(M)
I2 = Minv.dot(M)
x = Minv.dot(b)
print(x)
print(M.dot(x))