If you know how to cheaply compute a basis of the nullspace of S, then you can try passing it to the solver via EPSSetDeflationSpace() https://slepc.upv.es/documentation/current/docs/manualpages/EPS/EPSSetDeflationSpace.html
Jose > El 31 may 2022, a las 19:28, Lucas Banting <[email protected]> escribió: > > Hello, > > I have a general non hermitian eigenvalue problem arising from the 3D > helmholtz equation. > The form of the helmholtz equaton is: > > (S - k^2M)v = lambda k^2 M v > > Where S is the stiffness/curl-curl matrix and M is the mass matrix associated > with edge elements used to discretize the problem. > The helmholtz equation creates eigenvalues of -1.0, which I believe are > eigenvectors that are part of the null space of the curl-curl operator S. > > For my application, I would like to compute eigenvalues > -1.0, and avoid > computation of eigenvalues of -1.0. > I am currently using shift invert ST with mumps LU direct solver. By > increasing the shift away from lambda=-1.0. I get faster computation of > eigenvectors, and the lambda=-1.0 eigenvectors appear to slow down the > computation by about a factor of two. > Is there a way to avoid these lambda = -1.0 eigenpairs with a GNHEP problem > type? > > Regards, > Lucas
