JCublasJava/src/main/java/jcuda/jcublas/JCublas.java
public static void cublasZgeru(int m, int n, cuDoubleComplex alpha, Pointer x, int incx, Pointer y, int incy, Pointer A, int lda)
    {
        cublasZgeruNative(m, n, alpha, x, incx, y, incy, A, lda);
        checkResultBLAS();
    }
public static void cublasZgeru(int m, int n, cuDoubleComplex alpha, Pointer x, int incx, Pointer y, int incy, Pointer A, int lda)
    {
        cublasZgeruNative(m, n, alpha, x, incx, y, incy, A, lda);
        checkResultBLAS();
    }
public static void cublasZgeru ( int m , int n , cuDoubleComplex alpha , Pointer x , int incx , Pointer y , int incy , Pointer A , int lda ) { cublasZgeruNative ( m , n , alpha , x , incx , y , incy , A , lda ) ; checkResultBLAS ( ) ; }
<pre>
cublasZgeru (int m, int n, cuDoubleComplex alpha, const cuDoubleComplex *x, int incx,
const cuDoubleComplex *y, int incy, cuDoubleComplex *A, int lda)

performs the symmetric rank 1 operation

A = alpha * x * transpose(y) + A,

where alpha is a double precision complex scalar, x is an m element double
precision complex vector, y is an n element double precision complex vector, and A
is an m by n matrix consisting of double precision complex elements. Matrix A
is stored in column major format, and lda is the leading dimension of
the two-dimensional array used to store A.

Input
-----
m      specifies the number of rows of the matrix A. It must be at least
zero.
n      specifies the number of columns of the matrix A. It must be at
least zero.
alpha  double precision complex scalar multiplier applied to x * transpose(y)
x      double precision complex array of length at least (1 + (m - 1) * abs(incx))
incx   specifies the storage spacing between elements of x. incx must not
be zero.
y      double precision complex array of length at least (1 + (n - 1) * abs(incy))
incy   specifies the storage spacing between elements of y. incy must not
be zero.
A      double precision complex array of dimensions (lda, n).
lda    leading dimension of two-dimensional array used to store matrix A

Output
------
A      updated according to A = alpha * x * transpose(y) + A

Reference: http://www.netlib.org/blas/zgeru.f

Error status for this function can be retrieved via cublasGetError().

Error Status
------------
CUBLAS_STATUS_NOT_INITIALIZED  if CUBLAS library has not been initialized
CUBLAS_STATUS_INVALID_VALUE    if m < 0, n < 0, incx == 0, incy == 0
CUBLAS_STATUS_ARCH_MISMATCH    if invoked on device without DP support
CUBLAS_STATUS_EXECUTION_FAILED if function failed to launch on GPU
</pre>
<pre > cublasZgeru ( int m int n cuDoubleComplex alpha const cuDoubleComplex * x int incx const cuDoubleComplex * y int incy cuDoubleComplex * A int lda )