code: func (impl *Standard) Ddot(n int, x []float64, incX int, y []float64, incY int) (retVal float64) {
  	// declared at cublasgen.h:194:17 enum CUBLAS_STATUS { ... } cublasDdot ...
  	if impl.e != nil {
  		return
  	}
  
  	if n < 0 {
  		panic("blas: n < 0")
  	}
  	if incX == 0 {
  		panic("blas: zero x index increment")
  	}
  	if incY == 0 {
  		panic("blas: zero y index increment")
  	}
  	if (incX > 0 && (n-1)*incX >= len(x)) || (incX < 0 && (1-n)*incX >= len(x)) {
  		panic("blas: x index out of range")
  	}
  	if (incY > 0 && (n-1)*incY >= len(y)) || (incY < 0 && (1-n)*incY >= len(y)) {
  		panic("blas: y index out of range")
  	}
  	if n == 0 {
  		return
  	}
  	impl.e = status(C.cublasDdot(C.cublasHandle_t(impl.h), C.int(n), (*C.double)(&x[0]), C.int(incX), (*C.double)(&y[0]), C.int(incY), (*C.double)(&retVal)))
  	return retVal
  }
docs: // Ddot computes the dot product of the two vectors
  //  \sum_i x[i]*y[i]