PC problem alert
A colleague discovered the following problem and suggested that I pass it
on to the computational community, given the popularity of PCs.
Department of Chemistry
The University of Akron
Akron, OH 44325-3601
Subject: Numerical instabilities on PC's
We have found mumerical instabilities for matrix diagonalizations on certain
PC's. The same Microsoft Fortran 5.1 double precision executable module was
used on all PC's; Sun Fortran was used under UNIX on the SPARC station.
Using a 111x111 relatively sparse matrix and a Jacobi rotation routine,
a Compuadd 286 PC produced inaccurate eigenvalues. However, a Gateway 386 PC,
a SPARC station IPC (UNIX) and the SPARC station running Microsoft Fortran
under Soft-PC all produced correct results. For this test the Gateway 386 was
stable up to the maximum size tested, 150x150. The SPARC station has shown no
instability up to 550x550.
Under previous tests, 3 different Compuadd 286 PC's all produced identical
erroneous results. These 286 PC's all produced accurate results for relatively
small matrices. But the inaccuracies began at some threshold matrix dimension
(typically 40 to 100) and rapidly increased in magnitude until the results were
unrecognizable. Symptoms include failure to reproduce rigorous degeneracies
and unnormalized eigenvectors. The precise threshold depends on the nature of
the matrix and on the particular diagonalization algorithm. The faster
Householder method is less stable than Jacobi rotations.
From these tests we conclude that MS Fortran itself is OK. The problem might