DPNNZR(3)

SYNOPSIS
SUBROUTINE DPNNZR (I, XVAL, IPLACE, SX, IX, IRCX)

NAME
dpnnzr - Subsidiary to DSPLP

LIBRARY
SLATEC

TYPE
DOUBLE PRECISION (PNNZRS-S, DPNNZR-D)

AUTHOR
Hanson, R. J., (SNLA) Wisniewski, J. A., (SNLA)

DESCRIPTION
DPNNZR LIMITS THE TYPE OF STORAGE TO A SEQUENTIAL SCHEME. SPARSE MATRIX NON ZERO RETRIEVAL SUBROUTINE. SUBROUTINE DPNNZR() GETS THE NEXT NONZERO VALUE IN ROW OR COLUMN +/- IRCX WITH AN INDEX GREATER THAN THE VALUE OF I. I ABSOLUTE VALUE OF THIS SUBSCRIPT IS TO BE EXCEEDED IN THE SEARCH FOR THE NEXT NONZERO VALUE. A NEGATIVE OR ZERO VALUE OF I CAUSES THE SEARCH TO START AT THE BEGINNING OF THE VECTOR. A POSITIVE VALUE OF I CAUSES THE SEARCH TO CONTINUE FROM THE LAST PLACE ACCESSED. ON OUTPUT, THE ARGUMENT I CONTAINS THE VALUE OF THE SUBSCRIPT FOUND. AN OUTPUT VALUE OF I EQUAL TO ZERO INDICATES THAT ALL COMPONENTS WITH AN INDEX GREATER THAN THE INPUT VALUE OF I ARE ZERO. XVAL VALUE OF THE NONZERO ELEMENT FOUND. ON OUTPUT, XVAL=0. WHENEVER I=0. IPLACE POINTER INFORMATION WHICH IS MAINTAINED BY THE PACKAGE. SX(*),IX(*) THE WORK ARRAYS WHICH ARE USED TO STORE THE SPARSE MATRIX. THESE ARRAY CONTENTS ARE AUTOMATICALLY MAINTAINED BY THE PACKAGE FOR THE USER. IRCX POINTS TO THE VECTOR OF THE MATRIX BEING SCANNED. A NEGATIVE VALUE OF IRCX INDICATES THAT ROW -IRCX IS TO BE SCANNED. A POSITIVE VALUE OF IRCX INDICATES THAT COLUMN IRCX IS TO BE SCANNED. A ZERO VALUE OF IRCX IS AN ERROR. THIS SUBROUTINE IS A MODIFICATION OF THE SUBROUTINE LNNZRS, SANDIA LABS. REPT. SAND78-0785. MODIFICATIONS BY K.L. HIEBERT AND R.J. HANSON

REVISED 811130-1000 REVISED YYMMDD-HHMM

SEE ALSO
DSPLP

ROUTINES CALLED
IDLOC, XERMSG

REVISION HISTORY (YYMMDD)
811215 DATE WRITTEN
890531 Changed all specific intrinsics to generic. (WRB)
890605 Removed unreferenced labels. (WRB)
890606 Changed references from IPLOC to IDLOC. (WRB)
891214 Prologue converted to Version 4.0 format. (BAB)
900315 CALLs to XERROR changed to CALLs to XERMSG. (THJ)
900328 Added TYPE section. (WRB)
910403 Updated AUTHOR and DESCRIPTION sections. (WRB)