Programs in Physics & Physical Chemistry
|[Licence| Download | New Version Template] aaaf_v1_0.gz(13 Kbytes)|
|Manuscript Title: The hermitian matrix eigenproblem Hx = eSx using compact array storage.|
|Authors: J.C. Nash|
|Program title: COMPLEX GENERALISED EIGENPROBLEM|
|Catalogue identifier: AAAF_v1_0|
Distribution format: gz
|Journal reference: Comput. Phys. Commun. 8(1974)85|
|Programming language: Fortran.|
|Computer: IBM 370/165.|
|Operating system: OS-MVT-HASP.|
|RAM: 125K words|
|Word size: 8|
|Keywords: General purpose, Hermitian matrix, Generalized eigenproblem, Choleski decomposition, Complex matrices.|
Nature of problem:
The eigenproblem Hx = eSx where H and S are complex hermitian matrices with S positive definite has arisen in studies of the vibrational spectra of crystals and the molecular electronic structure of polymers.
The metric S is decomposed by a complex variant of the Choleski decomposition S = LL+, where L+ denotes the hermitian conjugate of L. L is a complex lower triangular matrix with real diagonal elements. The matrix H is transformed to G= L**-1 H(L+)**-1, so the problem is recast Gy=ey, where y =L+x. G is hermitian and its eigensolutions are obtained by Mueller's algorithm. The complete process when carried out for real matrices H and S has been described by Martin and Wilkinson.
Currently the program will handle matrices of order <= 40. However, matrices of order 126 (without metric) have been solved by Birss of the University of Alberta.
The program uses a compact method for storing H and S. A hermitian matrix G may be written G=Gr+iGI, where i= (-1)**1/2; but GR**T = GR, and GI**T = -GI for G hermitian, where T denotes transposition. Note that GIjj = Mjj+iO for all j, and for k>j, Gjk = Mkj+iMjk, Gkj = Mkj- iMjk. This means of accessing array elements may be time consuming, particularly in a paging environment, where alternative storage mechanisms should be employed if large matrices are to be solved regularly.
CPU time required on the Computel/IBM 370/165 for the test deck consisting of one order 10 problem with metric, one order 10 problem without metric and one order 2 problem with metric was 6.77 s inclusive of testing. The timing is, however, altered by overall machine usage, and the same deck has been timed on a separate occassion at 5.85 s.
|Disclaimer | ScienceDirect | CPC Journal | CPC | QUB|