JCublasJava/src/main/java/jcuda/jcublas/JCublas.java
public static void cublasDrotm(int n, Pointer x, int incx, Pointer y, int incy, double sparam[])
    {
        cublasDrotmNative(n, x, incx, y, incy, sparam);
        checkResultBLAS();
    }
public static void cublasDrotm(int n, Pointer x, int incx, Pointer y, int incy, double sparam[])
    {
        cublasDrotmNative(n, x, incx, y, incy, sparam);
        checkResultBLAS();
    }
public static void cublasDrotm ( int n , Pointer x , int incx , Pointer y , int incy , double sparam [ ] ) { cublasDrotmNative ( n , x , incx , y , incy , sparam ) ; checkResultBLAS ( ) ; }
Wrapper for CUBLAS function.
<pre>
void
cublasDrotm (int n, double *x, int incx, double *y, int incy,
const double* sparam)

applies the modified Givens transformation, h, to the 2 x n matrix

( transpose(x) )
( transpose(y) )

The elements of x are in x[lx + i * incx], i = 0 to n-1, where lx = 1 if
incx >= 0, else lx = 1 + (1 - n) * incx, and similarly for y using ly and
incy. With sparam[0] = sflag, h has one of the following forms:

sflag = -1.0    sflag = 0.0     sflag = 1.0     sflag = -2.0

(sh00  sh01)    (1.0   sh01)    (sh00   1.0)    (1.0    0.0)
h = (          )    (          )    (          )    (          )
(sh10  sh11)    (sh10   1.0)    (-1.0  sh11)    (0.0    1.0)

Input
-----
n      number of elements in input vectors
x      double-precision vector with n elements
incx   storage spacing between elements of x
y      double-precision vector with n elements
incy   storage spacing between elements of y
sparam 5-element vector. sparam[0] is sflag described above. sparam[1]
through sparam[4] contain the 2x2 rotation matrix h: sparam[1]
contains sh00, sparam[2] contains sh10, sparam[3] contains sh01,
and sprams[4] contains sh11.

Output
------
x     rotated vector x (unchanged if n <= 0)
y     rotated vector y (unchanged if n <= 0)

Reference: http://www.netlib.org/blas/drotm.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_ARCH_MISMATCH    if invoked on device without DP support
CUBLAS_STATUS_EXECUTION_FAILED if function failed to launch on GPU
</pre>
Wrapper for CUBLAS function . <pre > void cublasDrotm ( int n double * x int incx double * y int incy const double * sparam )