Contents


NAME

     cgeru - perform the rank 1 operation   A := alpha*x*y' + A

SYNOPSIS

     SUBROUTINE CGERU(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)

     COMPLEX ALPHA
     COMPLEX X(*), Y(*), A(LDA,*)
     INTEGER M, N, INCX, INCY, LDA

     SUBROUTINE CGERU_64(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)

     COMPLEX ALPHA
     COMPLEX X(*), Y(*), A(LDA,*)
     INTEGER*8 M, N, INCX, INCY, LDA

  F95 INTERFACE
     SUBROUTINE GER([M], [N], ALPHA, X, [INCX], Y, [INCY], A, [LDA])

     COMPLEX :: ALPHA
     COMPLEX, DIMENSION(:) :: X, Y
     COMPLEX, DIMENSION(:,:) :: A
     INTEGER :: M, N, INCX, INCY, LDA

     SUBROUTINE GER_64([M], [N], ALPHA, X, [INCX], Y, [INCY], A, [LDA])

     COMPLEX :: ALPHA
     COMPLEX, DIMENSION(:) :: X, Y
     COMPLEX, DIMENSION(:,:) :: A
     INTEGER(8) :: M, N, INCX, INCY, LDA

  C INTERFACE
     #include <sunperf.h>

     void cgeru(int m, int n, complex  *alpha,  complex  *x,  int
               incx, complex *y, int incy, complex *a, int lda);

     void cgeru_64(long m, long n, complex  *alpha,  complex  *x,
               long incx, complex *y, long incy, complex *a, long
               lda);

PURPOSE

     cgeru performs the rank 1 operation  A  :=  alpha*x*y'  +  A
     where alpha is a scalar, x is an m element vector, y is an n
     element vector and A is an m by n matrix.

ARGUMENTS

     M (input)
               On entry, M specifies the number of  rows  of  the
               matrix A.  M >= 0.  Unchanged on exit.

     N (input)
               On entry, N specifies the number of columns of the
               matrix A.  N >= 0.  Unchanged on exit.

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

     X (input)
               ( 1 + ( m - 1 )*abs( INCX ) ).  Before entry,  the
               incremented  array  X  must  contain the m element
               vector x.  Unchanged on exit.

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

     Y (input)
               ( 1 + ( n - 1 )*abs( INCY ) ).  Before entry,  the
               incremented  array  Y  must  contain the n element
               vector y.  Unchanged on exit.

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

     A (input/output)
               Before entry, the leading m by n part of the array
               A  must  contain  the  matrix  of coefficients. On
               exit, A is overwritten by the updated matrix.

     LDA (input)
               On entry, LDA specifies the first dimension  of  A
               as  declared  in the calling (sub) program. LDA >=
               max( 1, m ).  Unchanged on exit.