Собственные значения и собственные векторы в MATLAB
Опубликовано: 13 Сентября, 2022
Собственные значения и собственные векторы являются свойствами квадратной матрицы.
Позволять — матрица N*N , X — вектор размера N*1 и
быть скаляром .
Тогда значения X, удовлетворяющее уравнению
являются собственными векторами и собственными значениями матрицы A соответственно.
- Матрица размера N*N имеет N собственных значений
- Каждому собственному значению соответствует собственный вектор.
Matlab позволяет пользователям находить собственные значения и собственные векторы матрицы, используя метод eig() . Различный синтаксис метода eig() :
- е = еиг(А)
- [V,D] = eig(A)
- [V,D,W] = eig(A)
- е = eig(A,B)
Давайте подробно обсудим приведенные выше синтаксисы:
е = еиг(А)
- Он возвращает вектор собственных значений квадратной матрицы A .
Matlab
% Square matrix of size 3*3 A = [0 1 2; 1 0 -1; 2 -1 0]; disp( "Matrix" ); disp(A); % Eigenvalues of matrix A e = eig(A); disp( "Eigenvalues" ); disp(e); |
Выход :
[V,D] = eig(A)
- Он возвращает диагональную матрицу D , имеющую диагонали в качестве собственных значений.
- Он также возвращает матрицу правильных векторов как V .
- Нормальные собственные векторы называются правыми собственными векторами .
- V представляет собой набор N собственных векторов каждого размера N * 1 (A - размер N * N), который удовлетворяет A * V = V * D
Matlab
% Square matrix of size 3*3 A = [8 -6 2; -6 7 -4; 2 -4 3]; disp( "Matrix" ); disp(A); % Eigenvalues and right eigenvectors of matrix A [V,D] = eig(A); disp( "Diagonal matrix of Eigenvalues" ); disp(D); disp( "Right eigenvectors" ) disp(V); |
Выход :
[V,D,W] = eig(A)
- Наряду с диагональной матрицей собственных значений D и правых собственных векторов V он также возвращает левые собственные векторы матрицы A.
- Левый собственный вектор u — это матрица размера 1*N , которая удовлетворяет уравнению u*A = k*u , где k — левое собственное значение матрицы A .
- W — это набор N левых собственных векторов матрицы A, удовлетворяющих условию W'*A = D*W' .
Matlab
% Square matrix of size 3*3 A = [10 -6 2; -6 7 -4; 2 -4 3]; disp( "Matrix :" ); disp(A); % Eigenvalues and right and left eigenvectors % of matrix A [V,D,W] = eig(A); disp( "Diagonal matrix of Eigenvalues :" ); disp(D); disp( "Right eigenvectors :" ) disp(V); disp( "Left eigenvectors :" ) disp(W); |
Выход :
е = eig(A,B)
- Он возвращает обобщенные собственные значения двух квадратных матриц A и B одинакового размера.
- Обобщенное собственное значение λ и соответствующий собственный вектор v удовлетворяют условиям Av=λBv .
Matlab
% Square matrix A and B of size 3*3 A = [10 -6 2; -6 7 -4; 2 -4 3]; B = [8 6 1; 6 17 2; -1 4 3]; disp( "Matrix A:" ); disp(A); disp( "Matrix B:" ); disp(B); % Generalized eigen values % of matrices A and B e = eig(A,B); disp( "Generalized eigenvalues :" ) disp(e); |
Выход :