Page 143 - 6734
P. 143

[(1,  10., 'a') (2,  20., 'b')]
           [(1,  10., 'a')]
                            numpy.linalg – лінійна алгебра

               Модуль  містить  базові  інструменти  лінійної  алгебри:  для
           декомпозиції  матриць,  розрахунку  власних  значень,  визначника,
           норми  матриці,  розв’язування  систем  лінійних  рівнянь  та
           інвертування матриць. У прикладі також показано відмінність типів
           matrix  і  ndarray.  Модуль  scipy.linalg  містить  функції
           numpy.linalg та деякі додаткові функції [14, 25], але може  бути
           швидшим.

           import numpy as np
           A = np.matrix([[3, 1], [1, 2]]) # матриця
           print A*A # множення матриць

           print np.linalg.det(A) # визначник матриці (якщо не
           0, то існує обернена матриця до A)

           W,V=np.linalg.eig(A) # власні значення і власні
           вектори
           print W[0],V[:,0] # перше власне значення і
           відповідний власний вектор
           print A*V[:,0] - W[0]*V[:,0] # перевірка
           A*V[:,i]=W[i]*V[:,i]

           # розв'язування систем лінійних рівнянь AX=B (A,B -
           матриці)
           A = np.matrix([[3, 1], [1, 2]]) # матриця
           B = np.matrix([[9], [8]]) # матриця
           X = np.linalg.solve(A, B) # розв'язати систему
           # X = A**(-1)*B # або шляхом інвертування матриці A
           # A*X-B # перевірка (нульова матриця)
           print X

                                         142
   138   139   140   141   142   143   144   145   146   147   148