## SG03BR

### Compute a complex Givens rotation in real arithmetic (SG03BY version - adaptation of LAPACK ZLARTG)

[Specification] [Arguments] [Method] [References] [Comments] [Example]

Purpose

      To compute the parameters for the complex Givens rotation

         (    C      SR+SI*I )   ( XR+XI*I )   ( ZR+ZI*I )
         (                   ) * (         ) = (         )
         ( -SR+SI*I     C    )   ( YR+YI*I )   (    0    )

      where C, SR, SI, XR, XI, YR, YI, ZR, ZI are real numbers, I is the
      imaginary unit, I = SQRT(-1), and C**2 + |SR+SI*I|**2 = 1.

Specification

          SUBROUTINE SG03BR( XR, XI, YR, YI, C, SR, SI, ZR, ZI )
    C     .. Scalar Arguments ..
          DOUBLE PRECISION  C, SI, SR, XI, XR, YI, YR, ZI, ZR

Arguments

Input/Output Parameters

      XR, XI, (input) DOUBLE PRECISION
      YR, YI  (input) DOUBLE PRECISION
              The given real scalars XR, XI, YR, YI.

      C,      (output) DOUBLE PRECISION
      SR, SI, (output) DOUBLE PRECISION
      ZR, ZI  (output) DOUBLE PRECISION
              The computed real scalars C, SR, SI, ZR, ZI defining the
              complex Givens rotation and Z = ZR+ZI*I.

Numerical Aspects

      The subroutine avoids unnecessary overflow.

Further Comments

      In the interest of speed, this routine does not check the input
      for errors.

Example

Program Text

      None

Program Data

      None

Program Results

      None

Return to Supporting Routines index