LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
Loading...
Searching...
No Matches

◆ dlartgp()

subroutine dlartgp ( double precision f,
double precision g,
double precision cs,
double precision sn,
double precision r )

DLARTGP generates a plane rotation so that the diagonal is nonnegative.

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

Purpose:
!>
!> DLARTGP generates a plane rotation so that
!>
!>    [  CS  SN  ]  .  [ F ]  =  [ R ]   where CS**2 + SN**2 = 1.
!>    [ -SN  CS  ]     [ G ]     [ 0 ]
!>
!> This is a slower, more accurate version of the Level 1 BLAS routine DROTG,
!> with the following other differences:
!>    F and G are unchanged on return.
!>    If G=0, then CS=(+/-)1 and SN=0.
!>    If F=0 and (G .ne. 0), then CS=0 and SN=(+/-)1.
!>
!> The sign is chosen so that R >= 0.
!> 
Parameters
[in]F
!>          F is DOUBLE PRECISION
!>          The first component of vector to be rotated.
!> 
[in]G
!>          G is DOUBLE PRECISION
!>          The second component of vector to be rotated.
!> 
[out]CS
!>          CS is DOUBLE PRECISION
!>          The cosine of the rotation.
!> 
[out]SN
!>          SN is DOUBLE PRECISION
!>          The sine of the rotation.
!> 
[out]R
!>          R is DOUBLE PRECISION
!>          The nonzero component of the rotated vector.
!>
!>  This version has a few statements commented out for thread safety
!>  (machine parameters are computed on each entry). 10 feb 03, SJH.
!> 
Author
Univ. of Tennessee
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.