* F16GHF Example Program Text * Mark 22 Release. NAG Copyright 2007. * .. Parameters .. INTEGER NIN, NOUT PARAMETER (NIN=5,NOUT=6) INTEGER NMAX, INCMAX PARAMETER (NMAX=10,INCMAX=NMAX) * .. Local Scalars .. COMPLEX *16 ALPHA, BETA INTEGER I, INCW, INCX, INCY, N * .. Local Arrays .. COMPLEX *16 W(1+(NMAX-1)*ABS(INCMAX)), + X(1+(NMAX-1)*ABS(INCMAX)), + Y(1+(NMAX-1)*ABS(INCMAX)) * .. External Subroutines .. EXTERNAL BLAS_ZWAXPBY * .. Intrinsic Functions .. INTRINSIC ABS * .. Executable Statements .. CONTINUE * WRITE (NOUT,*) 'F16GHF/BLAS_ZWAXPBY Example Program Results' * * Skip heading in data file * READ (NIN,*) * * Read N from data file * READ (NIN,*) N * * Read INCX, INCY and INCW from data file * READ (NIN,*) INCX, INCY, INCW * IF (N.LE.NMAX .AND. ABS(INCX).LE.INCMAX .AND. ABS(INCY) + .LE.INCMAX .AND. ABS(INCW).LE.INCMAX) THEN * * Read ALPHA and BETA from data file * READ (NIN,*) ALPHA, BETA * * Read X and Y from data file * READ (NIN,*) (X(I),I=1,1+(N-1)*ABS(INCX),INCX) READ (NIN,*) (Y(I),I=1,1+(N-1)*ABS(INCY),INCY) * * Compute W = ALPHA*X + BETA*Y * CALL BLAS_ZWAXPBY(N,ALPHA,X,INCX,BETA,Y,INCY,W,INCW) * WRITE (NOUT,*) WRITE (NOUT,99999) WRITE (NOUT,99998) (W(I),I=1,N) END IF * 99999 FORMAT (1X,'Result of scaled vector addition is') 99998 FORMAT (1X,'W = ( ',2('(',F9.4,',',F9.4,'), '),'(',F9.4,',',F9.4, + ') )') END