Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МЕТОДИЧКА_числен_мет.DOC
Скачиваний:
47
Добавлен:
11.11.2019
Размер:
1.97 Mб
Скачать

Тема 5. Решение спектральной задачи

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

5.1. Метод скалярных произведений

Рассмотрим задачу отыскания максимального по модулю собственного значения матрицы А. По определению собственные значениями квадратной матрицы A называются числа, удовлетворяющие соотношению

Ax= λ x, (5.1)

где x - собственный вектор. Собственный вектор xi (i=1,…,n), соответствующий собственному значению λi, является решением однородной системы линейных алгебраических уравнений

(Aλ E) x = 0.

Пусть матрица A размерности m m имеет полную систему нормированных собственных векторов еi (I=1,…,m), т. е. || еi ||=1, и пусть

| λ1| > | λ2|  …  | λm|  0.

Зададим вектор

.

Будем последовательно вычислять векторы по итерационной формуле

xn+1 =Axn.

Тогда xn можно записать следующим образом:

.

Представим это равенство в виде

xn =c1λne1 +o(|λ|n).

Тогда имеем

(xn, xn)=| c1|2 | λ1|2n + o(|λ1|n|λ2|n).

(xn+1, xn)= λ1| c1|2 | λ1|2n + o(|λ1|n|λ2|n).

Находим:

,

при этом

λ =λ+O .

В процессе итераций при n , ||x || , если |λ |>1, ||x || 0, если |λ |<1, поэтому всегда найдется такое n, что в ЭВМ произойдет АВОСТ, если (при |λ |<1) x станет нулем. Чтобы этого не случилось, рекомендуется использовать следующий алгоритм:

e = ,

x =Ae ,

λ ,

где . Итерационный процесс прекращается, когда будет выполнено условие: | λ(n) - λ(n-1)| ≤ε.

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

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

Для нахождения минимального собственного значения матрицы А, найдем матрицу B= (A - λ1E) и применим для нее итерационный процесс для нахождения максимального по модулю собственного значения | λ1(B)|.

Если λ1(A) >0, то, очевидно, что λi (B)= λi (A)- λ1 (A) 0, i=1,2,…,m. Поэтому λ 1(B)= min(λi(A) - λ1(A))= min λi(A) - λ1(A), то есть minλi (A)= λ1(A)+λ1(B).

Если λ1(A) <0, то max λi(A)=min λi(A)+ λ1(B).

5.2. Метод вращения

Любую действительную, симметричную матрицу A можно привести к виду A = UD U–1 , где U – ортогональная матрица (U –1 = U T ),

D – диагональная матрица,

где λi – собственные значения матрицы A.

Следовательно, имеем U–1A U = D.

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

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

Итак, по заданной матрице A будем строить последовательность Ak так, чтобы Ak-1 находилась через Ak при помощи преобразования подобия со следующей матрицей вращения:

Пусть нашли . Найдем . Пусть это будет , k<l (ij = 1,…,m), и выбираем угол по формуле

.

Строится ортогональная матрица Vn, которая отличается от единичной матрицы E только элементами:

,

,

и делается преобразование подобия

.

При этом матрицы A(n-1) и Vn A(n-1) = B отличаются лишь k –й и lй строками, т. к. эти матрицы B являются линейными комбинациями тех же строк матрицы A(n-1):

,

.

Аналогично k –й и l -й столбцы матрицы A(n):

,

.

Элементы являются приближенными к собственным числам λi матрицы A, а столбцы матрицы

являются приближенными к собственным векторам матрицы A. При этом имеет место оценка погрешности

.