I need to compute the largest eigenvalue of a (sparse) matrix. I implemented the power iteration method, but it is too slow to converge, so I'd like to use a package for it. Does anyone have a recommendation?
What is the best C++ eigenvalue computation package? Preferably one that is small and easy to compile.
I can't offer you any details as I haven't used it myself, but I think ARPACK could be of help, and especially ARPACK++ which is a C++ adaption as the original package is in Fortran77. I think the MATLAB function eigs() uses this to find the greatest eigenvalue (and corresponding eigenvector). From what I hear t should be able to interface with STL as well.
MATLAB uses the Fortran77 routines DSAUPD, DSEUPD, DNAUPD, DNEUPD, ZNAUPD, and ZNEUPD. They seem like the ones to look for in ARPACK++.
Check it out here.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With