Open In App

Eigenvalues and Eigenvectors in MATLAB

Improve
Improve
Like Article
Like
Save
Share
Report

Eigenvalues and Eigenvectors are properties of a square matrix.

Let  A =[a_{ij}]_{N*N}  is an N*N matrix, X be a vector of size N*1 and \lambda  be a scalar.

Then the values X,\lambda    satisfying the equation  AX=\lambda X   are eigenvectors and eigenvalues of matrix A respectively.

  • A matrix of size N*N possess N eigenvalues
  • Every eigenvalue corresponds to an eigenvector.

Matlab allows the users to find eigenvalues and eigenvectors of matrix using eig() method. Different syntaxes of eig() method are:

  • e = eig(A)
  • [V,D] = eig(A)
  • [V,D,W] = eig(A)
  • e = eig(A,B)

Let us discuss the above syntaxes in detail:

e = eig(A)

  • It returns the vector of eigenvalues of square matrix 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);

                    

Output :

[V,D] = eig(A)

  • It returns the diagonal matrix D having diagonals as eigenvalues.
  • It also returns the matrix of right vectors as V.
  • Normal eigenvectors are termed as right eigenvectors.
  • V is a collection of N eigenvectors of each N*1 size(A is N*N size) that satisfies 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);

                    

Output :

[V,D,W] = eig(A)

  • Along with the diagonal matrix of eigenvalues D and right eigenvectors V, it also returns the left eigenvectors of matrix A.
  • A left eigenvector u is a 1*N matrix that satisfies the equation u*A = k*u, where k is a left eigenvalue of matrix A.
  • W is the collection of N left eigenvectors of A that satisfies 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);

                    

Output :

e = eig(A,B)

  • It returns the generalized eigenvalues of two square matrices A and B of the same size.
  • A generalized eigenvalue λ and a corresponding eigenvector v satisfy 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);

                    

Output :



Last Updated : 20 Nov, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads