ZAXPYI(3)    SPARSE BLAS routine of NEC Numeric Library Collection   ZAXPYI(3)



NAME
       ZAXPYI - indexed complex*16 elementary vector operation

SYNOPSIS
       SUBROUTINE ZAXPYI( NZ, A, X, INDX, Y )

           INTEGER        NZ, INDX

           COMPLEX*16     A, X

PURPOSE
       ZAXPYI  adds a complex*16 scalar multiple of a complex*16 sparse vector
       X stored in compressed form ( X, INDX ) to a  complex*16  vector  Y  in
       full  storage form.  Only the elements of Y whose indices are listed in
       INDX are referenced or modified.

       This routine performs the following vector operation:

                 Y  <--  A*X + Y

       which is the FORTRAN 77 operation

            Y(INDX(I)) = A*X(I) + Y(INDX(I))  for I = 1, ..., NZ

       The value in INDX must be distinct to allow consistent vector or paral-
       lel execution.

ARGUMENTS
       NZ      (input) INTEGER
               Number of elements in the compressed form.

       A       (input) COMPLEX*16
               Scalar multiplier of X.

       X       (input) COMPLEX*16
               Array containing the values of the compressed form.

       INDX    (input) INTEGER
               Array  containing  the  indices  of  the compressed form. It is
               assumed that the elements in INDX are distinct.

       Y       (input, output) COMPLEX*16
               Array, on input, which contains the vector Y  in  full  storage
               form.  On output only the elements corresponding to the indices
               in INDX have been modified.


FURTHER DETAILS
       Sparse BLAS algorithm is from  ACM  algorithm  692  by  D.  Dodson,  R.
       Grimes, and J. Lewis.




SPARSE BLAS routine             31 October 2017                      ZAXPYI(3)