DLARTG(3f)

NAME
DLARTG - a plane rotation so that [ CS SN ]

SYNOPSIS

SUBROUTINE DLARTG(
    F, G, CS, SN, R )

DOUBLE
    PRECISION CS, F, G, R, SN

PURPOSE
DLARTG generate a plane rotation so that
   [ -SN CS ] [ G ] [ 0 ]
This is a slower, more accurate version of the BLAS1 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 without doing any
      floating point operations (saves work in DBDSQR when
      there are zeros on the diagonal).
If F exceeds G in magnitude, CS will be positive.

ARGUMENTS

F       (input) DOUBLE PRECISION
    The first component of vector to be rotated.

G       (input) DOUBLE PRECISION
    The second component of vector to be rotated.

CS      (output) DOUBLE PRECISION
    The cosine of the rotation.

SN      (output) DOUBLE PRECISION
    The sine of the rotation.

R       (output) 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.