How to numerically calculate the complex roots (eigenvalues) of a determinant?
Show older comments
Please consider the following determinant:

"aij" and "bij" take on values lager than zero and smaller than one, and "q" has a range between pi and -pi. I want to calculate the complex eigenvalues (lambda) of the determinant using some sort of a numerical scheme.
I'm well aware that Computer Algebra Systems like MATLAB have no problem calculating the roots of a determinant of this size, but I am working with matrices that are ridiculously larger than this one and without an efficient numerical solution, they would take forever to get solved.
I would immensely appreciate any help or insight.
Thank you very much
6 Comments
Walter Roberson
on 10 Jun 2022
Given numeric inputs, eig() is fairly efficient.
Your expression doesn't look like a characteristic equation in lambda, so I'm not sure why the solutions can be called "eigenvalues".
One thing that is fairly certain is that you will not be able to do it by writing down the determinant as a function of lambda. For NXN matrices with N>10, that will give you a a polynomial of order greater than 20, which cannot be solved stably in double float precision.
Moein M
on 12 Jun 2022
Walter Roberson
on 12 Jun 2022
To be honest, I do not have enough enthusiasm to bother typing in those equations by hand starting from an image.
If you had used syms lambda and posted the code to construct the matrix, then I would have been more likely to take a look.
Answers (1)
Sergio Yanez-Pagans
on 11 Jun 2022
0 votes
Categories
Find more on Eigenvalues & Eigenvectors 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!