Собственные Значения Матрицы: Нахождение Методом Леверье

Собственные значения матрицы можно находить разными способами, и один из них — метод Леверье. Это метод, который позволяет перейти к характеристическому многочлену матрицы без прямого раскрытия определителя. Его удобство в том, что коэффициенты этого многочлена можно вычислить через следы степеней матрицы. Далее рассмотрим, как именно работает эта схема.

Собственные Значения Матрицы: От Матрицы к Характеристическому Многочлену

Пусть задана квадратная матрица порядка \( n \):

\[ A = \begin{pmatrix} a_{11} & a_{12} & \dots & a_{1n} \\ a_{21} & a_{22} & \dots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{n1} & a_{n2} & \dots & a_{nn} \end{pmatrix}. \]

Чтобы найти собственные значения матрицы \( A \), нужно составить ее характеристический многочлен

\[ \chi(\lambda)=\det(\lambda\cdot I-A), \]

где \( I \) — единичная матрица порядка \( n \).

В общем виде этот многочлен можно записать так:

\[ \chi(\lambda) = \lambda^n -\sigma_1\cdot \lambda^{n-1} +\sigma_2\cdot \lambda^{n-2} -\dots +(-1)^n\cdot\sigma_n. \]

Тогда собственные значения матрицы \( A \) находятся из уравнения

\[ \chi(\lambda)=0. \]

Значит, главная задача метода — найти коэффициенты

\[ \sigma_1,\sigma_2,\dots,\sigma_n. \]

Конечно, можно было бы напрямую раскрывать определитель \( \det(\lambda\cdot I-A) \). Но всегда ли это удобно? Для матриц высокого порядка такой подход быстро становится громоздким. Именно поэтому метод Леверье предлагает другой подход.

Сначала посмотрим, что означают коэффициенты \( \sigma_1,\sigma_2,\dots,\sigma_n \).

Пусть \( \lambda_1,\lambda_2,\dots,\lambda_n \) — собственные значения матрицы \( A \), записанные с учетом их алгебраических кратностей. Тогда характеристический многочлен можно представить в виде

\[ \chi(\lambda) = (\lambda-\lambda_1)\cdot (\lambda-\lambda_2)\cdot \dots\cdot (\lambda-\lambda_n). \]

Раскрыв скобки, получим такой многочлен:

\[ \begin{aligned} \chi(\lambda) =\lambda^n -(\lambda_1+\lambda_2+\dots+\lambda_n)\cdot \lambda^{n-1} +\left(\sum_{1\le i<j\le n}\lambda_i\cdot\lambda_j\right)\cdot \lambda^{n-2} \\ -\left(\sum_{1\le i<j<k\le n}\lambda_i\cdot\lambda_j\cdot\lambda_k\right)\cdot \lambda^{n-3} +\dots +(-1)^n\cdot \lambda_1\cdot\lambda_2\cdot\dots\cdot\lambda_n. \end{aligned} \]

Но этот же характеристический многочлен уже был записан в виде

\[ \chi(\lambda) = \lambda^n -\sigma_1\cdot \lambda^{n-1} +\sigma_2\cdot \lambda^{n-2} -\sigma_3\cdot \lambda^{n-3} +\dots +(-1)^n\cdot\sigma_n. \]

Теперь сравним коэффициенты при одинаковых степенях \( \lambda \). Именно из этого сравнения получаем, что коэффициенты \( \sigma_1,\sigma_2,\dots,\sigma_n \) являются элементарными симметрическими функциями собственных значений:

\[ \begin{gathered} \sigma_1=\lambda_1+\lambda_2+\dots+\lambda_n, \\[4pt] \sigma_2=\sum_{1\le i<j\le n}\lambda_i\cdot\lambda_j, \\[4pt] \sigma_3=\sum_{1\le i<j<k\le n}\lambda_i\cdot\lambda_j\cdot\lambda_k, \\[4pt] \dots \\[4pt] \sigma_n=\lambda_1\cdot\lambda_2\cdot\dots\cdot\lambda_n. \end{gathered} \]

Но здесь есть важный момент. Сами собственные значения еще неизвестны. Поэтому напрямую через эти формулы коэффициенты найти нельзя. Нужен способ вычислить их через саму матрицу \( A \). Именно к этому и переходит метод Леверье.

Следы Степеней Матрицы: Как Получить Нужные Суммы

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

\[ S_k= \lambda_1^k+\lambda_2^k+\dots+\lambda_n^k, \qquad k=1,2,\dots,n. \]

Например,

\[ \begin{gathered} S_1=\lambda_1+\lambda_2+\dots+\lambda_n, \\[4pt] S_2=\lambda_1^2+\lambda_2^2+\dots+\lambda_n^2, \\[4pt] S_3=\lambda_1^3+\lambda_2^3+\dots+\lambda_n^3. \end{gathered} \]

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

Сумма собственных значений матрицы равна ее следу. Поэтому

\[ S_1=\operatorname{tr}(A). \]

Поскольку след матрицы — это сумма элементов ее главной диагонали, имеем

\[ S_1 = \operatorname{tr}(A) = a_{11}+a_{22}+\dots+a_{nn} = \sum_{i=1}^{n}a_{ii}. \]

А что будет для степеней матрицы? Собственными значениями матрицы \( A^k \) являются числа

\[ \lambda_1^k,\lambda_2^k,\dots,\lambda_n^k. \]

Значит, сумма этих чисел равна следу матрицы \( A^k \). Поэтому

\[ S_k=\operatorname{tr}(A^k). \]

Чтобы записать это подробнее, обозначим элементы матрицы \( A^k \) так:

\[ A^k= \begin{pmatrix} a_{11}^{(k)} & a_{12}^{(k)} & \dots & a_{1n}^{(k)} \\ a_{21}^{(k)} & a_{22}^{(k)} & \dots & a_{2n}^{(k)} \\ \vdots & \vdots & \ddots & \vdots \\ a_{n1}^{(k)} & a_{n2}^{(k)} & \dots & a_{nn}^{(k)} \end{pmatrix}. \]

Тогда для второй степени матрицы имеем

\[ S_2 = \operatorname{tr}(A^2) = a_{11}^{(2)}+a_{22}^{(2)}+\dots+a_{nn}^{(2)} = \sum_{i=1}^{n}a_{ii}^{(2)}. \]

Аналогично для третьей степени:

\[ S_3 = \operatorname{tr}(A^3) = a_{11}^{(3)}+a_{22}^{(3)}+\dots+a_{nn}^{(3)} = \sum_{i=1}^{n}a_{ii}^{(3)}. \]

В общем виде:

\[ S_k = \operatorname{tr}(A^k) = a_{11}^{(k)}+a_{22}^{(k)}+\dots+a_{nn}^{(k)} = \sum_{i=1}^{n}a_{ii}^{(k)}, \qquad k=1,2,\dots,n. \]

Здесь нужно быть внимательным. Например, \( \operatorname{tr}(A^2) \) — это след матрицы \( A^2 \). Сначала нужно найти произведение \( A^2=A\cdot A \), а уже потом сложить элементы главной диагонали этой новой матрицы.

Другими словами,

\[ \operatorname{tr}(A^2) \neq a_{11}^2+a_{22}^2+\dots+a_{nn}^2 \]

в общем случае. Это частая ошибка, поэтому на нее стоит обратить особое внимание.

Таким образом, через матрицу \( A \) можно найти величины

\[ S_1,S_2,\dots,S_n. \]

А уже через них можно перейти к коэффициентам характеристического многочлена.

Метод Леверье: Последовательное Вычисление Коэффициентов

Теперь у нас есть все необходимое для основной части метода. Известны степенные суммы

\[ S_1,S_2,\dots,S_n, \]

и нужно найти коэффициенты

\[ \sigma_1,\sigma_2,\dots,\sigma_n. \]

Для этого используют тождества Ньютона, или формулы Ньютона–Жирара. Они связывают степенные суммы собственных значений \( S_k \) с коэффициентами характеристического многочлена \( \sigma_k \).

Для нашей записи характеристического многочлена эти формулы имеют вид:

\[ \begin{gathered} S_1-\sigma_1=0, \\[4pt] S_2-\sigma_1\cdot S_1+2\cdot\sigma_2=0, \\[4pt] S_3-\sigma_1\cdot S_2+\sigma_2\cdot S_1-3\cdot\sigma_3=0, \\[4pt] S_4-\sigma_1\cdot S_3+\sigma_2\cdot S_2-\sigma_3\cdot S_1+4\cdot\sigma_4=0. \end{gathered} \]

Далее формулы продолжаются по тому же правилу. В общем виде:

\[ S_k -\sigma_1\cdot S_{k-1} +\sigma_2\cdot S_{k-2} -\dots +(-1)^{k-1}\cdot\sigma_{k-1}\cdot S_1 +(-1)^k\cdot k\cdot\sigma_k =0. \]

Из этих равенств можно последовательно находить коэффициенты характеристического многочлена.

Из первой формулы имеем:

\[ \sigma_1=S_1. \]

Поскольку

\[ S_1=\operatorname{tr}(A), \]

то

\[ \sigma_1=\operatorname{tr}(A). \]

Из второй формулы:

\[ S_2-\sigma_1\cdot S_1+2\cdot\sigma_2=0. \]

Отсюда

\[ \sigma_2= \frac{1}{2}\cdot (\sigma_1\cdot S_1-S_2). \]

Из третьей формулы:

\[ S_3-\sigma_1\cdot S_2+\sigma_2\cdot S_1-3\cdot\sigma_3=0. \]

Поэтому

\[ \sigma_3= \frac{1}{3}\cdot (\sigma_2\cdot S_1-\sigma_1\cdot S_2+S_3). \]

Из четвертой формулы аналогично получаем:

\[ \sigma_4= \frac{1}{4}\cdot (\sigma_3\cdot S_1-\sigma_2\cdot S_2+\sigma_1\cdot S_3-S_4). \]

Каждый следующий коэффициент вычисляется через уже найденные предыдущие коэффициенты и следы степеней матрицы. Именно поэтому метод Леверье работает последовательно: сначала \( \sigma_1 \), потом \( \sigma_2 \), далее \( \sigma_3 \), и так до \( \sigma_n \).

В общем виде рекуррентная формула выглядит так:

\[ \sigma_k= \frac{1}{k}\cdot \left( \sigma_{k-1}\cdot S_1 -\sigma_{k-2}\cdot S_2 +\sigma_{k-3}\cdot S_3 -\dots +(-1)^{k-1}\cdot\sigma_0\cdot S_k \right), \]

где

\[ k=1,2,\dots,n, \qquad \sigma_0=1. \]

После нахождения всех коэффициентов составляем характеристический многочлен

\[ \chi(\lambda) = \lambda^n -\sigma_1\cdot \lambda^{n-1} +\sigma_2\cdot \lambda^{n-2} -\dots +(-1)^n\cdot\sigma_n. \]

Далее собственные значения матрицы находятся как корни характеристического уравнения

\[ \chi(\lambda)=0. \]

Итак, метод Леверье сводит нахождение собственных значений к трем основным действиям: вычислить следы степеней матрицы, по ним найти коэффициенты характеристического многочлена и решить характеристическое уравнение.

Практическая Часть: Как Найти Собственные Значения Методом Леверье

Теперь рассмотрим, как метод Леверье применяется на практике. В каждом примере будем действовать последовательно: сначала найдем следы степеней матрицы, затем вычислим коэффициенты характеристического многочлена, а после этого найдем его корни.

Пример 1. Найти собственные значения матрицы

\[ A= \begin{pmatrix} 4 & 1\\ 2 & 3 \end{pmatrix}. \]

Для матрицы второго порядка характеристический многочлен имеет вид

\[ \chi(\lambda) = \lambda^2-\sigma_1\cdot\lambda+\sigma_2. \]

Поэтому нужно найти коэффициенты \( \sigma_1,\sigma_2 \).

Сначала вычисляем первую степенную сумму:

\[ S_1=\operatorname{tr}(A)=4+3=7. \]

Значит,

\[ \sigma_1=S_1=7. \]

Далее находим \( A^2 \):

\[ A^2= \begin{pmatrix} 4 & 1\\ 2 & 3 \end{pmatrix} \cdot \begin{pmatrix} 4 & 1\\ 2 & 3 \end{pmatrix} = \begin{pmatrix} 18 & 7\\ 14 & 11 \end{pmatrix}. \]

Теперь вычисляем след матрицы \( A^2 \):

\[ S_2=\operatorname{tr}(A^2)=18+11=29. \]

По формуле Леверье имеем

\[ \sigma_2= \frac{1}{2}\cdot(\sigma_1\cdot S_1-S_2). \]

Подставляем найденные значения:

\[ \sigma_2= \frac{1}{2}\cdot(7\cdot7-29) = \frac{1}{2}\cdot(49-29) = 10. \]

Значит, характеристический многочлен имеет вид

\[ \chi(\lambda) = \lambda^2-7\cdot\lambda+10. \]

Найдем его корни:

\[ \lambda^2-7\cdot\lambda+10=0. \]

Разложим квадратный трехчлен на множители:

\[ \lambda^2-7\cdot\lambda+10 = (\lambda-2)\cdot(\lambda-5). \]

Поэтому

\[ (\lambda-2)\cdot(\lambda-5)=0. \]

Отсюда получаем собственные значения:

\[ \lambda_1=2, \qquad \lambda_2=5. \]

Пример 2. Найти собственные значения матрицы

\[ A= \begin{pmatrix} 2 & 1 & 0\\ 1 & 2 & 0\\ 0 & 0 & 3 \end{pmatrix}. \]

Для матрицы третьего порядка характеристический многочлен записываем так:

\[ \chi(\lambda) = \lambda^3 -\sigma_1\cdot\lambda^2 +\sigma_2\cdot\lambda -\sigma_3. \]

Значит, нужно найти три коэффициента \( \sigma_1,\sigma_2,\sigma_3 \).

Начинаем со следа матрицы \( A \):

\[ S_1=\operatorname{tr}(A)=2+2+3=7. \]

Поэтому

\[ \sigma_1=S_1=7. \]

Далее вычисляем \( A^2 \):

\[ A^2= \begin{pmatrix} 2 & 1 & 0\\ 1 & 2 & 0\\ 0 & 0 & 3 \end{pmatrix} \cdot \begin{pmatrix} 2 & 1 & 0\\ 1 & 2 & 0\\ 0 & 0 & 3 \end{pmatrix} = \begin{pmatrix} 5 & 4 & 0\\ 4 & 5 & 0\\ 0 & 0 & 9 \end{pmatrix}. \]

Находим вторую степенную сумму:

\[ S_2=\operatorname{tr}(A^2)=5+5+9=19. \]

Теперь находим второй коэффициент:

\[ \sigma_2= \frac{1}{2}\cdot(\sigma_1\cdot S_1-S_2). \]

Подставляем значения:

\[ \sigma_2= \frac{1}{2}\cdot(7\cdot7-19) = \frac{1}{2}\cdot(49-19) = 15. \]

Переходим к третьему коэффициенту. Для этого нужно найти \( A^3 \). Умножаем матрицу \( A^2 \) на матрицу \( A \):

\[ A^3=A^2\cdot A. \]

Имеем

\[ A^3= \begin{pmatrix} 5 & 4 & 0\\ 4 & 5 & 0\\ 0 & 0 & 9 \end{pmatrix} \cdot \begin{pmatrix} 2 & 1 & 0\\ 1 & 2 & 0\\ 0 & 0 & 3 \end{pmatrix} = \begin{pmatrix} 14 & 13 & 0\\ 13 & 14 & 0\\ 0 & 0 & 27 \end{pmatrix}. \]

Значит,

\[ S_3=\operatorname{tr}(A^3)=14+14+27=55. \]

Теперь используем формулу

\[ \sigma_3= \frac{1}{3}\cdot (\sigma_2\cdot S_1-\sigma_1\cdot S_2+S_3). \]

Подставляем найденные значения:

\[ \sigma_3= \frac{1}{3}\cdot (15\cdot7-7\cdot19+55). \]

Вычисляем:

\[ \sigma_3= \frac{1}{3}\cdot (105-133+55) = \frac{27}{3} = 9. \]

Итак,

\[ \sigma_1=7, \qquad \sigma_2=15, \qquad \sigma_3=9. \]

Поэтому характеристический многочлен имеет вид

\[ \chi(\lambda) = \lambda^3-7\cdot\lambda^2+15\cdot\lambda-9. \]

Найдем корни уравнения

\[ \lambda^3-7\cdot\lambda^2+15\cdot\lambda-9=0. \]

Разложим многочлен на множители:

\[ \lambda^3-7\cdot\lambda^2+15\cdot\lambda-9 = (\lambda-1)\cdot(\lambda-3)^2. \]

Поэтому

\[ (\lambda-1)\cdot(\lambda-3)^2=0. \]

Отсюда

\[ \lambda_1=1, \qquad \lambda_2=3, \qquad \lambda_3=3. \]

Пример 3. Найти собственные значения матрицы

\[ A= \begin{pmatrix} 2 & 1 & 0 & 0\\ 1 & 2 & 0 & 0\\ 0 & 0 & 3 & 1\\ 0 & 0 & 1 & 3 \end{pmatrix}. \]

Для матрицы четвертого порядка характеристический многочлен имеет вид

\[ \chi(\lambda) = \lambda^4 -\sigma_1\cdot\lambda^3 +\sigma_2\cdot\lambda^2 -\sigma_3\cdot\lambda +\sigma_4. \]

Поэтому нужно найти коэффициенты \( \sigma_1,\sigma_2,\sigma_3,\sigma_4 \).

Благодаря нулевым элементам умножение матриц здесь выполняется относительно удобно, но алгоритм остается тем же.

Начинаем с первой степенной суммы:

\[ S_1=\operatorname{tr}(A)=2+2+3+3=10. \]

Отсюда

\[ \sigma_1=S_1=10. \]

Далее находим \( A^2 \):

\[ A^2= \begin{pmatrix} 2 & 1 & 0 & 0\\ 1 & 2 & 0 & 0\\ 0 & 0 & 3 & 1\\ 0 & 0 & 1 & 3 \end{pmatrix} \cdot \begin{pmatrix} 2 & 1 & 0 & 0\\ 1 & 2 & 0 & 0\\ 0 & 0 & 3 & 1\\ 0 & 0 & 1 & 3 \end{pmatrix} = \begin{pmatrix} 5 & 4 & 0 & 0\\ 4 & 5 & 0 & 0\\ 0 & 0 & 10 & 6\\ 0 & 0 & 6 & 10 \end{pmatrix}. \]

Поэтому

\[ S_2=\operatorname{tr}(A^2)=5+5+10+10=30. \]

Находим второй коэффициент:

\[ \sigma_2= \frac{1}{2}\cdot(\sigma_1\cdot S_1-S_2). \]

Подставляем найденные значения:

\[ \sigma_2= \frac{1}{2}\cdot(10\cdot10-30) = \frac{1}{2}\cdot70 = 35. \]

Теперь вычисляем \( A^3 \). Для этого умножаем матрицу \( A^2 \) на матрицу \( A \):

\[ A^3=A^2\cdot A. \]

Получаем

\[ A^3= \begin{pmatrix} 5 & 4 & 0 & 0\\ 4 & 5 & 0 & 0\\ 0 & 0 & 10 & 6\\ 0 & 0 & 6 & 10 \end{pmatrix} \cdot \begin{pmatrix} 2 & 1 & 0 & 0\\ 1 & 2 & 0 & 0\\ 0 & 0 & 3 & 1\\ 0 & 0 & 1 & 3 \end{pmatrix} = \begin{pmatrix} 14 & 13 & 0 & 0\\ 13 & 14 & 0 & 0\\ 0 & 0 & 36 & 28\\ 0 & 0 & 28 & 36 \end{pmatrix}. \]

Значит,

\[ S_3=\operatorname{tr}(A^3)=14+14+36+36=100. \]

Третий коэффициент находим по формуле

\[ \sigma_3= \frac{1}{3}\cdot (\sigma_2\cdot S_1-\sigma_1\cdot S_2+S_3). \]

Подставляем значения:

\[ \sigma_3= \frac{1}{3}\cdot (35\cdot10-10\cdot30+100). \]

Значит,

\[ \sigma_3= \frac{1}{3}\cdot (350-300+100) = \frac{150}{3} = 50. \]

Осталось найти четвертый коэффициент. Для этого вычисляем \( A^4 \). Умножаем матрицу \( A^3 \) на матрицу \( A \):

\[ A^4=A^3\cdot A. \]

Имеем

\[ A^4= \begin{pmatrix} 14 & 13 & 0 & 0\\ 13 & 14 & 0 & 0\\ 0 & 0 & 36 & 28\\ 0 & 0 & 28 & 36 \end{pmatrix} \cdot \begin{pmatrix} 2 & 1 & 0 & 0\\ 1 & 2 & 0 & 0\\ 0 & 0 & 3 & 1\\ 0 & 0 & 1 & 3 \end{pmatrix} = \begin{pmatrix} 41 & 40 & 0 & 0\\ 40 & 41 & 0 & 0\\ 0 & 0 & 136 & 120\\ 0 & 0 & 120 & 136 \end{pmatrix}. \]

Поэтому

\[ S_4=\operatorname{tr}(A^4)=41+41+136+136=354. \]

Для четвертого коэффициента используем формулу

\[ \sigma_4= \frac{1}{4}\cdot (\sigma_3\cdot S_1-\sigma_2\cdot S_2+\sigma_1\cdot S_3-S_4). \]

Подставляем:

\[ \sigma_4= \frac{1}{4}\cdot (50\cdot10-35\cdot30+10\cdot100-354). \]

Вычисляем:

\[ \sigma_4= \frac{1}{4}\cdot (500-1050+1000-354) = \frac{96}{4} = 24. \]

Итак, получили коэффициенты:

\[ \sigma_1=10, \qquad \sigma_2=35, \qquad \sigma_3=50, \qquad \sigma_4=24. \]

Поэтому характеристический многочлен имеет вид

\[ \chi(\lambda) = \lambda^4 -10\cdot\lambda^3 +35\cdot\lambda^2 -50\cdot\lambda +24. \]

Найдем его корни:

\[ \lambda^4 -10\cdot\lambda^3 +35\cdot\lambda^2 -50\cdot\lambda +24 =0. \]

Разложим многочлен на множители:

\[ \lambda^4 -10\cdot\lambda^3 +35\cdot\lambda^2 -50\cdot\lambda +24 = (\lambda-1)\cdot(\lambda-2)\cdot(\lambda-3)\cdot(\lambda-4). \]

Поэтому

\[ (\lambda-1)\cdot(\lambda-2)\cdot(\lambda-3)\cdot(\lambda-4)=0. \]

Отсюда получаем собственные значения:

\[ \lambda_1=1, \qquad \lambda_2=2, \qquad \lambda_3=3, \qquad \lambda_4=4. \]

Что Стоит Рассмотреть Дальше: Методы, Которые Дополняют Тему

После метода Леверье стоит сравнить его с другими подходами к нахождению собственных значений. Так легче увидеть, чем разные алгоритмы отличаются друг от друга и в каких случаях каждый из них удобен.

  1. Метод Данилевского: Переход к форме Фробениуса — В статье речь пойдет о преобразовании матрицы к форме Фробениуса и нахождении собственных значений через ее многочлен.
  2. Метод Крылова: Векторы и характеристический многочлен — В статье будет показано, как через последовательность векторов построить систему для коэффициентов характеристического многочлена.
  3. Метод Фаддеева: Коэффициенты через матричные вычисления — В статье будет рассматриваться алгоритм, который позволяет находить коэффициенты многочлена через вычисление вспомогательных матриц.

Собственные Значения Матрицы: Превратите Метод Леверье в Код

Если вам нравится программирование, метод Леверье можно рассматривать не только как теоретический материал, но и как готовый алгоритм для реализации. Блок-схема ниже помогает увидеть всю логику программы: от ввода элементов матрицы до построения характеристического многочлена и нахождения собственных значений.

Попробуйте перенести этот алгоритм в Pascal, Python, C++ или другой язык, с которым вам удобно работать, — так формулы получают практическое применение и превращаются в удобный инструмент для вычислений.

Блок-схема алгоритма, которая шаг за шагом показывает, как методом Леверье находить собственные значения матрицы