LAPACK  3.8.0
LAPACK: Linear Algebra PACKage

◆ clartg()

subroutine clartg ( complex  F,
complex  G,
real  CS,
complex  SN,
complex  R 
)

CLARTG generates a plane rotation with real cosine and complex sine.

Download CLARTG + dependencies [TGZ] [ZIP] [TXT]

Purpose:
 CLARTG generates a plane rotation so that

    [  CS  SN  ]     [ F ]     [ R ]
    [  __      ]  .  [   ]  =  [   ]   where CS**2 + |SN|**2 = 1.
    [ -SN  CS  ]     [ G ]     [ 0 ]

 This is a faster version of the BLAS1 routine CROTG, except for
 the following differences:
    F and G are unchanged on return.
    If G=0, then CS=1 and SN=0.
    If F=0, then CS=0 and SN is chosen so that R is real.
Parameters
[in]F
          F is COMPLEX
          The first component of vector to be rotated.
[in]G
          G is COMPLEX
          The second component of vector to be rotated.
[out]CS
          CS is REAL
          The cosine of the rotation.
[out]SN
          SN is COMPLEX
          The sine of the rotation.
[out]R
          R is COMPLEX
          The nonzero component of the rotated vector.
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date
December 2016
Further Details:
  3-5-96 - Modified with a new algorithm by W. Kahan and J. Demmel

  This version has a few statements commented out for thread safety
  (machine parameters are computed on each entry). 10 feb 03, SJH.