Contents


NAME

     ddot - compute the dot product of two vectors x and y.

SYNOPSIS

     DOUBLE PRECISION FUNCTION DDOT(N, X, INCX, Y, INCY)

     INTEGER N, INCX, INCY
     DOUBLE PRECISION X(*), Y(*)

     DOUBLE PRECISION FUNCTION DDOT_64(N, X, INCX, Y, INCY)

     INTEGER*8 N, INCX, INCY
     DOUBLE PRECISION X(*), Y(*)

  F95 INTERFACE
     REAL(8) FUNCTION DOT([N], X, [INCX], Y, [INCY])

     INTEGER :: N, INCX, INCY
     REAL(8), DIMENSION(:) :: X, Y

     REAL(8) FUNCTION DOT_64([N], X, [INCX], Y, [INCY])

     INTEGER(8) :: N, INCX, INCY
     REAL(8), DIMENSION(:) :: X, Y

  C INTERFACE
     #include <sunperf.h>

     double ddot(int n, double  *x,  int  incx,  double  *y,  int
               incy);

     double ddot_64(long n, double *x, long incx, double *y, long
               incy);

PURPOSE

     ddot compute the dot product of x and y where x  and  y  are
     n-vectors.

ARGUMENTS

     N (input)
               On entry, N specifies the number  of  elements  in
               the  vector.   If N is not positive then the func-
               tion returns the value 0.0.  Unchanged on exit.
     X (input)
               ( 1 + ( n - 1 )*abs( INCX  )  ).   On  entry,  the
               incremented  array  X  must  contain the 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  )  ).   On  entry,  the
               incremented  array  Y  must  contain the 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.