Scientific journal
Modern high technologies
ISSN 1812-7320
"Перечень" ВАК
ИФ РИНЦ = 0,940

COMPARATIVE ANALYSIS OF THE METHODS OF FINDING EIGENVALUES OF OPERATORS

Torshina O.A. 1 Moskvina E.A. 1 Ivanova E.V. 1
1 Magnitogorsk State Technical University
Currently, the most productive development of various types of modeling. As a result, a variety of models are created. Moreover, most of them are based on boundary value problems, for solving which eigenvalues and eigenvectors of the considered operators are used. Finding which in many cases is rather difficult. For instance, in mechanical and electrical systems, eigenvalues characterize natural frequencies and the eigenvectors describe the forms of these frequencies. In the theory of dynamic systems, the eigenvalues show the pattern of change in the system over time, as well as the system stability. In construction industry they determine critical loads values of building structures with the help of eigenvalues and eigenvectors. As a consequence, in computational mathematics there appears the need to create efficient and sustainable methods for finding the eigenvalues of matrices, which can also be used to find eigenvectors. As is generally known, there is no universal algorithm that can provide an effective solution of the assigned tasks. In this article, the methods for finding eigenvalues will be considered, and a comparative analysis of the selected meters will be realized.
mathematical modeling
numerical methods
eigenvalues
eigenfunctions
convergence condition

В данное время вопрос о нахождении собственных чисел и собственных векторов приобретает огромное значение. Таким образом, появились новые численные методы для нахождения собственных характеристик абстрактных операторов. В 1894 г. французским ученым Анри Пуанкаре на частном примере рассмотрена аналогия алгебраической задачи к теории краевых задач математической физики. Установление этой аналогии способствовало зарождению аналитической теории собственных значений. А в 1957 г. получен новый метод приближенного вычисления собственных чисел оператора Штурма – Лиувилля. Создателями данного метода явились такие великие математики XX в., как И.М. Гельфанд и Л.А. Дикий. Позднее, в 1995 г., С.А. Шкариным доказано, что данная система бесконечных линейных уравнений определенного типа имеет не только единственное решение. Это утверждение повлекло появление собственных чисел операторов, которые получились благодаря созданию класса особых операторов, который ввели В.А. Садовничий и В.Е. Подольский. Таким образом, математики доказали возможность решения данного класса задач с заданной погрешностью вычисления. После высказанных утверждений возникло много работ по данной проблематике [1, 2]. Для того чтобы распространить полученные результаты и в другие науки, потребовалось изучение спектральной теории дифференциальных операторов. В результате чего некоторые задачи аналитически решить так и не удалось [3], это привело к созданию определенных численных методов [4, 5].

Цель исследования: рассмотреть методы нахождения собственных значений операторов, такие как метод А.Н. Крылова и метод QR-разложения, осуществить программную реализацию и сравнительный анализ.

Материалы и методы исследования

Вычисления проводились на программной платформе .NET Framework 4.5.1, в качестве IDE использовалась Microsoft Visual Studio 2017.

Рассмотрим решение задачи нахождения собственных значений матрицы

torh01.wmf

методами А.Н. Крылова и методом QR-разложения с заданной точностью.

Результаты исследования и их обсуждение

Метод А.Н. Крылова

Для этого сначала выберем начальный вектор: torh02.wmf тогда

torh03.wmf

torh04.wmf

Система для нахождения p1, p2, p3, p4 будет выглядеть следующим образом:

torh05.wmf

Данная система алгебраических уравнений решается с помощью точных методов. СЛАУ можно решить методом Гаусса или Крамера. Далее получим

p1 = 189, p2 = –8992, p3 = 103138, p4 = 919881, p5 = –7869413.

Следственно, характеристическое уравнение для матрицы A будет выглядеть так:

torh06.wmf

Корни характеристического уравнения будут следующие:

λ1 = 123,324, λ2 = 28,3403, λ3 = 40,0631, λ4 = –8,98375, λ5 = 6,25585.

Метод QR-разложения

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

Осуществляется данный процесс с использованием матриц Хаусхолдера по следующей формуле:

torh07.wmf

здесь υ – случайный ненулевой вектор-столбец, E – единичная матрица заданной размерности и υυT – квадратная матрица также заданной размерности.

В завершении данного процесса получим квадратную матрицу, элементами которой являются вещественные числа. Кроме того, элементы матрицы, расположенные симметрично ее главной диагонали, одинаковы. Заметим также, что результат умножения полученной матрицы на транспонированную ей матрицу равен единичной матрице. Далее берем вектор v случайным образом. В связи с этим будут иметь место дополнительные требования к построенной матрице [6].

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

torh08.wmf torh09.wmf, torh10.wmf.

Тем самым будет построена матрица Хаусхолдера. Далее для нахождения вектора v воспользуемся формулой

torh11.wmf

где torh12.wmf – норма вектора евклидова пространства, torh13.wmf.

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

Остановимся на более подробном описании и детальном анализе указанного процесса. Для этого возьмем A0 = A. Далее выполним преобразование Хаусхолдера H1(A1 = H1A0). Последнее позволит получить из матрицы A0 новую матрицу A1, у которой все элементы первого столбца, расположенные под главной диагональю, равны нулю:

torh14.wmf

Первый столбец преобразованной матрицы равен H1. В данном случае произведем замену вектора на выражение torh15.wmf.

Далее необходимо воспользоваться формулой для поиска вектора:

torh16.wmf

torh17.wmf

Матрицу Хаусхолдера можно найти по следующей формуле:

torh18.wmf

Второй шаг состоит в преобразовании матрицы H2(A2 = H2A1) так, чтобы получилось обнуление элементов, которые находятся ниже главной диагонали второго столбца матрицы A1. Для этого необходимо взять новый вектор размерности n-1, который будет равен torh19.wmf Тем самым, получим

torh20.wmf

torh21.wmf

torh22.wmf

Для того чтобы получить искомое выражение, необходимо повторять данный процесс n-1 раз:

A = QR,

где

torh23.wmf

Алгоритм Гаусса и преобразование Хаусхолдера во многом идентичны. Различие методов состоит в получении нулевых элементов, находящихся под главной диагональю матрицы [7].

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

torh24.wmf

torh25.wmf

torh26.wmf

torh27.wmf

torh28.wmf

Осуществление итерационного процесса происходит в несколько этапов, а именно:

1. Умножение матрицы A(k), ортогональной Q(k) и верхней треугольной R(k).

2. Умножение матриц с конца. Данный этап получится в том случае, если матрицы согласованы.

Схожесть объектов A(k) и A(k+1) не сложно заметить в том случае, если учитывать ортогональность torh29.wmf. Данное утверждение можно записать в следующей символьной форме:

torh30.wmf

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

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

Для проверки достижения заданной точности используют формулу

torh31.wmf

В результате собственные значения равны диагональным элементам. Матрица A(k) имеет квазидиагональную матрицу из-за соответствия диагонального блока, соответствующей размерности 2 на 2, который отвечает комплексно сопряженным значениям. Элементы таких блоков терпят преобразование в ходе итерационного процесса. При этом полученный ряд, состоящий из комплексных значений, сходится. В процессе организации данного процесса возможно появление комплексно-сопряженной пары значений, которая при помощи j-го и (j + 1)-го столбцов с элементами torh32.wmf несколько изменяет ход решения. Однако, учитывая квадратное уравнение torh33.wmf, можно заметить, что элементы уравнения, начиная с некоторого номера, меняются не так явно. Для окончания итерационного процесса используется формула

torh34.wmf

Многократные вычисления, которые необходимы для QR-факторизации матрицы, являются существенным недостатком.

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

torh35.wmf

Таким образом, эффективность QR-алгоритма может быть повышена [8].

Проанализируем:

torh36.wmf

где A(0) – матрица Хессенберга, которая имеет следующую структуру.

torh37.wmf

где знак x – это отличная от нуля составляющая.

Для более экономичного процесса QR-разложения на протяжении циклического процесса матрицы A(k) необходимо сохранять треугольную матрицу, которая находится над главной диагональю [9].

Определяем матрицу A(i) и сравниваем с заданной точностью. Процесс продолжается пока точность матрицы не станет меньше либо равной заданной точности. При помощи программы написанной на Maple, поддиагональные элементы меньше заданной точности оказываются на восемнадцатом шаге и условие сходимости выполняется.

torh38.wmf

Найдем собственные значения [10]. Первое собственное значение будет равно элементу torh39.wmf. Для последующего нахождения собственных значений воспользуемся формулой

torh40.wmf.

В том случае, когда возьмем j = 2, получим два квадратных уравнения, из которых найдем собственные значения, которые будут равны

λ2 = 28,337, λ3 = 40,059.

Аналогично найдем λ4 и λ5, при подстановке в формулу j = 4:

λ4 = –8,9800 и λ5 = 6,2503.

В итоге получили следующие собственные значения:

λ1 = 123,37, λ2 = 28,337, λ3 = 40,059, λ4 = –8,9800, λ5 = 6,2503.

Выводы

Для сравнительного анализа по очереди вычислим собственные значения матрицы с помощью метода А.Н. Крылова и метода QR-разложения. Результаты вычислений занесены в таблицу.

Таблица собственных значений матрицы 5х5

п/п

Метод А.Н. Крылова

Метод QR-разложения

Абсолютная погрешность

1

123,324

123,37

0,04600

2

28,3403

28,357

0,01670

3

40,0631

40,059

0,00410

4

–8,98375

–8,9800

0,00375

5

6,25585

6,2503

0,00555

Изучив подробно методы А.Н. Крылова и QR-разложения и применив их к нашей матрице, можно сделать вывод о том, что: при нахождении собственных значений оба метода дают приблизительно один результат, но все же имеется различие на некоторые доли.

Высокая точность и достаточно простая реализация делают методы А.Н. Крылова и QR-разложения достаточно распространенными методами нахождения собственных значений.