scipy.linalg — Процедуры линейной алгебры

Подмодуль scipy.linalg предоставляет небольшой набор линейных решателей, работающих с объектами numpy.ndarray.

Функции

scipy.linalg.cho_solve(c: ndarray, b: ndarray) ndarray

Решает линейную систему A @ x = b по заданному разложению Холецкого матрицы A. В отличие от scipy.linalg.cho_solve из CPython, функция принимает напрямую матрицу, разложенную по Холецкому, а не кортеж (c, lower).

Параметры:
  • c – множитель Холецкого матрицы A в виде квадратного двумерного numpy.ndarray.

  • b – одномерный numpy.ndarray, задающий правую часть.

Результат:

вектор решения x в виде numpy.ndarray из чисел с плавающей точкой.

scipy.linalg.solve_triangular(a: ndarray, b: ndarray, lower: bool = False) ndarray

Решает линейную систему a @ x = b относительно x, предполагая, что a — треугольная матрица.

Параметры:
  • a – квадратный двумерный numpy.ndarray. Считывается только верхний или нижний треугольник, в зависимости от lower.

  • b – одномерный numpy.ndarray, задающий правую часть.

  • lower – если True, данные берутся из нижнего треугольника a; в противном случае — из верхнего треугольника. По умолчанию False.

Результат:

вектор решения x в виде numpy.ndarray из чисел с плавающей точкой.

сама матрица a не обязана быть треугольной: значения вне выбранного треугольника просто считаются нулевыми. В этом случае a @ x не воспроизведёт b.