JCublasJava/src/main/java/jcuda/jcublas/JCublas.java
public static void cublasCher(char uplo, int n, float alpha, Pointer x, int incx, Pointer A, int lda)
    {
        cublasCherNative(uplo, n, alpha, x, incx, A, lda);
        checkResultBLAS();
    }
public static void cublasCher(char uplo, int n, float alpha, Pointer x, int incx, Pointer A, int lda)
    {
        cublasCherNative(uplo, n, alpha, x, incx, A, lda);
        checkResultBLAS();
    }
<pre>
void
cublasCher (char uplo, int n, float alpha, const cuComplex *x, int incx,
cuComplex *A, int lda)

performs the hermitian rank 1 operation

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

where alpha is a single precision real scalar, x is an n element single
precision complex vector and A is an n x n hermitian matrix consisting of
single precision complex elements. Matrix A is stored in column major format,
and lda is the leading dimension of the two-dimensional array
containing A.

Input
-----
uplo   specifies whether the matrix data is stored in the upper or
the lower triangular part of array A. If uplo = 'U' or 'u',
then only the upper triangular part of A may be referenced.
If uplo = 'L' or 'l', then only the lower triangular part of
A may be referenced.
n      specifies the number of rows and columns of the matrix A. It
must be at least 0.
alpha  single precision real scalar multiplier applied to
x * conjugate(transpose(x))
x      single precision complex array of length at least (1 + (n - 1) * abs(incx))
incx   specifies the storage spacing between elements of x. incx must
not be zero.
A      single precision complex array of dimensions (lda, n). If uplo = 'U' or
'u', then A must contain the upper triangular part of a hermitian
matrix, and the strictly lower triangular part is not referenced.
If uplo = 'L' or 'l', then A contains the lower triangular part
of a hermitian matrix, and the strictly upper triangular part is
not referenced. The imaginary parts of the diagonal elements need
not be set, they are assumed to be zero, and on exit they
are set to zero.
lda    leading dimension of the two-dimensional array containing A. lda
must be at least max(1, n).

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

Reference: http://www.netlib.org/blas/cher.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 n < 0, or incx == 0
CUBLAS_STATUS_EXECUTION_FAILED if function failed to launch on GPU
</pre>