Provided by: liblapack-doc_3.3.1-1_all

**NAME**

LAPACK-3 - generate 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. LAPACK auxiliary routine (version 3.2) April 2011 DLARTG(3lapack)