Previous: zsptrs Up: ../lapack-z.html Next: zsrscl


zsrot


 NAME
 SYNOPSIS
      SUBROUTINE ZDROT( N, CX, INCX, CY, INCY, C, S )

          INTEGER       INCX, INCY, N

          DOUBLE        PRECISION C, S

          COMPLEX*16    CX( * ), CY( * )

          INTEGER       I, IX, IY

          COMPLEX*16    CTEMP

          IF(           N.LE.0 ) RETURN

          IF(           INCX.EQ.1 .AND. INCY.EQ.1 ) GO TO 20

          IX            = 1

          IY            = 1

          IF(           INCX.LT.0 ) IX = ( -N+1 )*INCX + 1

          IF(           INCY.LT.0 ) IY = ( -N+1 )*INCY + 1

          DO            10 I = 1, N

          CTEMP         = C*CX( IX ) + S*CY( IY )

          CY(           IY ) = C*CY( IY ) - S*CX( IX )

          CX(           IX ) = CTEMP

          IX            = IX + INCX

          IY            = IY + INCY

          10            CONTINUE

          RETURN

          20            CONTINUE

          DO            30 I = 1, N

          CTEMP         = C*CX( I ) + S*CY( I )

          CY(           I ) = C*CY( I ) - S*CX( I )

          CX(           I ) = CTEMP

          30            CONTINUE

          RETURN

          END

 PURPOSE