tor, 22 01 2009 kl. 14:19 +0100, skrev Jaroslav Hajek:
On Thu, Jan 22, 2009 at 1:39 PM, Søren Hauberg <address@hidden> wrote:
tor, 22 01 2009 kl. 13:35 +0100, skrev Francesco Potortì:
Is it possible to force 'eigs' to produce real eigenvalues? I'm
computing eigenvalues of a real symmetric matrix, but I'm still getting
complex eigenvalues (numerical issues I guess), so it would be nice if I
could force them into being real.
Have you looked at the numbers? If the imaginary part is very small
compared to the real one, you can just discard it using real(). If not,
you may have stability problems.
Yeah, I can just discard them using real (they are indeed quite small).
It just seems to me that it would be better if I could constraint 'eigs'
to working only with real values.
I think this is a bug - eigs should discover a symmetric case.
If I understand the documentation correctly it should even be possible
to force the problem to be treated as symmetric by passing
struct ("issym", true)
as an option. This, however, still produced complex results.
Søren