[petsc-users] Slepc JD and GD converge to wrong eigenpair

Toon Weyens toon.weyens at gmail.com
Wed Mar 29 02:08:12 CDT 2017


I started looking for alternatives from the standard Krylov-Schur method to
solve the generalized eigenvalue problem Ax = kBx in my code. These
matrices have a block-band structure (typically 5, 7 or 9 blocks wide, with
block sizes of the order 20) of size typically 1000 blocks. This eigenvalue
problem results from the minimization of the energy of a perturbed
plasma-vacuum system in order to investigate its stability. So far, I've
not taken advantage of the Hermiticity of the problem.

For "easier" problems, especially the Generalized Davidson method converges
like lightning, sometimes up to 100 times faster than Krylov-Schur.

However, for slightly more complicated problems, GD converges to the wrong
eigenpair: There is certainly an eigenpair with an eigenvalue lower than 0
(i.e. unstable), but the solver never gets below some small, positive
value, to which it wrongly converges.

Is it possible to improve this behavior? I tried changing the
preconditioner, but it did not work.

Might it be possible to use Krylov-Schur until reaching some precision, and
then switching to JD to quickly converge?

Thanks!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20170329/b4546749/attachment.html>


More information about the petsc-users mailing list