Метод крылова собственные векторы

МЕТОД А.Н. КРЫЛОВА

Отыскание собственных значений матрицы

Академик А.Н.Крылов в 1931 году одним из первых предложил довольно удобный метод раскрытия определителя (2).

Суть метода А.Н.Крылова состоит в преобразовании определителя D() к виду

Равенство нулю определителя D() есть необходимое и достаточное условие для того, чтобы однородная система линейных алгебраических уравнений

Метод крылова собственные векторы

имела решение х1, х2, …, хn, отличное от нулевого.

Преобразуем систему (2) следующим образом. Умножим первое уравнение на и заменим x1, …,xn их выражениями (2) через x1,…, xn.

Метод крылова собственные векторы

Умножим далее уравнение (3) на и заменим снова x1, …,xn их выражениями через x1,…, xn. Получим

Повторяя этот процесс (n-1) раз, мы перейдем от системы (2) к системе

Метод крылова собственные векторы

коэффициенты которой будут определятся по рекуррентным формулам

Метод крылова собственные векторы

Очевидно, что определитель системы (5) будет иметь вид (1).

Система линейных алгебраических уравнений (5) имеет ненулевое решение для всех значений , удовлетворяющих уравнению D()=0. Таким образом, D1()=0 при всех , удовлетворяющих уравнению D()=0.

Метод крылова собственные векторы

Пусть все корни D() различны. Так как все корни D() являются корнями D1(), то D1() делится на D(). Так как, кроме того, степени D1() и D() одинаковы, то частное должно быть постоянным. Сравнивая коэффициенты при n, получим

В случае, если D() имеет кратные корни, равенство (8) сохраняется.

Рассмотрим теперь коэффициенты bik, определяющие D1(). Введем в рассмотрение векторы Bi с компонентами bi1, bi2, …, bin. Равенства

Метод крылова собственные векторы

показывают, что Bi=ABi-1, где A — матрица, транспонированная к данной. Из этого следует, что

Bi=A i-1B1, B1=AB0, (9)

Если С0, то уравнения D1()=0 и D()=0 эквивалентны. Если же С=0, то это преобразование ничего не дает. А.Н.Крылов предлагает в этом случае особый прием, рассмотренный ниже. Возьмем в качестве вектора В0 произвольный вектор В0=(bi1,bi2,…,bin) и получим с его помощью по формулам (9) векторы Вi.

Пусть u=b01x1+b02x2+…+b0nxn (10)

где x1,x2,…xn — решения системы (1/). Тогда повторяя прежние рассуждения, получим:

Метод крылова собственные векторы

Решая эту систему как систему линейных однородных уравнений с n+1 неизвестными u,x1,x2,…xn, получим, что ненулевое решение возможно в том и только в том случае, когда

Метод крылова собственные векторы

Повторяя прежние рассуждения, найдем, что

Метод крылова собственные векторы

Метод крылова собственные векторы

если С10, то коэффициенты рi характеристического многочлена определяются как отношения где Di — алгебраические дополнения элементов n-i в определителе D().

Но сущность метода Крылова и состоит в том, чтобы находить эти коэффициенты, не подсчитывая миноры.

Воспользуемся теоремой Гамильтона — Кэли о том, что матрица является корнем своего характеристического уравнения, т.е.

где рi — коэффициенты характеристического многочлена.

Умножая равенство (14) на b0, получим:

Это векторное равенство дает систему линейных алгебраических уравнений для определения коэффициентов характеристического многочлена. Определитель этой системы равен С1. Решать полученную систему можно любым из известных методов, например, методом Гаусса.

Можно было бы применить теорему Гамильтона — Кэли и для самой матрицы А, получили бы тогда систему

здесь ci=Aic0, c0

— произвольный начальный вектор.

Пример. Пусть матрица A имеет вид:

Метод крылова собственные векторы

в качестве вектора В0 возьмем вектор В0=(1,0,0,0). Тогда получим векторы

В1=АВ0, В2=А2В0= АВ1, В3=А3В0=АВ2, В4=А4В0=АВ3:

Система линейных алгебраических уравнений для определения коэффициентов характеристического многочлена имеет вид:

Метод крылова собственные векторы

Решив эту систему, получим: р1=-11, р2=7, р3=72, р4=-93. Поэтому характеристический многочлен примет вид:

D()= 4 -113 + 72 +72 -93.

В приведенном примере С10.

В случае, если С=0, такая система не даст возможности определить коэффициенты характеристического уравнения. Матрица А и транспонированная к ней матрица А удовлетворяет своему характеристическому уравнению D(A)=0. Но может оказаться, что существуют многочлены () степени меньше n, для которых также выполняется равенство (А)=(А)=0. Среди таких многочленов имеется единственный многочлен со старшим коэффициентом 1, имеющим наименьшую степень. Этот многочлен называется минимальным. Если минимальный многочлен матрицы не совпадает с характеристическим, то С=0 при любом выборе начального вектора. В этом случае АС0=0 и векторы С0, АС0, …,Аn-1C0 линейно зависимы.

На практике при использовании метода Крылова такая ситуация может возникнуть лишь при особых обстоятельствах.

Можно подсчитать, что при раскрытии характеристического многочлена матрицы с помощью метода Крылова потребуется 0,5(2п3+п2+п) операций умножения и деления.

Задания лабораторной работы №3

Лабораторная работа №3

«Нахождение собственных чисел и собственных векторов матрицы»

1. Метод Крылова. Собственные числа матрицы А определяют путём решения характеристического уравнения, приведённого к виду

Метод крылова собственные векторы

Значение Метод крылова собственные векторыявляются решениями системы, полученной из векторного равенства

Метод крылова собственные векторы

где Метод крылова собственные векторы– начальный вектор (произвольный), Метод крылова собственные векторы. Решая эту систему, например при помощи метода Гаусса, находят Метод крылова собственные векторы.

Собственные векторы матрицы А определяют из соотношения

Метод крылова собственные векторы(i=1,2,…,n)

где Метод крылова собственные векторы– коэффициенты частного, полученного при делении Метод крылова собственные векторына Метод крылова собственные векторы.

Пример решения задачи методом Крылова

A = Метод крылова собственные векторы

Метод крылова собственные векторы

1. Для определения коэффициентов характеристического уравнения

строим последовательность векторов:

Если векторы В0, В1, В2, В3 окажутся линейно независимыми, то коэффициенты p1, p2, p3, p4 определяются из решения системы линейных уравнений, соответствующей равенству

Систему линейных уравнений решаем средствами Excel или MathCAD, можно воспользоваться также программной реализацией метода Гаусса из лабораторной работы №1.

АВ0В1В2В3В4
2,20,52,210,0952,373291,0006
1,36,541,84239,605
0,50,51,60,56,5537,64220,7825
1,610,2057,56321,930

Таким образом, характеристическое уравнение матрицы имеет вид

Метод крылова собственные векторы. (*)

2. Определение собственных чисел матрицы состоит в решении полученного характеристического уравнения (*), например, средствами Excel или MathCAD, можно использовать программную реализацию одного из методов лабораторной работы №2.

Собственные числа матрицы А таковы:

3. Собственный вектор Xi, соответствующий собственному числу li , определяется по формуле

где коэффициенты при ранее найденных векторах В0, В1, В2, В3 находятся из равенства

Метод крылова собственные векторы= bi0l 3 + bi1l 2 + bi2 + bi3.

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

Все вычисления приведены в таблице 2.

libi3B0bi2B1bi1B2bi0B3Xi Метод крылова собственные векторы
5,6520,4877–4,7672 –2,1669 –1,0334 –4,3338–3,5113 –2,2620 –2,2794 –3,549652,373 41,84 37,64 57,5644,5822 37,4111 34,2772 49,67660,879 0,753 0,690 1,0
1,5451,7918–15,5826 –7,08298 –3,5415 –14,1660–44,9510 –28,9575 –29,1802 –45,441052,373 41,84 37,64 57,56–6,3688 5,7995 4,9183 –2,0470–0,911 –0,772 0,321
–1,420–1,942722,7400 10,3364 5,1682 20,6728–74,8678 –48,2300 –48,6010 –75,684052,373 41,84 37,64 57,56–1,6975 3,9464 –5,7928 2,54880,293 –0,681 –0,440
0,222612,4042–5,2692 –1,4860 –0,7430 –2,9720–58,2940 –37,5531 –37,8420 –58,929552,373 41,84 37,64 57,563,2140 2,8009 –0,9450 –4,3415–0,740 –0,645 –0,218

2. Метод Данилевского. Для определения коэффициентов характеристического уравнения матрицу A с помощью n-1 преобразований подобия заменяют подобной ей матрицей Фробениуса

P= Метод крылова собственные векторы

На первом этапе находят:

Метод крылова собственные векторы

где Метод крылова собственные векторыМетод крылова собственные векторы

Метод крылова собственные векторы

где Метод крылова собственные векторыМетод крылова собственные векторы

Метод крылова собственные векторы

Метод крылова собственные векторы(матрица С подобна матрице А);

Метод крылова собственные векторы

где Метод крылова собственные векторы

Пример решения задачи методом Данилевского

A = Метод крылова собственные векторы

Метод крылова собственные векторы

1. Коэффициенты характеристического уравнения матрицы А определяются как элементы первой строки матрицы Фробениуса Р, подобной данной матрице А. Матрицу Р найдем в результате трех преобразований подобия:

Округляя значения коэффициентов до четырех десятичных знаков, получим характеристическое уравнение

l 4 – 6l 3 – 0,2l 2 + 12,735l – 2,7616 = 0.

Это уравнение решаем средствами Excel или MathCAD, можно использовать программную реализацию одного из методов лабораторной работы №2. Корни уравнения таковы:

2. Собственный вектор Xi , соответствующий собственному числу li , определяется равенством

Xi = М3 ×М2× М1×Yi, где Yi = Метод крылова собственные векторы.

Результаты вычисления собственных векторов приведены в таблице 3.

liM1M2M3YiXi Метод крылова собственные векторы
5,652–0,231125 1,078582 1,651001 1,158706–0,351515 0,242424 –1,060606 –0,681212–1,25 –0,625 0,625 –1,25180,5537 31,9451 5,6520,8977 0,7529 0,68980,898 0,753 0,690
1,545–0,231125 1,078582 1,651001 –1,158706–0,351515 0,242424 –1,060606 –0,681212–1,25 –0,625 0,625 –1,253,6880 2,3870 1,5453,1143 –2,8359 –2,4048–0,911 –0,772 –0,440
0,2226–0,231125 1,078582 1,651001 –1,158706–0,351515 0,242424 –1,060606 –0,681212–1,25 –0,625 0,625 –1,250,01103 0,4955 0,2226–0,7403 –0,6451 0,2177–0,740 –0,645 0,218
–1,420–0,231125 1,078582 1,651001 –1,158706–0,351515 0,242424 –1,060606 –0,681212–1,25 –0,625 0,625 –1,25–2,8633 2,0164 –1,420–0,6665 1,5480 –2,27190,293 –0,681 –0,440

3. Метод итераций для определения первого собственного значения и соответствующего ему собственного вектора матрицы А. Строят последовательность векторов: Метод крылова собственные векторы– произвольный вектор, Метод крылова собственные векторы. Тогда

Метод крылова собственные векторы

где Метод крылова собственные векторыи Метод крылова собственные векторы– одноименные координаты двух последовательных векторов;

При этом собственный вектор Метод крылова собственные векторы.

Пример решения задачи методом итераций

1. Строим последовательность векторов Метод крылова собственные векторы, где Метод крылова собственные векторы— произвольный вектор; тогда Метод крылова собственные векторы, где Метод крылова собственные векторыи Метод крылова собственные векторы– одноименные координаты двух последовательных векторов.

Все вычисления приведены в таблице 4.

Таблица 4

1,62,31,2
A2,30,61,5 Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы
1,21,53,8
Метод крылова собственные векторы
Метод крылова собственные векторы5,14,46,55,115,485,76
Метод крылова собственные векторы26,0824,1237,425,455,415,60
Метод крылова собственные векторы142,108130,586209,6725,4845,5115,548
Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы5,51515,51485,5321
Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы5,52055,52255,5267
Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы5,52335,52355,5251
Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы5,52405,52415,5246
Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы5,52425,52435,5244
Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы5,52435,52435,5244
Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы5,52435,52435,5243
Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы Метод крылова собственные векторы

Итак, Метод крылова собственные векторы.

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

Задания лабораторной работы №3

«Нахождение собственных чисел и собственных векторов матрицы»

Задание для нечетных вариантов:

1. Используя метод Крылова найти собственные числа и собственные вектора матрицы А. Разрешается реализовывать метод Крылова средствами MathCAD или Mathematica (корни характеристического уравнения найти с помощью встроенных функций). Метод Крылова можно реализовать также на VBA (корни характеристического уравнения найти с помощью команды «Поиск решения» или «Подбор параметра» пункта меню Сервис в Excel).

2. Используя метод итераций, определить первое собственное число матрицы (наибольшее по модулю). Найти соответствующий ему собственный вектор, имеющий кубическую норму, равную 1. Метод итераций реализовать на языке программирования.

3. Сравнить результаты, полученные методом Крылова и методом итераций.

Задание для четных вариантов:

1. Используя метод Данилевского найти собственные числа и собственные вектора матрицы А. Разрешается реализовывать метод Данилевского средствами MathCAD или Mathematica (корни характеристического уравнения найти с помощью встроенных функций). Метод Данилевского можно реализовать также на VBA (корни характеристического уравнения найти с помощью команды «Поиск решения» или «Подбор параметра» пункта меню Сервис в Excel).

2. Используя метод итераций, определить первое собственное число матрицы (наибольшее по модулю). Найти соответствующий ему собственный вектор, имеющий кубическую норму, равную 1. Метод итераций реализовать на языке программирования.

3. Сравнить результаты, полученные методом Данилевского и методом итераций.

Варианты заданий

№1. A = Метод крылова собственные векторы№2. А = Метод крылова собственные векторы

№3. A = Метод крылова собственные векторы№4. А = Метод крылова собственные векторы

№5. A = Метод крылова собственные векторы№6. А = Метод крылова собственные векторы

№7. A = Метод крылова собственные векторы№8. А = Метод крылова собственные векторы

№9. A = Метод крылова собственные векторы№10. А = Метод крылова собственные векторы

№11. A = Метод крылова собственные векторы№12. А = Метод крылова собственные векторы

№13. A = Метод крылова собственные векторы№14. А = Метод крылова собственные векторы

№15. A = Метод крылова собственные векторы№16. А = Метод крылова собственные векторы

№17. A = Метод крылова собственные векторы№18.А = Метод крылова собственные векторы

№19. A = Метод крылова собственные векторы№20.А = Метод крылова собственные векторы

№21. A = Метод крылова собственные векторы№22. А = Метод крылова собственные векторы

№23. A = Метод крылова собственные векторы№24. А = Метод крылова собственные векторы

№25. A = Метод крылова собственные векторы№26. А = Метод крылова собственные векторы

№27. A = Метод крылова собственные векторы№28. А = Метод крылова собственные векторы

№29. A = Метод крылова собственные векторы№30. А = Метод крылова собственные векторы

Решение системы уравнений методом крылова

Найти собственные значения и собственные вектора матрицы методом Крылова:

Основан на том, что матрица обращает в 0 свой характеристический многочлен, т.е. матрица является корнем своего характеристического уравнения.

Метод крылова собственные векторы

Метод крылова собственные векторы

Берется нулевой вектор y(0) ина него умножается полученное уравнение.

В результате получаем:

Метод крылова собственные векторы

Метод крылова собственные векторы

Метод крылова собственные векторы

Метод крылова собственные векторы

Найдем значения p

Метод крылова собственные векторы+ Метод крылова собственные векторы+ Метод крылова собственные векторы= Метод крылова собственные векторы

Выберем в качестве y(0)=

Найдем p(i),затем из p(i)=>l(i) ,решив характеристическое уравнение.

Метод крылова собственные векторы

Где q(j, i)-формируется по схеме Горнера

Метод крылова собственные векторы

Double func1(double y, int mode);

Double metod_neutona(double a, double b, double (*function)(double, int));

Int find_interval_izol(double *a, double *b, double (*function)(double, int));

Double AA[4][4];//то же что и А

Double M[4][4];//некая неособенная матрица

Double M_1[4][4];//обратная неособенной

Double C[4][4];//хранит рез-т перемножения матриц

Double P[4];//коэф-ты хар-кого ур-я

Double L[4];//собственные значения матрицы

Double Q[4][4];//матрица значений q

Double Y[4][5];//матрица значений Y

Double X[4][4];//матрица собственных векторов матрицы A

Double x0,h, E=0.000001;

int i, j,k, number_vector=0;

printf(» Исходная матрица А»);

for(j=0;j 0) x0=a; //выбор точки x0

else if(function(b,0)*function(b,2)>0) x0=b; //

Int find_interval_izol(double *a, double *b, double (*function)(double, int))

Поделиться или сохранить к себе: