JCublasJava/src/main/java/jcuda/jcublas/JCublas.java
public static void cublasCgbmv(char trans, int m, int n, int kl, int ku, cuComplex alpha, Pointer A, int lda, Pointer x, int incx, cuComplex beta, Pointer y, int incy)
    {
        cublasCgbmvNative(trans, m, n, kl, ku, alpha, A, lda, x, incx, beta, y, incy);
        checkResultBLAS();
    }
public static void cublasCgbmv(char trans, int m, int n, int kl, int ku, cuComplex alpha, Pointer A, int lda, Pointer x, int incx, cuComplex beta, Pointer y, int incy)
    {
        cublasCgbmvNative(trans, m, n, kl, ku, alpha, A, lda, x, incx, beta, y, incy);
        checkResultBLAS();
    }
public static void cublasCgbmv ( char trans , int m , int n , int kl , int ku , cuComplex alpha , Pointer A , int lda , Pointer x , int incx , cuComplex beta , Pointer y , int incy ) { cublasCgbmvNative ( trans , m , n , kl , ku , alpha , A , lda , x , incx , beta , y , incy ) ; checkResultBLAS ( ) ; }
<pre>
void
cublasCgbmv (char trans, int m, int n, int kl, int ku, cuComplex alpha,
const cuComplex *A, int lda, const cuComplex *x, int incx, cuComplex beta,
cuComplex *y, int incy);

performs one of the matrix-vector operations

y = alpha*op(A)*x + beta*y,  op(A)=A or op(A) = transpose(A)

alpha and beta are single precision complex scalars. x and y are single precision
complex vectors. A is an m by n band matrix consisting of single precision complex elements
with kl sub-diagonals and ku super-diagonals.

Input
-----
trans  specifies op(A). If trans == 'N' or 'n', op(A) = A. If trans == 'T',
or 't', op(A) = transpose(A). If trans == 'C' or 'c',
op(A) = conjugate(transpose(A)).
m      specifies the number of rows of the matrix A. m must be at least
zero.
n      specifies the number of columns of the matrix A. n must be at least
zero.
kl     specifies the number of sub-diagonals of matrix A. It must be at
least zero.
ku     specifies the number of super-diagonals of matrix A. It must be at
least zero.
alpha  single precision complex scalar multiplier applied to op(A).
A      single precision complex array of dimensions (lda, n). The leading
(kl + ku + 1) x n part of the array A must contain the band matrix A,
supplied column by column, with the leading diagonal of the matrix
in row (ku + 1) of the array, the first super-diagonal starting at
position 2 in row ku, the first sub-diagonal starting at position 1
in row (ku + 2), and so on. Elements in the array A that do not
correspond to elements in the band matrix (such as the top left
ku x ku triangle) are not referenced.
lda    leading dimension of A. lda must be at least (kl + ku + 1).
x      single precision complex array of length at least (1+(n-1)*abs(incx)) when
trans == 'N' or 'n' and at least (1+(m-1)*abs(incx)) otherwise.
incx   specifies the increment for the elements of x. incx must not be zero.
beta   single precision complex scalar multiplier applied to vector y. If beta is
zero, y is not read.
y      single precision complex array of length at least (1+(m-1)*abs(incy)) when
trans == 'N' or 'n' and at least (1+(n-1)*abs(incy)) otherwise. If
beta is zero, y is not read.
incy   On entry, incy specifies the increment for the elements of y. incy
must not be zero.

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

Reference: http://www.netlib.org/blas/cgbmv.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 if incx or incy == 0
CUBLAS_STATUS_EXECUTION_FAILED if function failed to launch on GPU
</pre>
<pre > void cublasCgbmv ( char trans int m int n int kl int ku cuComplex alpha const cuComplex * A int lda const cuComplex * x int incx cuComplex beta cuComplex * y int incy ) ;