[petsc-users] Solve for all repeated eigenvalues

Jose E. Roman jroman at dsic.upv.es
Thu Jun 28 16:21:50 CDT 2018


This is a known issue of Krylov solvers. Sometimes you can workaround it by increasing the number of eigenvalues to compute (nev, for instance request twice as much as you need) and maybe reduce the mpd parameter to force more restarts. This approach is quite wasteful and still there is no guarantee that you get the full multiplicities right.

To avoid the issue completely, use the lobpcg solver. However, SLEPc's implementation of lobpcg is not very well tuned, I have to take some time to improve it. You can also try the BLOPEX interface (configure --download-blopex in SLEPc).

Jose


> El 28 jun 2018, a las 22:53, Greg Meyer <gregory.meyer at gmail.com> escribió:
> 
> Hi all,
> 
> I'm using SLEPc to solve for some eigenvalues. If I ask for the eigenvalues with the leftmost real part (using SMALLEST_REAL), and there are repeated eigenvalues, it appears that the solver does not always find all of the repeated values before jumping up to the next unique eigenvalue. For example if the lowest eigenvalues of my matrix are [-12, -10, -10, -10, -8], and I request 4 eigenvalues, I may get [-12, -10, -10, -8]. I'm using the default solver. Is there any way, or any solver, that ensures that no eigenvalues are skipped?
> 
> Thanks in advance,
> Greg



More information about the petsc-users mailing list