Рассматриваются проблемы нахождения собственных значений и собственных векторов квадратной вещественной матрицы \( A \). Собственным числом называется число \( \lambda \) такое, что для некоторого ненулевого вектора (собственного вектора) \( x \) имеет место равенство: $$ \begin{equation} \tag{1} A x = \lambda x \end{equation} $$
С учетом того, что ищется нетривиальное решение уравнения (1), то $$ \begin{equation} \tag{2} \det (A - \lambda I) = 0. \end{equation} $$ Тем самым собственные значения \( \lambda \) матрицы \( A \) являются корнями характеристического многочлена \( n \)-ой степени (2). Задача отыскания собственных значений и собственных векторов матрицы сводится к построению характеристического многочлена, отысканию его корней и последующему нахождению нетривиальных решений уравнения (1) для найденных собственных значений.
Квадратная вещественная матрица порядка \( n \) имеет \( n \) собственных значений, при этом каждое собственное значение считается столько раз, какова его кратность как корня характеристического многочлена. Для симметричной матрицы \( A \) собственные значения вещественны, а собственные вектора, соответствующие различным собственным значениям, ортогональны, т.е. \( (x^i , x^j) = 0 \), если \( i \ne j \). Отметим также некоторые свойства собственных значений и собственных векторов для сопряженной матрицы \( A^T \): $$ \begin{equation} \tag{3} A^T y = \mu y \end{equation} $$
Для задач (1) и (3) имеем $$ \lambda_i = \mu_i, \quad i = 1, 2, \ldots, n, $$ $$ (x^i, y^i) = 0, \quad i \ne j. $$
Две квадратные матрицы \( A \) и \( B \) одинаковых размеров называются подобными, если существует такая невырожденная матрица \( P \), что \( A = P^{−1} B P \).
Подобные матрицы имеют одни и те же собственные значения, так как из (1) непосредственно следует $$ Bx = \lambda z, \quad z = P x. $$
Ряд стандартных программ вычисления собственных значений выполняют последовательность преобразования подобия \( P_к \), обладающих тем свойством, что матрицы \( P_k^{-1}А P_к \) становятся «более диагональными». Возникает, естественно, вопрос: «Насколько хорошо диагональные элементы матрицы аппроксимируют ее собственные значения?» Любое собственное значение матрицы \( A \) лежит по крайней мере в одном из кругов (круги Гершгорина) $$ |\lambda - a_{ii}| \leq \sum_{j = 1 \atop j \ne i}^n |a_{ij}|, \quad i = 1, 2, \ldots, n. $$
Приведем теперь некоторые сведения о возмущении собственных значений при возму- щении элементов матрицы. Помимо (1) рассмотрим задачу $$ \begin{equation} \tag{4} \tilde{A} \tilde{x} = \tilde{\lambda} \tilde{x}. \end{equation} $$
Ограничимся случаем, когда все собственные значения простые. С точностью до членов второго порядка возмущение собственных значений за счет возмущения матрицы дается оценкой $$ \begin{equation} \tag{5} |\tilde{\lambda}_i - \lambda_i| \leq c_i \|\tilde{A} - A\|, \quad i = 1, 2, \ldots, n. \end{equation} $$ Мерой устойчивости собственного значения \( \lambda_i \) служит величина $$ \begin{equation} \tag{6} c_i = \frac{\|x^{(i)}\|\|y^{(i)}\|}{|(x^{(i)},y^{(i)})|} \end{equation} $$ которая называется коэффициентом перекоса матрицы \( A \), соответствующим данному собственному значению. Здесь \( y^{(i)} \) — собственный вектор матрицы \( A^T \). Для нормированных собственных векторов задач (1) и (4) соответствующая оценка устойчивости имеет вид $$ \| \tilde{x}^{(i)} - x^{(i)}\| \leq \sum_{j=1 \atop j \ne i}^n \frac{c_i}{|\lambda_i - \lambda_j|}\|\tilde{A} - A\|. $$
В частности, для симметричной матрицы все коэффициенты перекоса равны единице и оценки устойчивости вычисления собственных значений оптимальны.
Пусть матрица \( A \) диагонализуема, \( P^{-1}AP = \mathrm{diag}(\lambda_1, \lambda_2, \ldots, \lambda_n) \), все ее собственные значения простые и $$ |\lambda_1| > |\lambda_2| > \ldots |\lambda_n|. $$ Для заданного вектора \( q^{(0)} \), имеющего единичную евклидову норму, степенной метод генерирует последовательность векторов \( q^{(k)} \) следующим образом
for k in [1, 2, ...]:
z[k] = A q[k+1]
q[k] = z[k] / np.linalg.norm(z[k])
lmbda[k] = np.dot(np.dot(A, q[k]), q[k])
Тем самым при использовании степенного метода находится максимальное по модулю собственное значение матрицы \( A \).
Учитывая, что собственные значения матрицы \( A^{−1} \) есть \( 1/\lambda_i \), \( i = 1, 2, \ldots, n \), используя последовательности (обратные итерации) $$ y^{k+1} = A^{-1} y^k, \quad k = 0, 1, \ldots $$ находится минимальное по модулю собственное значение матрицы \( A \).
Написать программу для нахождения максимального по модулю собственного значения и соответствующего собственного вектора симметричной матрицы с помощью степенного метода. С ее помощью найдите максимальное по модулю собственное значение матрицы Гильберта \( A \), когда $$ a_{ij} = \frac{1}{i + j -1} , \quad i = 1, 2, \ldots, n, \quad j = 1, 2, \ldots, n. $$ при значениях \( n \) от 2 до 10.
Написать программу для вычисления собственных значений трехдиагональной вещественной матрицы \( A \) с использованием метода вращения. Найти собственные числа трехдиагональной матрицы \( A \), для которой $$ a_{ii} = 2,\quad a_{ii+1} = -1-\alpha, \quad a_{ii-1} = -1+\alpha, \quad i = 1,2 \ldots, n - 1, $$ $$ a_{00} = 2, \quad a_{01} = -1 - \alpha, \quad a_{n-1 n} = -1 + \alpha, \quad a_{nn} = 2, $$ при различных значениях \( n \) и параметра \( \alpha \) (\( 0 \leq \alpha \leq 1 \)). Сравнить найденные собственные значения с точными.