eigenvalues of a circulant matrix
--- Prof Brian Ripley <ripley at stats.ox.ac.uk> wrote:
I think we need to make clear that eigen() by default relies on LAPACK routines and they in turn rely on BLAS routines. We have seen several instances in which LAPACK/BLAS return NaNs when they should not, but all that I am aware of are when (broken) external libraries were used. So the occurrence of NaNs should lead you to question other aspects of your computational environment. If you have such a broken environment, calling eigen(EISPACK=TRUE) may be a palliative, but it is better to track the problem down.
Dear Professor Ripley, Very interesting! eigen(EISPACK=TRUE) indeed does not return NaN's. So, you think my system is broken? How would anyone figure this out? However, why does my C program work fine, using the same LAPACK? (I must say that LAPACK was broken for a while on Fedora Core 3 -- when it was released, as documented on bugzilla, but a recompile with a fortran option supposedly took care of it.) Many thanks and best wishes!