22.09.2013 Views

SSL II USER'S GUIDE - Lahey Computer Systems

SSL II USER'S GUIDE - Lahey Computer Systems

SSL II USER'S GUIDE - Lahey Computer Systems

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

storage mode. (For details, see Section 2.8)<br />

Obtaining all eigenvalues<br />

All eigenvalues of a Hermitian matrix A can be obtained<br />

in steps 1) and 2) below.<br />

:<br />

CALL TRIDH(A,K,N,D,SD,V,ICON) 1)<br />

IF(ICON .EQ. 30000)GO TO 1000<br />

CALL TRQL(D,SD,N,E,M,ICON) 2)<br />

:<br />

1) A Hermitian matrix A is reduced to a real symmetric<br />

tridiagonal matrix using the Householder method.<br />

2) All eigenvalues of the real symmetric tridiagonal<br />

matrix are obtained using the QL method.<br />

Obtaining selected eigenvalues<br />

By using steps 1) and 2) below, the largest (or smallest)<br />

m eigenvalues of a matrix A can be obtained.<br />

:<br />

CALL TRIDH(A,K,N,D,SD,V,ICON) 1)<br />

IF(ICON .EQ. 30000)GO TO 1000<br />

CALL BSCT1(D,SD,N,M,EPST,E,VW,ICON) 2)<br />

:<br />

1) A Hermitian metrics A is reduced to a real symmetric<br />

tridiagonal matrix by the Householder method.<br />

2) The largest (or smallest) m eigenvalues of the real<br />

symmetric tridiagonal matrix are obtained using the<br />

bisection method.<br />

When obtaining more than n/4 eigenvalues of A of order<br />

n, it is generally faster to use subroutines TRIDH and<br />

TRQL as described in “Obtaining all eigenvalues”.<br />

Obtaining all eigenvalues and corresponding<br />

eigenvectors<br />

All eigenvalues and corresponding eigenvectors can be<br />

obtained either by using steps 1) through 3)or by using<br />

step 4), (see below).<br />

:<br />

CALL TRIDH(A,K,N,D,SD,V,ICON) 1)<br />

IF(ICON .EQ. 30000)GO TO 1000<br />

CALL TEIG1(D,SD,N,E,EV,K,M,ICON) 2)<br />

IF(ICON .GE. 20000)GO TO 2000<br />

CALL TRBKH(EV,EVI,K,N,M,P,V,ICON) 3)<br />

IF(ICON .EQ. 30000)GO TO 3000<br />

:<br />

or standard routine<br />

:<br />

CALL HEIG2(A,K,N,N,E,EVR,EVI,VW,<br />

*ICON) 4)<br />

IF(ICON .GE. 20000)GO TO 1000<br />

:<br />

EIGENVALUES AND EIGENVECTORS<br />

1) A Hermitian matrix A is reduced to a real symmetric<br />

tridiagonal matrix<br />

2) Eigenvalues of the real symmetric tridiagonal matrix<br />

(i.e., eigenvalues of A) and corresponding<br />

eigenvectors are obtained using the QL method.<br />

3) The Eigenvectors obtained in 2) are transformed to<br />

the eigenvectors of A.<br />

4) The standard routine HEIG2 can perform all the<br />

above steps 1) through 3). In this case, the fourth<br />

parameter N of HEIG2 indicates to obtain the largest<br />

n eigenvalues.<br />

Obtaining selected eigenvalues and corresponding<br />

eigenvectors<br />

A selected number of eigenvalues (m) and corresponding<br />

eigenvectors of a Hermitian matrix can be obtained either<br />

by using steps 1) through 3)or by using step 4), (see<br />

below).<br />

:<br />

CALL TRIDH(A,K,N,D,SD,V,ICON) 1)<br />

IF(ICON .EQ. 30000)GO TO 1000<br />

CALL TEIG2(D,SD,N,M,E,EV,K,VW,ICON) 2)<br />

IF(ICON .GE. 20000)GO TO 2000<br />

CALL TRBKH(EV,EVI,K,N,M,P,V,ICON) 3)<br />

IF(ICON .EQ. 30000)GO TO 3000<br />

:<br />

or standard routine<br />

:<br />

CALL HEIG2(A,K,N,M,E,EVR,EVI,VW,ICON) 4)<br />

IF(ICON .GE. 20000)GO TO 1000<br />

:<br />

1) A Hermitian matrix A is reduced to a real symmetric<br />

tridiagonal matrix.<br />

2) The largest (or smallest) m eigenvalues and<br />

corresponding eigenvectors of the real symmetric<br />

tridiagonal matrix are obtained using the bisection<br />

method and the inverse iteration method.<br />

3) Back transformation of the eigenvectors obtained in<br />

2) are performed.<br />

4) The standard routine HEIG2 can perform all the<br />

above steps 1) through 3).<br />

4.6 EIGENVALUES AND<br />

EIGENVECTORS OF A REAL<br />

SYMMETRIC BAND MATRIX<br />

Subroutines BSEG, BTRID, BSVEC and BSEGJ are<br />

provided for obtaining eigenvalues and eigenvectors of a<br />

real symmetric band matrix.<br />

These subroutines are suitable for large matrices, for<br />

example, matrices of the order n > 100 and h/n < 1/6,<br />

41

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!