Вычислить инерцию разреженной матрицы в Python - PullRequest
1 голос
/ 19 марта 2020

Я хочу достаточно быстро вычислить инерцию (триплет целых чисел, представляющих число 1> положительных, 2> отрицательных и 3> нулевых собственных значений) разреженной вещественной симметрии c (N x N ) матрица M in Python ( N между 100 и 100000).

У меня уже есть «решение» путем преобразования M обратно в плотную форму, а затем с использованием numpy .linalg.eigval sh (M ) для вычисления всего спектра, который затем делает очевидной инерцию для вычисления.

Однако я хотел бы оставить проблему разреженной для рассмотрения скорости, так как я должен выполнить это вычисление бесчисленное множество раз.

Этот обеспечил хорошее начало, теперь я ищу существующую эффективную реализацию python, применимую к матрице разреженной симметрии c, или любой подсказки о том, как действовать .

В частности, любая декомпозиция матрицы, которая также поможет решить Mx = b для x ( b известно) будет приветствоваться, поскольку я также должен сделать это до вычисление инерции M .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...