Re[4]: о алгоритмах диагонализации вещественных симметричных
От: sanok  
Дата: 24.08.10 13:25
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Drednout, Вы писали:


D>>Здравствуйте, sanok, Вы писали:


S>>>А можно постановку задачи уточнить?

S>>>Посмотрите теорию здесь.
D>>У меня есть некая система, различным состояниям которой ставится в соответствие симметричные квадратные матрицы. И нужны часть собственных значений и собственных векторов этих матриц. Дело еще в том, что матрицы большого размера (до 40000*40000), а у меня всего 8 гигов памяти. Вот и ищу быстрый и экономный алгоритм диагонализации.

А>Для того, чтобы получить несколько (обычно, наибольших) собственных вектором и собственных значений, не обязательно диагонализировать всю матрицу. Есть итеративный алгоритм, который сходится к наибольшему собственному вектору:


А>x[n+1] = A x[n] / | x[n] |


А>Если нужен второй (очередной) собственный вектор, то на каждом шаге ветор x[n] нужно проектировать на пространство, перпендикулярное уже найденным векторам.


Вот здесь чуть более подробно
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.