numpy.linalg — Процедури лінійної алгебри¶
The numpy.linalg submodule provides a small selection of linear-algebra
routines that operate on numpy.ndarray objects. Functions that operate
on matrices require two-dimensional arrays; passing arrays of a different
dimensionality raises a ValueError.
Функції¶
- numpy.linalg.cholesky(A: ndarray) ndarray¶
Обчислити розклад Холецького позитивно визначеної симетричної квадратної матриці.
- Параметри:
A – позитивно визначена, симетрична, двовимірна квадратна матриця.
- Повертає:
нижньотрикутна
numpy.ndarrayLтака, щоA = L @ L.T.- Викликає:
ValueError – якщо A не є квадратною, не симетричною або не позитивно визначеною.
- numpy.linalg.det(m: ndarray) float¶
Обчислити визначник квадратної матриці.
- Параметри:
m – двовимірна квадратна матриця.
- Повертає:
визначник матриці m як
floatPython. Повернуте значення завжди є числом з плаваючою комою, навіть якщо вхідний масив є цілочисельним.- Викликає:
ValueError – якщо m не є квадратною.
Обчислення виконується методом Гаусса з частковим вибором провідного елемента.
- numpy.linalg.eig(m: ndarray) tuple[ndarray, ndarray]¶
Обчислити власні значення та власні вектори дійсної симетричної квадратної матриці.
- Параметри:
m – двовимірна, дійсна, симетрична квадратна матриця.
- Повертає:
2-кортеж
(eigenvalues, eigenvectors).eigenvalues— одновимірний масив довжиниN;eigenvectors— масив розміруN-на-N, стовпці якого є відповідними власними векторами.- Викликає:
ValueError – якщо m не є квадратною, не симетричною або якщо ітерація обертань Якобі не збіглася.
- numpy.linalg.inv(m: ndarray) ndarray¶
Обчислити обернену матрицю до квадратної матриці.
- Параметри:
m – двовимірна квадратна матриця.
- Повертає:
обернена до m матриця у вигляді
numpy.ndarrayз типом float.- Викликає:
ValueError – якщо m не є квадратною або є виродженою.
Обернення виконується методом Гаусса-Жордана.
- numpy.linalg.norm(x: ndarray, axis: int | None = None) float | ndarray¶
Обчислити 2-норму вектора або матриці.
- Параметри:
x – об’єкт
numpy.ndarray,tuple,listабоrange.axis – необов’язкова вісь, вздовж якої обчислюється норма. Якщо
None(за замовчуванням), норма обчислюється по розгорнутому вхідному масиву і повертається одне значенняfloat. В іншому разі норма зменшується вздовж зазначеної осі і повертаєтьсяnumpy.ndarray.
- Повертає:
або
floatPython (якщо axis дорівнюєNoneабо якщо x є ітерованим об’єктом, але не ndarray), абоnumpy.ndarrayіз видаленою відповідною віссю.
2-норма обчислюється як
sqrt(sum(x*x))з використанням чисельно стабільного ковзного середнього, тому операція не потребує додаткової пам’яті, пропорційної розміру вхідних даних.
- numpy.linalg.qr(m: ndarray, mode: str = 'reduced') tuple[ndarray, ndarray]¶
Розкласти матрицю у добуток ортонормованої матриці та верхньотрикутної матриці.
- Параметри:
m – двовимірна матриця форми
(M, N).mode – або
'reduced'(за замовчуванням), або'complete'. У режимі'complete'матрицяQмає форму(M, M), аR— форму(M, N). У режимі'reduced'матриціQтаRусічені до першихmin(M, N)стовпців та рядків відповідно.
- Повертає:
2-кортеж
(Q, R)об’єктівnumpy.ndarrayтаких, щоm == Q @ R, деQє ортонормованою, аR— верхньотрикутною.- Викликає:
TypeError – якщо m не є об’єктом
numpy.ndarray.ValueError – якщо m не є двовимірною або mode не є одним із допустимих значень.
Розклад реалізовано за допомогою послідовних обертань Гівенса.