test_solve.py a x = y a= [[ 0.5 0.33333333 0.25 0.2 ] [ 0.33333333 0.25 0.2 0.16666667] [ 0.25 0.2 0.16666667 0.14285714] [ 0.2 0.16666667 0.14285714 0.125 ]] y= [1 2 3 4] solve x= [ -380. 3240. -7140. 4480.] eig d= [ 9.77556281e-01 6.22678235e-02 1.82125544e-03 2.13065856e-05] eig v= [[ 0.69524173 0.66277303 0.2722824 -0.05686079] [ 0.50244805 -0.18857925 -0.7387851 0.40765231] [ 0.395998 -0.4630991 -0.04915549 -0.79139658] [ 0.32767436 -0.55741278 0.61452633 0.45197113]] qr q1= [[-0.73433307 0.63004604 -0.24700194 -0.05279177] [-0.48955538 -0.24889223 0.7359491 0.39593827] [-0.36716653 -0.48768449 0.01685578 -0.79187654] [-0.29373323 -0.5506891 -0.63014669 0.46192798]] qr q2= [[ -6.80889941e-01 -4.89555380e-01 -3.84650655e-01 -3.17628193e-01] [ 0.00000000e+00 -4.15261261e-02 -5.22175562e-02 -5.39781810e-02] [ 0.00000000e+00 0.00000000e+00 -1.77232615e-03 -3.10257409e-03] [ 0.00000000e+00 0.00000000e+00 0.00000000e+00 4.71355083e-05]] svd s1= [[-0.69524173 0.66277303 -0.2722824 -0.05686079] [-0.50244805 -0.18857925 0.7387851 0.40765231] [-0.395998 -0.4630991 0.04915549 -0.79139658] [-0.32767436 -0.55741278 -0.61452633 0.45197113]] svd s2= [ 9.77556281e-01 6.22678235e-02 1.82125544e-03 2.13065856e-05] svd s3= [[-0.69524173 -0.50244805 -0.395998 -0.32767436] [ 0.66277303 -0.18857925 -0.4630991 -0.55741278] [-0.2722824 0.7387851 0.04915549 -0.61452633] [-0.05686079 0.40765231 -0.79139658 0.45197113]] rand(3,3) [[ 0.15045439 0.49823354 0.47630334] [ 0.50705046 0.16318918 0.25259694] [ 0.35634222 0.50156971 0.96162452]] a[0][0] 0.5 a[1][1] 0.25 a[2][2] 0.166666666667 a[3][3] 0.125 a[0][3] 0.2 dir(numpy.linalg) ['LinAlgError', '__builtins__', '__doc__', '__file__', '__name__', '__path__', 'cholesky', 'det', 'eig', 'eigh', 'eigvals', 'eigvalsh', 'info', 'inv', 'lapack_lite', 'linalg', 'lstsq', 'norm', 'pinv', 'qr', 'solve', 'svd', 'tensorinv', 'tensorsolve', 'test'] dir(numpy.matlib)