From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3642 invoked by alias); 21 Mar 2007 19:18:41 -0000 Received: (qmail 3634 invoked by uid 22791); 21 Mar 2007 19:18:40 -0000 X-Spam-Check-By: sourceware.org Received: from alnrmhc16.comcast.net (HELO alnrmhc16.comcast.net) (204.127.225.96) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 21 Mar 2007 19:18:34 +0000 Received: from hippogriff.homeunix.org ([75.71.67.96]) by comcast.net (alnrmhc16) with ESMTP id <20070321191832b160078ah8e>; Wed, 21 Mar 2007 19:18:32 +0000 Received: by hippogriff.homeunix.org (Postfix, from userid 1000) id 7CFC63368; Wed, 21 Mar 2007 13:18:34 -0600 (MDT) Date: Wed, 21 Mar 2007 19:18:00 -0000 From: Patrick Alken To: gsl-discuss@sourceware.org Subject: Re: generalized eigensystems Message-ID: <20070321191834.GA30445@hippogriff.physics.drexel.edu> References: <20070313050349.GA22421@hippogriff.physics.drexel.edu> <87ejni7vqw.wl%bjg@network-theory.co.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <87ejni7vqw.wl%bjg@network-theory.co.uk> User-Agent: Mutt/1.4.2.2i Mailing-List: contact gsl-discuss-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gsl-discuss-owner@sourceware.org X-SW-Source: 2007-q1/txt/msg00065.txt.bz2 > Here is an interesting test case, it aborts with a "shouldn't get > here" error in extended precision but works in double precision (via > GSL_IEEE_MODE). Well, I've found out that the algorithm is failing under -O2 when computing the eigenvalues of a 2-by-2 generalized block. To do this I had copied the equations directly from Moler's paper which is the same thing EISPACK did, but LAPACK has a fancier routine which computes scaling factors and checks for overflow/underflow etc. Apparantly the bug shows up when looking at a block with "almost" complex eigenvalues - ie: a real eigenvalue block with a determinant very close to 0. In the no-optimization case it computes the determinant as slightly positive, and with optimization on it gets computed as slightly negative which must be the result of some sort of underflow condition. Looks like I'll have to port over the lapack routine...bleh. I should have a patch ready within the next week or so. Patrick Alken