saxpyi(3P) Sun Performance Library saxpyi(3P)NAMEsaxpyi - Compute y := alpha * x + y
SYNOPSIS
SUBROUTINE SAXPYI(NZ, A, X, INDX, Y)
REAL A
REAL X(*), Y(*)
INTEGER NZ
INTEGER INDX(*)
SUBROUTINE SAXPYI_64(NZ, A, X, INDX, Y)
REAL A
REAL X(*), Y(*)
INTEGER*8 NZ
INTEGER*8 INDX(*)
F95 INTERFACE
SUBROUTINE AXPYI([NZ], [A], X, INDX, Y)
REAL :: A
REAL, DIMENSION(:) :: X, Y
INTEGER :: NZ
INTEGER, DIMENSION(:) :: INDX
SUBROUTINE AXPYI_64([NZ], [A], X, INDX, Y)
REAL :: A
REAL, DIMENSION(:) :: X, Y
INTEGER(8) :: NZ
INTEGER(8), DIMENSION(:) :: INDX
C INTERFACE
#include <sunperf.h>
void saxpyi (const int nz, const float a, const float* x, const int*
indx, float* y);
void saxpyi_64 (const long nz, const float a, const float* x, const
long* indx, float* y);
PURPOSE
SAXPYI 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 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.
3rd Berkeley Distribution 6 Mar 2009 saxpyi(3P)