HP MLIB User's Guide Vol. 2 7th Ed.
888 HP MLIB User’s Guide
Sample program
C
C ... USE THE SOLUTION STORED IN ARRAY RHS
C
.
.
.
C
C ... ERROR TRAP
C
8000 ..........
Sample program for a nonsymmetric matrix:
INTEGER*4 I,J,K,NEQNS,IROW(NNZERO),JCOL(NNZERO),INRTIA(3),IER
REAL*8 GLOBAL(150),MXVALU(NNZERO),PVTTOL,VALUE
C
C ... INITIALIZE THE SPARSE MATRIX PACKAGE
C
CALL DSLEIN (NEQNS,1,6,GLOBAL,IER)
IF ( IER .NE. 0 ) GO TO 8000
CALL DSLEMA ("SU", GLOBAL, IER)
IF (IER .NE. 0) GO TO 8000
C
C ... INPUT THE MATRIX STRUCTURE (FULL MATRIX)
C
DO 100 K = 1, NNZERO
I = IROW(K)
J = JCOL(K)
CALL DSLEI1 (I,J,GLOBAL,IER)
IF ( IER .NE. 0 ) GO TO 8000
100 CONTINUE
CALL DSLEIF (GLOBAL,IER)
IF ( IER .NE. 0 ) GO TO 8000
C
C ... REORDER THE MATRIX
C
CALL DSLEOR (0,GLOBAL,IER)
IF ( IER .NE. 0 ) GO TO 8000
C -
C ... INPUT MATRIX VALUES (FULL MATRIX)
C -
DO 200 K = 1, NNZERO
I = IROW(K)
J = JCOL(K)
VALUE = MXVALU(K)
CALL DSLEV1 (I,J,VALUE,GLOBAL,IER)
IF ( IER .NE. 0 ) GO TO 8000
200 CONTINUE