- •Основы работы в matlab. Векторы и матрицы.
- •Введение
- •Среда matlab
- •1.1. Основный окна Matlab и выполнение элементарных вычислений
- •1.2. Редактирование и отладка м-файлов
- •Переменные в matlab
- •3. Массивы в matlab
- •4. Задачи линейной алгебры (векторы и матрицы)
- •1. Функции операций над векторами:
- •Решение некоторых задач линейной алгебры
- •4. Решение некоторых задач алгебры матриц
- •5. Решение систем линейных уравнений
- •6. Собственные значения и собственные векторы
- •7. Норма и число обусловленности матрицы
- •8. Задания для самостоятельного решения
6. Собственные значения и собственные векторы
Пусть А - матрица размерностьюп* п. Любой ненулевой векторх, принадлежащий некоторому векторному пространству, для которогоАх = λх, где λ - некоторое число, называетсясобственным вектором матрицыА, а λ - принадлежащим ему или соответствующим емусобственным значением матрицыА.
Уравнение Ах = λх эквивалентно уравнению (А - λ * Е)х = 0. Это однородная система линейных уравнений, нетривиальные решения которой являются искомыми собственными векторами. Она имеет нетривиальные решения, только когдаr(А - λ *Е) < п, то есть, еслиdet(A- λ* Е) = 0.
Многочлен det(A- λ * Е) называетсяхарактеристическим многочленом матрицы А, а уравнениеdet(A- λ* Е) = 0 -характеристическим уравнением матрицы А. Если λi - собственные значения А, то нетривиальные решения однородной системы линейных уравнений (А – λ*Е) = 0 есть собственные векторы А, принадлежащие собственному значению λi. Множество решений этой системы уравнений называютсобственным подпространством матрицы А, принадлежащим собственному значению λi, каждый ненулевой вектор собственного подпространства является собственным вектором матрицы А.
Иногда требуется найти собственные векторы у и собственные значения μ, определяемые соотношениемAy = μ By(y≠ 0), гдеВ - невырожденная матрица. Векторыу и числат обязательно являются собственными векторами и собственными значениями матрицыB-1 A. Пусть А ={аij} иВ= {bij}, причем матрицаВ является положительно определенной, тогда собственные значеният совпадают с корнями уравненияn-й степениdet(A- μB) =det(aij– μbij) = 0.
Это уравнение называют характеристическим уравнением для обобщенной задачи о собственных значениях. Для каждого корня μ кратностит существует ровнот линейно независимых собственных векторову.
Задача 10.
Найти собственные значения и собственные векторы матрицы А.
>>А=[5 2 -1;1 -3 2; 4 5 -3]; >> Вектор собственных значений матрицы >> eig(A) ans = 4.9083 -0.0000 -5.9083 >> [L, D]=eig(A) L =%Матрица собственных векторов -0.7961 -0.0493 0.1813
-0.2410 0.5426 -0.5988
-0.5551 0.8385 0.7801
D = %Диагональная матрица собственных значений 4.9083 0 0
О -0.0000 0
О 0 -5.9083
>>Проверка
>> (A-D(l,l)*eye(3))*L(:,l)
ans =
1.0е-015 *
0.1110
0.8882
-0.8882
>>(A-D(2,2)*eye(3))*L(:,2)
ans =
1.0e-015 *
-0.8882
0.8882
-0.8882
>> (A-D(3,3)*eye(3))*L(:,3)
ans =
1.0e-014 *
0.1776
0.0444
0
Задача 11.
Привести заданную матрицу А к диагональному виду.
Задача состоит в том, чтобы для квадратной матрицы А подобрать такую матрицуС, чтобы матрицаВ= С-1 * АС имела диагональный вид. Эта задача связана с теорией собственных значений, так как разрешима только в том случае, если матрица С состоит из собственных векторов матрицыА.
В листинге показано, как можно решить поставленную задачу двумя способами. Первый способ сводится к вычислению значения выражения С-1*АС для чего предварительно, при помощи функцииeig(A), формируется матрица С, каждый столбец которой соответствует собственному вектору матрицыА Результаты вычислений, полученные подобным образом, показывают, что главная диагональ диагональной матрицы совпадает с собственными значениями матрицыА. Поэтому второй способ решения этой задачи сводится к формированию диагональной матрицы при помощи функцииdiag (b), гдеb-векторГэлементы которого соответствуют собственным значениям матрицыА.
Листинг 78
>> А=[2 1 3;1 -2 1;3 2 2];
>> [C,B]=eig(A)
С =
-0.6798 -0.7071 -0.1326
-0.1875 0.0000 -0.8654
-0.7090 0.7071 0.4832 В =
5.4051 0 0
0 -1.0000 0
0 0 -2.4051
>> b=diag(B)
b =
5.4051
-1.0000
-2.4051
>> %Первый способ
>> inv(C)*A*C
ans =
5.4051 0 -0.0000
-0.0000 -1.0000 -0.0000
0.0000 0.0000 -2.4051
>> %Второй способ
>> diag(b)
ans =
5.4051 0 0
О -1.0000 0
0 0. -2.4051
Задача 12.
Найти решение обобщенной задачи о собственных значениях для матриц А и В. Обобщенную задачу о собственных значениях (листинг 6.82) вMATLABрешают при помощи функцииeig(A,B), которая в качестве результата выдает матрицу обобщенных собственных векторов и диагональную матрицу, содержащую обобщенные собственные значения.
Листинг 79.
>> А=[1 -3;-3 4];
>> В=[1 2;-3 1];
>> [X,V]=eig(A, В)
X = %Матрица обобщенных собственных векторов
-1.0000 0.9167
0 1.0000
V = %Матрица, содержащая обобщенные собственные значения
1.0000 0
0 -0.7143
>> v=diag(V) %Обобщенные собственные значения
v =
1.0000 -0.7143
>> %Проверка
>> (A-v(l)*B)*X(:,l)
ans =
1.0е-015 *
-0.1110 0.4441
>> (A-v(2)*B)*X(:,2)
ans =
1.0e-015 *
-0.4441
0