Hello Ahmed,
The function "Eigenvalues_Preconditioner" computes Eigenvalues of the the generalized EVP
[tex]
A x = \lambda C x
[/tex]
For SPD (or hermitian) matrices A and C.
When beta is positive (or not too negative), your matrix is SPD. When it is not, it also has negative eigenvalues, and Eigenvalues_Preconditioner does not work. This does not say anything about how good those preconditioners are, just that you cannot use Eigenvalues_Preconditioner to get the Eigenvalues.
NGSolve has the "ArnoldiSolver" to solve such problems, but afaik both matrices A and C have to be given as sparse matrices, which is not the case if C is (the inverse of) a preconditioner. Besides that I do not know if there is a built-in solver that can compute these Eigenvalues.
For large, negative lambda, I am not sure which preconditioners work well.
I believe "bddc" works if your mesh is fine enough, but will have to invert a relatively large problem directly.
"multigrid" should work as long as the coarsest mesh is fine enough, in which case it also requires you to solve a relatively large problem directly.
Best,
Lukas