JCublasJava/src/main/java/jcuda/jcublas/JCublas.java
public static void cublasDrot(int n, Pointer x, int incx, Pointer y, int incy, double sc, double ss)
    {
        cublasDrotNative(n, x, incx, y, incy, sc, ss);
        checkResultBLAS();
    }
public static void cublasDrot(int n, Pointer x, int incx, Pointer y, int incy, double sc, double ss)
    {
        cublasDrotNative(n, x, incx, y, incy, sc, ss);
        checkResultBLAS();
    }
public static void cublasDrot ( int n , Pointer x , int incx , Pointer y , int incy , double sc , double ss ) { cublasDrotNative ( n , x , incx , y , incy , sc , ss ) ; checkResultBLAS ( ) ; }
<pre>
void
cublasDrot (int n, double *x, int incx, double *y, int incy, double sc,
double ss)

multiplies a 2x2 matrix ( sc ss) with the 2xn matrix ( transpose(x) )
(-ss sc)                     ( transpose(y) )

The elements of x are in x[lx + i * incx], i = 0 ... n - 1, where lx = 1 if
incx >= 0, else lx = 1 + (1 - n) * incx, and similarly for y using ly and
incy.

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
sc     element of rotation matrix
ss     element of rotation matrix

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

Reference  http://www.netlib.org/blas/drot.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>
<pre > void cublasDrot ( int n double * x int incx double * y int incy double sc double ss )