Обратный степенной метод
Обратный степенной метод, или метод обратных итераций, — итеративный алгоритм вычисления собственных векторов и значений. Позволяет искать собственные вектора и собственные значения произвольной матрицы. Обычно используется для вычисления собственных векторов, если для собственных значений известны достаточно хорошие приближения.
В вычислительном отношении метод похож на степенной метод. Вероятно, первоначально он был разработан для вычисления резонансных частот в механике[1].
Метод
Пусть имеется квадратная матрица и её приближённое собственное значение Начальный вектор может быть случайным или известным приближением собственного вектора. Метод сводится к последовательному вычислению векторов по формуле
где — нормирующие константы. Обычно на каждом шаге просто нормируют вектор к единичной длине. Последовательность векторов не обязательно сходится, но начиная с некоторого шага любой вектор последовательности является собственным с точностью до ошибок округления при умножении на матрицу. Ему соответствует ближайшее к собственное значение. После того как найден собственный вектор , можно точно вычислить это собственное значение по формуле:
Чем ближе к собственному значению, тем быстрее сходимость. Когда известны хорошие приближения собственных значений, может потребоваться всего 2 — 3 итерации.
Обоснование и сходимость
Обратный степенной метод отличается от степенного метода только используемой для умножения матрицей. Поэтому он позволяет найти собственный вектор, соответствующий максимальному по модулю собственному значению матрицы . Собственные значения этой матрицы — где — собственные значения матрицы . Наибольшее по модулю собственное значение соответствует наименьшему по модулю значению
Собственные вектора и совпадают, поскольку:
В частности, если задать , а матрица имеет обратную, мы найдём собственный вектор с минимальным по модулю собственным значением.
В плане итераций обратный степенной метод ничем не отличается от степенного метода. Поэтому доказательство его сходимости идентично и метод имеет такую же линейную скорость сходимости.
Если неизвестны приближения собственных значений
Пределы для собственных значений матрицы можно найти с помощью векторно подчинённой нормы матрицы. А именно
- для любого собственного значения .
Если собственные значения матрицы достаточно хорошо разделены, то, выбирая на отрезке начальные значения с достаточно малым шагом, можно найти все собственные значения и вектора матрицы. Однако в этом случае более эффективным может оказаться метод итераций Рэлея.
Примечания
- ↑ Ernst Pohlhausen, Berechnung der Eigenschwingungen statisch-bestimmter Fachwerke, ZAMM — Zeitschrift für Angewandte Mathematik und Mechanik 1, 28-42 (1921).