From Pensak@UDEL.EDU Wed Mar 25 05:29:37 1987 Received: from UDEL.EDU (dewey.udel.edu.ARPA) by anl-mcs.ARPA (4.12/4.9) id AA24156; Wed, 25 Mar 87 05:29:31 cst Date: Wed, 25 Mar 87 6:29:12 EST From: Pensak@UDEL.EDU To: dongarra@anl-mcs.arpa Subject: Diagonalization Message-Id: <8703250629.a024836@Dewey.UDEL.EDU> Status: R Treeql is performing exactly as advertised. I have inserted it into three of my molecular orbital codes and it is getting significantly more accurate norms and running about 2.5x faster than the routines that I used to use. Would it be possible to get a copy of your parallelized version ? I would like to convert it to run on our BBN Butterfly and on our array of INMOS Transputers. Thank you very much. From Pensak@UDEL.EDU Wed Mar 25 18:55:58 1987 Received: from UDEL.EDU (dewey.udel.edu.ARPA) by anl-mcs.ARPA (4.12/4.9) id AA09644; Wed, 25 Mar 87 18:55:46 cst Date: Wed, 25 Mar 87 19:47:57 EST From: Pensak@UDEL.EDU To: Jack Dongarra Subject: Re: Diagonalization Message-Id: <8703251947.a008865@Dewey.UDEL.EDU> Status: R The matrices are running between 150 and 350. They are somewhat dense, since the off diagonal elements reflect atomic orbital overlap (which is non-zero except at distances above several angstroms, though the vast majority of elements are close to zero [i.e. less than .1] ). The place where the improvement was most notable was in highly symmetrical chemical structures where there are several degenerate eigenvalues (molecular orbitals). The orthogonality was about 2 digits closer to 0 than the old givens routine that I had been using. I do, in fact, need all vectors and values. One wierd result that I wanted to share with you, since I am befuddled is: I modified your test program to work with matrices of size 2,4,8,16... rather than 50,100,etc. For those cases up through size 128 the ratio of tql to treeql vaired between 2.9 and 3.4 for the pathological cases (for fun I modified the twos on the diagonal case to 0's on the diagonal, but I know it wont make a difference) and between 1.8 and 2.9 for the random case. For dimension 256 however the 0's test gave 3.3, but the random gave 6.33. I plan to run other cases to see if there is something special about a 2**N size matrix, but from what I understand of your algorithm, there should not be such a massive effect. I will keep you posted on the testing. .