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



NAME
       DAXPYI - indexed double precision elementary vector operation

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

           INTEGER        NZ, INDX

           DOUBLE PRECISION
                          A, X

PURPOSE
       DAXPYI  adds  a  double precision scalar multiple of a double precision
       sparse vector X stored in compressed form ( X, INDX ) to a double  pre-
       cision  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) DOUBLE PRECISION
               Scalar multiplier of X.

       X       (input) DOUBLE PRECISION
               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) DOUBLE PRECISION
               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                      DAXPYI(3)