Contents


NAME

     dscal - Compute y := alpha * y

SYNOPSIS

     SUBROUTINE DSCAL(N, ALPHA, Y, INCY)

     INTEGER N, INCY
     DOUBLE PRECISION ALPHA
     DOUBLE PRECISION Y(*)

     SUBROUTINE DSCAL_64(N, ALPHA, Y, INCY)

     INTEGER*8 N, INCY
     DOUBLE PRECISION ALPHA
     DOUBLE PRECISION Y(*)

  F95 INTERFACE
     SUBROUTINE SCAL([N], ALPHA, Y, [INCY])

     INTEGER :: N, INCY
     REAL(8) :: ALPHA
     REAL(8), DIMENSION(:) :: Y

     SUBROUTINE SCAL_64([N], ALPHA, Y, [INCY])

     INTEGER(8) :: N, INCY
     REAL(8) :: ALPHA
     REAL(8), DIMENSION(:) :: Y

  C INTERFACE
     #include <sunperf.h>

     void dscal(int n, double alpha, double *y, int incy);

     void dscal_64(long n, double alpha, double *y, long incy);

PURPOSE

     dscal Compute y := alpha * y where alpha is a scalar  and  y
     is an n-vector.

ARGUMENTS

     N (input)
               On entry, N specifies the number  of  elements  in
               the  vector.   N  must  be  at  least  one for the
               subroutine to have any visible effect.   Unchanged
               on exit.

     ALPHA (input)
               On  entry,  ALPHA  specifies  the  scalar   alpha.
               Unchanged on exit.

     Y (input/output)
               ( 1 + ( n - 1 )*abs( INCY  )  ).   On  entry,  the
               incremented  array Y must contain the vector y. On
               exit, Y is overwritten by the updated vector y.

     INCY (input)
               On entry, INCY specifies  the  increment  for  the
               elements  of  Y. INCY must not be zero.  Unchanged
               on exit.