вопрос решил, все стало сходиться после добавления round()

    
ge=range(16)
kon=range(16)
for iq in range(16):
      ge[iq]=range(16)
 k4=range(4)
 k5=range(4)    
 for i2 in range(16):
             for i3 in range(4):
                 k4[i3]=math.pow(m[i2],i3);
                 k5[i3][0]=math.pow(m1[i2],i3);
             f=numpy.array(k5)
             f1=numpy.array(k4)
             h2= f*f1
             j3=0;
             for i1 in range(4):
                 for j2 in range(4):
                     ge[i2][j3]=round(h2[i1][j2],4)<-------------------------------------------------------
                     j3=j3+1
             kon[i2]=m2[i2]
f2=numpy.array(ge)
f3=numpy.array(kon)
xr = numpy.linalg.solve(f2,f3)
xr1=(numpy.dot(f2, xr) == f3).all()
print "xr:"
print xr1