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

Вид материалаДокументы

Содержание


§ 4. алгебра матриц
Задача определения собственных значений
4.1. Вычисление собственных векторов и собственных значений матриц по методу крылова
Подобный материал:
1   2

§ 4. АЛГЕБРА МАТРИЦ


Матрицей называется прямоугольная таб­ли­ца из чи­­сел, содержащая некоторое количество m строк и n столбцов, при этом числа m и n на­зываются порядками мат­ри­цы. Если m = n, мат­­рица на­зывается квадратной, а число m = n - ее по­­рядком. Для записи матриц ис­пользуются сле­ду­ю­щие обо­зна­че­ния:

, (1.33)

где числа aij называются элементами матрицы A. В слу­чае, если m = n и определитель матрицы detA  0, мат­ри­ца A на­зывается невырожденной и для нее можно найти об­рат­ную мат­ри­цу. Обратной по от­но­шению к дан­ной мат­ри­це A называется матрица A-1, которая, бу­ду­чи умно­женной как справа, так и сле­ва на A, дает еди­­ничную матрицу:

.

Матрица AT, полученная перестановкой строк со столб­ца­ми в мат­­ри­це A, называется транс­по­ни­ро­ван­ной. Квад­ратная мат­ри­ца A на­зы­ва­ет­ся сим­мет­рич­еской, если AT = A, и ор­то­го­наль­ной, если AT A = E.

Характеристическим уравнением матрицы A на­­зы­ва­ет­ся матричное уравнение ||A - E|| = 0, в ко­тором i - соб­ст­вен­ные (или ха­рак­те­рис­ти­чес­кие) числа (или зна­че­ния) мат­­рицы A. Соб­ст­вен­ным вектором, отвечающим соб­ст­вен­­ному чис­лу i, называется вектор

,

который удов­летворяет матричному уравнению Ax =i x. Ког­­да говорят о вычислении собст­вен­ных чисел, то раз­ли­ча­ют полную и частичную проблему собст­венных чисел. В пол­ной проблеме вы­чис­ля­ют все собственные числа и со­от­­ветст­ву­ю­щие им собственные векторы матриц, а под час­тич­­­ной про­блемой обычно понимают задачу на­хо­ж­де­ния од­­ного или нескольких собственных чи­сел и со­от­ветс­т­ву­ющих им собственных век­то­ров.

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

Задача определения собственных значений и собст­вен­ных векторов матриц имеет большое зна­че­ние при ре­ше­нии очень широкого спектра за­дач. Методы ре­ше­ния ука­занной за­дачи по типу примененной вы­чис­ли­тельной схе­мы мож­но разделить на пря­мые (точные) и ит­е­ра­ци­он­ные (при­бли­женные).

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

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

К прямым можно отнести методы Кры­лова, Да­ни­лев­с­ко­го, Самуэльсона и др., а к ите­рационным - сте­пен­ной и ме­­тод Якоби, или, как его еще на­зы­ва­ют, ме­тод вращений. По­­след­ний метод считается на­и­более эф­фек­тивным из всех известных [Kpылов и др., 1972].

4.1. ВЫЧИСЛЕНИЕ СОБСТВЕННЫХ ВЕКТОРОВ И СОБСТВЕННЫХ ЗНАЧЕНИЙ МАТРИЦ ПО МЕТОДУ КРЫЛОВА


Пусть А - некоторая квадратная матрица ||аij|| по­рядка n. Рассмотрим связанное с ней уравнение ||А -Е|| = 0, определитель которого есть ал­геб­ра­и­ческий многочлен степени n от :

||А -Е|| = (-1)n (n - P1n -1 Pn -1Pn . (1.34)

Кор­нями этого многочлена являются собственные зна­че­ния (собственные числа) матрицы А. Эта сис­тема име­ет ненулевое решение тогда и только тог­да, когда n.

А.Н.Крылов1 предложил эффективный ме­тод по­стро­е­ния характеристического мно­го­чле­на, ос­но­­ван­­­ный на при­ме­нении ми­ни­маль­но­го мно­го­чле­на мат­ри­цы, ан­ну­ли­ру­ю­ще­го за­дан­ный вектор.

Возьмем произвольный вектор с(0) 0, раз­мер­­нос­ти n и составим по­сле­до­ва­тель­ность ли­ней­но не­за­висимых век­то­ров по правилу

с(1) = А с(0); c(2) = A c(1); ...; c(n) = A c(n -1) .

Очевидно, что c(n) бу­дет являться линейной ком­би­на­ци­ей пре­ды­ду­щих линейно независимых век­то­ров.

Рас­писав полученную на последнем шаге си­с­те­му

(1.35)

где сi - соответствующие координаты вектора с(i), а qi - не­оп­ределенные коэффициенты, по­лу­чим не­од­но­род­ную сис­те­му из n алгебраических урав­нений. Опре­де­литель этой сис­темы



будет отличен от нуля тогда и только тогда, ког­да с(i) об­ра­зу­ют систему линейно независимых век­то­ров [Кры­лов и др., 1972]. Полученные зна­че­ния qi бу­­дут ра­в­ны рi - ко­эф­фи­ци­ентам ха­ра­к­те­рис­ти­чес­ко­го урав­­нения мат­рицы А (1.34).

Для определения qi систему (1.35) решают ме­то­дом Га­усса (с обязательной проверкой). Если сис­те­му не удается привести в ходе решения к тре­у­голь­но­му виду, то говорят о зависимости по­стро­ен­ной сис­те­­мы век­торов, и тогда мож­но записать толь­ко де­ли­­тель ха­рак­те­рис­тического мно­­го­чле­на мат­p­ицы. Сам многочлен ре­ша­ется одним из из­­вест­­ных ме­то­дов решения линейных ал­­геб­ра­и­чес­­ких урав­нений.

После того как найдены собственные зна­че­ния i мат­­ри­цы А, ищут собственные векторы мат­ри­цы А, что при­во­дит к решению следующей од­но­род­­­ной сис­те­­мы ли­ней­ных ал­­гебраических урав­не­ний:

(A - E)х = 0. (1.36)

Так как i являются корнями ми­ни­маль­но­го ан­ну­ли­рующего вектора с(0) многочлена (1.34), то ре­ше­ния сис­темы (1.36) представляют в ви­де линейной ком­би­нации не­за­висимых ве­к­то­ров с(i)

x(k) =i1 c(n -1) + i2 c(n -2) + ... + in c(0),

где коэффициенты ij удовлетворяют ус­ло­вию Ax(n)=k x(n). Умножая x(n) на А и учитывая, что с(j)=Ас(j-1), по­лучают

i(i1c(n-1)+i2c(n-2)+...+inc(0)) =

= i1 c(n) + i2 c(n-1) + ... + in c(1).

Если же учесть, что A)c(n) º 0, то после приведения по­доб­ных (с учетом формул 1.35) последнее ра­вен­ст­во мож­но переписать в виде

(qn i1 - i in)c(0) + (qn-1 i1 + in - i in-1)c(1) +

+ (qn-2i1 + in-1 - iin)c(2) + ... + (q1i1 + i2 - ii1)c(n-1) = 0.

1 Библиотека стандартных программ. Поставляется вместе с транслятором языка.

1 Крылов А.Н. О численном решении уравнения высокой степени // ИАН ОМЕН. 1931. № 4. С. 491-539