Eigs function returns complex numbers when computing the largest eigenvalue

2 views (last 30 days)
Hello, i am contructing an adjacency matrix from real networks as follows:
x = dlmread('file.txt');
left = x(:,1)+1;
right = x(:,2)+1;
Adj = sparse(left,right,1,7319,7319);
eigs(Adj)
The networks are directed, some of them are very sparse while several others may also be disconnected. The problem is that for some networks i get the largest eigenvalue as a complex number. I have read several related threads to my post but i couldn't properly understand the quialitative reason.

Answers (2)

John D'Errico
John D'Errico on 19 Oct 2015
Your matrix is not symmetric. The eigenvalues of a non-symmetric matrix will often be complex numbers.

Rupesh Rupesh
Rupesh Rupesh on 19 Dec 2017
Try using svd

Categories

Find more on Linear Algebra in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!