Eigenvalues and eigenvectors of an ill-conditioned matrix

jcooper_at_ucalgary.ca
Date: 12/31/04


Date: 31 Dec 2004 10:03:39 -0800

I want to find the eigenvalues and eigenvectors for a matrix which is
extremely ill-conditioned (true eigenvalues span perhaps 20-30 orders
of magnitude). I trust the values in the matrix. When I try to obtain
the eigenvalues and eigenvectors using LAPACK's DSYEV, however, the
values are good only down to about 1.0E-16 of the highest eigenvalue.
Below that, there's a pile-up of random values including some negative
(whereas I know the matrix to be positive semidefinite).

The cutoff seems suspiciously close to the machine error for a
double-precision floating point value, and given the negative
eigenvalues I suspect that's what I'm running up against.

Is there a standard way to obtain the eigenvalues and eigenvectors of
such a matrix?

Thank you.