@ Override public void rot ( long N , INDArray X , INDArray Y , double c , double s ) { if ( Nd4j . getExecutioner ( ) . getProfilingMode ( ) == OpExecutioner . ProfilingMode . ALL ) OpProfiler . getInstance ( ) . processBlasCall ( false , X , Y ) ; if ( X . isSparse ( ) && ! Y . isSparse ( ) ) { Nd4j . getSparseBlasWrapper ( ) . level1 ( ) . rot ( N , X , Y , c , s ) ; } else if ( X . data ( ) . dataType ( ) == DataType . DOUBLE ) { DefaultOpExecutioner . validateDataType ( DataType . DOUBLE , X , Y ) ; drot ( N , X , BlasBufferUtil . getBlasStride ( X ) , Y , BlasBufferUtil . getBlasStride ( X ) , c , s ) ; } else { DefaultOpExecutioner . validateDataType ( DataType . FLOAT , X , Y ) ; srot ( N , X , BlasBufferUtil . getBlasStride ( X ) , Y , BlasBufferUtil . getBlasStride ( X ) , ( float ) c , ( float ) s ) ; } }
performs rotation of points in the plane .