crot
crot - apply a plane rotation, where the cos (C) is real and the sin (S) is complex, and the vectors CX and CY are complex
SUBROUTINE CROT( N, X, INCX, Y, INCY, C, S)
COMPLEX S
COMPLEX X(*), Y(*)
INTEGER N, INCX, INCY
REAL C
SUBROUTINE CROT_64( N, X, INCX, Y, INCY, C, S)
COMPLEX S
COMPLEX X(*), Y(*)
INTEGER*8 N, INCX, INCY
REAL C
SUBROUTINE ROT( [N], X, [INCX], Y, [INCY], C, S)
COMPLEX :: S
COMPLEX, DIMENSION(:) :: X, Y
INTEGER :: N, INCX, INCY
REAL :: C
SUBROUTINE ROT_64( [N], X, [INCX], Y, [INCY], C, S)
COMPLEX :: S
COMPLEX, DIMENSION(:) :: X, Y
INTEGER(8) :: N, INCX, INCY
REAL :: C
#include <sunperf.h>
void crot(int n, complex *x, int incx, complex *y, int incy, float c, complex s);
void crot_64(long n, complex *x, long incx, complex *y, long incy, float c, complex s);
crot CROT applies a plane rotation, where the cos (C) is real and the
sin (S) is complex, and the vectors CX and CY are complex.
-
* N (input)
-
The number of elements in the vectors X and Y.
-
* X (output)
-
On input, the vector X.
On output, X is overwritten with C*X + S*Y.
-
* INCX (input)
-
The increment between successive values of Y. INCX <> 0.
-
* Y (output)
-
On input, the vector Y.
On output, Y is overwritten with -CONJG(S)*X + C*Y.
-
* INCY (input)
-
The increment between successive values of Y. INCX <> 0.
-
* C (input)
-
-
* S (input)
-
.Vb 5
\& C and S define a rotation
\& [ C S ]
\& [ -conjg(S) C ]
\&
\& where C*C + S*CONJG(S) = 1.0.
.Ve