Contents


NAME

     caxpyi - Compute y := alpha * x + y

SYNOPSIS

      SUBROUTINE CAXPYI(NZ, A, X, INDX, Y)

      COMPLEX A
      COMPLEX X(*), Y(*)
      INTEGER NZ
      INTEGER INDX(*)

      SUBROUTINE CAXPYI_64(NZ, A, X, INDX, Y)

      COMPLEX A
      COMPLEX X(*), Y(*)
      INTEGER*8 NZ
      INTEGER*8 INDX(*)

     F95 INTERFACE
      SUBROUTINE AXPYI([NZ], [A], X, INDX, Y)

      COMPLEX :: A
      COMPLEX, DIMENSION(:) :: X, Y
      INTEGER :: NZ
      INTEGER, DIMENSION(:) :: INDX

      SUBROUTINE AXPYI_64([NZ], [A], X, INDX, Y)

      COMPLEX :: A
      COMPLEX, DIMENSION(:) :: X, Y
      INTEGER(8) :: NZ
      INTEGER(8), DIMENSION(:) :: INDX

PURPOSE

     CAXPYI Compute y := alpha * x + y where alpha is a scalar, x
     is a sparse vector, and y is a vector in full storage form

      do i = 1, n
        y(indx(i)) = alpha * x(i) + y(indx(i))
      enddo

ARGUMENTS

     NZ (input) - INTEGER
             Number of elements in the compressed form.
             Unchanged on exit.

     A (input)
             On entry, A(LPHA) specifies the scaling value.
             Unchanged on exit. A is defaulted to (1.0E0, 0.0E0)
             for F95 INTERFACE.
     X (input)
             Vector containing the values of the compressed form.
             Unchanged on exit.

     INDX (input) - INTEGER
             Vector containing the indices of the compressed
             form.  It is assumed that the elements in INDX are
             distinct and greater than zero.  Unchanged on exit.

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