From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18405 invoked by alias); 17 Oct 2002 07:11:42 -0000 Mailing-List: contact gsl-discuss-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gsl-discuss-owner@sources.redhat.com Received: (qmail 18395 invoked from network); 17 Oct 2002 07:11:40 -0000 Received: from unknown (HELO relay.sckcen.be) (193.190.187.211) by sources.redhat.com with SMTP; 17 Oct 2002 07:11:40 -0000 Received: from 193.190.143.188 by relay.sckcen.be (InterScan E-Mail VirusWall NT); Thu, 17 Oct 2002 09:11:38 +0200 Received: from pc1727.sck.be ([193.190.184.23]) by mailsrv3.sck.be over TLS secured channel with Microsoft SMTPSVC(5.0.2195.5329); Thu, 17 Oct 2002 09:11:38 +0200 Received: from pc1727.sck.be (localhost [127.0.0.1]) by pc1727.sck.be (8.12.3/8.12.3/SuSE Linux 0.6) with SMTP id g9H7BNnX019460; Thu, 17 Oct 2002 09:11:23 +0200 Date: Thu, 17 Oct 2002 00:11:00 -0000 From: Gert Van den Eynde To: Steve Martin Cc: gsl-discuss@sources.redhat.com Subject: Re: problem with gsl_eigen_hermv(), possibly due to bug in gsl_linalg_complex_householder_transform() Message-Id: <20021017091123.43d1b914.gvdeynde@sckcen.be> In-Reply-To: References: Organization: SCK-CEN Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-OriginalArrivalTime: 17 Oct 2002 07:11:38.0671 (UTC) FILETIME=[6F95D3F0:01C275AC] X-SW-Source: 2002-q4/txt/msg00038.txt.bz2 Hi, Just to let you know I can reproduce this behaviour. I think we can classify this as a bug. I'll try to have a look at it later (I don't have my Golub and Van Loan at hand here), but if someone else has a solution, feel free.... Bye, Gert On Tue, 15 Oct 2002 17:26:32 -0500 (CDT) Steve Martin wrote: > Hi, > > I think there may be a bug in gsl 1.2 which affects the computation of > eigenvectors of Hermitian matrices using gsl_eigen_hermv(), but quite > possibly other things too. > > Everything works fine except when the Hermitian matrix has some zero > entries. Then the eigenvectors returned are NaN in one or more entries. > In particular, the bug always seems to arise when the original matrix is > diagonal. > > Attached is a small program which illustrates the problem for the 3x3 > matrices {{2,0,0},{0,3,0},{0,0,4}} and {{2,1,0},{1,2,0},{0,0,4}} and > {{2,0,1},{0,3,0},{1,0,4}}. In contrast, I have checked that Hermitian > matrices with generic non-zero entries do not see the problem. Also, not > all matrices with some zero entries have a problem, for example > {{2,0,0},{0,3,x},{0,x,4}} is handled correctly for any non-zero value of > x. > > I do not have a patch, but I think the problem may be as follows: > gsl_eigen_hermv() in eigen/hermv.c calls the function > gsl_linalg_hermtd_decomp() in linalg/hermtd.c, which in turn calls > gsl_linalg_complex_householder_transform() in linalg/householdercomplex.c > In the latter function, the variable beta_r is divided by, but it seems > to be 0 in the bad cases mentioned above. > > Information on my setup: > I am using gsl 1.2, compiled without optimization. To be specific, > I changed -O2 to -O0 on lines 1268 and 1274 of configure. Otherwise, > the install was the generic one: make check produced no failures. > My hardware is a dual pentium III running Linux kernel 2.4.9-34smp. > The output of gcc -v is: > gcc version 2.96 20000731 (Red Hat Linux 7.2 2.96-108.7.2) > (I'm running standard Red Hat 7.2 with all updates applied.) > > I'll be happy to try to provide more info if needed. > > Thanks in advance for whatever you can tell me about this, > Steve Martin >