Собственные значения
Страница 5
На каждом основном шаге изменяются лишь те элементы матрицы аij, которые расположены в ее правой нижней (заштрихованной) части. Таким образом на k-м шаге преобразуется только матрица порядка (п — k + 1), занимающая правый нижний угол исходной матрицы. Ясно, что на каждой следующей стадии выполняется меньшее число преобразований, чем на предыдущей. Всего для приведения матрицы к трехдиагональному виду требуется выполнить (n2 — Зп + 2)/2 преобразований.
Наш опыт применения метода Гивенса показывает, что можно при выполнении одного шага преобразований обратить в нуль сразу все элементы целой строки и столбца, стоящие вне трех диагоналей матрицы. Метод, позволяющий выполнить такое преобразование, предложил Хаусхолдер .
Метод Хаусхолдера для симметричных матриц
Метод Хаусхолдера позволяет привести матрицу к трехдиагональному виду, выполнив почти вдвое меньше вычислений по сравнению с другими методами. Это обусловлено тем, что при его применении становятся нулевыми сразу все элементы строк и столбцов, стоящие вне трех диагоналей матрицы. Метод Хаусхолдера позволяет получить требуемый результат быстрее, чем метод Гивенса, так как связан с выполнением меньшего числа, хотя и более сложных преобразований. Это его свойство особенно ярко проявляется применительно к большим матрицам. Хотя в методе Хаусхолдера вместо плоских вращении используются эрмитовы ортогональные преобразования матриц, трехдиагональная форма матрицы, которую получают этим методом, имеет те же собственные значения, что и трехдиагональная матрица, получаемая методом Гивенса. При использовании метода Хаусхолдера на п — 2 основных шагах выполняются следующие преобразования:
Аk = РkAk-1Рk, k=1, 2, ., п-2,
где Aо == А.
Каждая преобразующая матрица имеет вид
uk ukT
Pk = E - -------------- ,
2Kk2
где
ui,k = 0 при i = 1, 2, …, k,
ui,k = ak,i при i = k+2, …, n,
uk+1,k = ak,k+1 ± Sk.
Здесь
n 1/2
Sk = S a2k,i
i=k+1
2K2k = S2k ± ak, k+1 Sk.
В этих уравнениях берется знак, соответствующий элементу ak,k+1. Это позволяет сделать значение иk+1,k максимальным. Отметим, что методами Гивенса и Хаусхолдера можно пользоваться и в случае несимметричных матриц, приводя их, правда, не к трехдиагональному, а другому частному виду треугольной матрицы известной как матрица Гессенберга:
* |
* |
0 |
0 |
0 |
0 |
* |
* |
* |
0 |
0 |
0 |
* |
* |
* |
* |
0 |
0 |
* |
* |
* |
* |
* |
0 |
* |
* |
* |
* |
* |
* |
* |
* |
* |
* |
* |
* |
5. ОПРЕДЕЛЕНИЕ СОБСТВЕННЫХ ЗНАЧЕНИЙ СИММЕТРИЧНОЙ ТРЕХДИАГОНАЛЬНОЙ МАТРИЦЫ
Приведя симметричную матрицу к трехдиагональному виду методом Гивенса или Хаусхолдера, необходимо найти ее собственные значения. Чтобы ясней были достоинства трехдиагональной формы, сформулируем задачу о собственных значениях в виде
dеt(А—lE) = 0,
где А — симметричная трехдиагональная матрица. Раcкрыв выражение в скобках, получим
a1 - l |
b2 |
0 | ||
b1 |
a2 - l |
= 0 | ||
bn | ||||
0 |
bn |
an - l |
Произвольный определитель порядка п можно выразить через п миноров порядка п — 1, каждый из которых в свою очередь выражается через п — 1 миноров порядка п — 2. Удобство трехдиагональной формы в том, что на каждом шаге все миноры, кроме двух, оказываются равными нулю. В результате исходный определитель представляется последовательностью полиномов
fm(l) = (am - l) fm-1 (l) – b2 m fm-2(l).
Приняв
f0 (l) = 1 и f1 (l) = a1 - l при r = 2, п,
получим совокупность полиномов, известную как последовательность Штурма и обладающую тем свойством, что корни полинома fj (l) располагаются между корнями полинома fj+1 (l). Поэтому для f1 (l) = a1— l можно утверждать, что значение lК = а1 заключено между корнями полинома f2 (l) == (a2 — l) (a1 — l) —b22. Это облегчает итерационное определение корней полинома, так как если известны границы интервалов, в которых лежат значения корней полинома, то их можно найти методом половинного деления. Так последовательно находят корни всех полиномов, и последний из них fn (l) дает все искомые п собственные значения. Эту процедуру можно проиллюстрировать графически (см. рис. 3).
Последовательность Штурма обладает еще и таким свойством: для любого значения b, при котором fn (b) <> 0, число собственных значений матрицы A, больших b, равно числу изменений знака последовательности
1, f1 (b), f2 (b), … , (1)n fn (b).
Если целое число, равное числу изменений знака, обозначить через V(b), то число собственных значений в интервале действительных чисел [b, с] будет равно V(b)—V(c).
| |||
| |||
| |||