Contents
crot - apply a plane rotation, where the cos (C) is real and
the sin (S) is complex, and the vectors X and Y 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
F95 INTERFACE
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
C INTERFACE
#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 applies a plane rotation, where the cos (C) is real
and the sin (S) is complex, and the vectors X and Y are
complex.
N (input)
The number of elements in the vectors X and Y.
X (input/output)
On input, the vector X. On output, X is overwrit-
ten with C*X + S*Y.
INCX (input)
The increment between successive values of X.
Y (input/output)
On input, the vector Y. On output, Y is overwrit-
ten with -CONJG(S)*X + C*Y.
INCY (input)
The increment between successive values of Y.
C (input)
S (input)
C and S define a rotation
[ C S ]
[ -conjg(S) C ]
where C*C + S*CONJG(S) = 1.0.