********************************************************************** C C Copyright (C) 1992 Roland W. Freund and Noel M. Nachtigal C All rights reserved. C C This code is part of a copyrighted package. For details, see the C file `cpyrit.doc' in the top-level directory. C C ***************************************************************** C ANY USE OF THIS CODE CONSTITUTES ACCEPTANCE OF THE TERMS OF THE C COPYRIGHT NOTICE C ***************************************************************** C C********************************************************************** C DOUBLE PRECISION FUNCTION DZNRM1 (N,ZX,INCX) C C Purpose: C This function computes the 1-norm of ZX. C C Parameters: C N = the dimension of the vectors (input). C ZX = the vector whose 1-norm is to be computed (input). C INCX = the stride (input). C C Noel M. Nachtigal C March 23, 1993 C C********************************************************************** C INTRINSIC CDABS C INTEGER INCX, N DOUBLE COMPLEX ZX(N) C C Local variables. C INTEGER I, IX DOUBLE PRECISION DTMP C IF (N.LE.0) RETURN DTMP = 0.0D0 IF (INCX.EQ.1) GO TO 20 C IX = 1 IF (INCX.LT.0) IX = (-N+1)*INCX + 1 DO 10 I = 1, N DTMP = DTMP + CDABS(ZX(IX)) IX = IX + INCX 10 CONTINUE DZNRM1 = DTMP RETURN C 20 DO 30 I = 1, N DTMP = DTMP + CDABS(ZX(I)) 30 CONTINUE DZNRM1 = DTMP RETURN C END C C**********************************************************************