HP MLIB User's Guide Vol. 2 7th Ed.

1016 HP MLIB User’s Guide
Sample program
C -
C ... INPUT MATRIX VALUES
C -
DO 200 K = 1, NNZERO
I = IROW(K)
J = JCOL(K)
VALUE = MXVALU(K)
CALL DSEVV1 (’A’,I,J,VALUE,GLOBAL,IER)
IF ( IER .NE. 0 ) GO TO 8000
200 CONTINUE
C
C ... COMPUTE THE EIGENVALUES AND EIGENVECTORS
C
CALL DSEVES (10,’L’,’O’,.FALSE.,DUMMY,.FALSE.,DUMMY,
1 DUMMY,NFOUND,NDISCD,GLOBAL,IER,WARNNG)
IF ( IER .NE. 0 ) GO TO 8000
C
C ... CHECK ACCURACY
C
CALL DSEVCK (.TRUE.,ORTWRN,DISCRP,GLOBAL,IER)
IF ( IER .NE. 0 ) GO TO 8000
IF ( ORTWRN ) PRINT *,’EIGENVALUE/EIGENVECTOR DISCREPANCY
=’,DISCRP
C -
C ... RETRIEVE EIGENVALUES AND EIGENVECTORS
C -
CALL DSEVRC (20,EVALUE,1,NFOUND,EVECTR,NEQNS,GLOBAL,IER)
IF ( IER .NE. 0 ) GO TO 8000
C
C ... USE THE EIGENVALUES AND EIGENVECTORS
C
.
.
.
C
C ... ERROR TRAP
C
8000 ..........