srotg.f90 - Man Page
BLAS/SRC/srotg.f90
Synopsis
Functions/Subroutines
subroutine srotg (a, b, c, s)
SROTG
Function/Subroutine Documentation
subroutine srotg (real(wp) a, real(wp) b, real(wp) c, real(wp) s)
SROTG
Purpose:
SROTG constructs a plane rotation [ c s ] [ a ] = [ r ] [ -s c ] [ b ] [ 0 ] satisfying c**2 + s**2 = 1. The computation uses the formulas sigma = sgn(a) if |a| > |b| = sgn(b) if |b| >= |a| r = sigma*sqrt( a**2 + b**2 ) c = 1; s = 0 if r = 0 c = a/r; s = b/r if r != 0 The subroutine also computes z = s if |a| > |b|, = 1/c if |b| >= |a| and c != 0 = 1 if c = 0 This allows c and s to be reconstructed from z as follows: If z = 1, set c = 0, s = 1. If |z| < 1, set c = sqrt(1 - z**2) and s = z. If |z| > 1, set c = 1/z and s = sqrt( 1 - c**2).
- See also
lartg: generate plane rotation, more accurate than BLAS rot,
lartgp: generate plane rotation, more accurate than BLAS rot
- Parameters
A
A is REAL On entry, the scalar a. On exit, the scalar r.
B
B is REAL On entry, the scalar b. On exit, the scalar z.
C
C is REAL The scalar c.
S
S is REAL The scalar s.
- Author
Edward Anderson, Lockheed Martin
- Contributors:
Weslley Pereira, University of Colorado Denver, USA
Further Details:
Anderson E. (2017) Algorithm 978: Safe Scaling in the Level 1 BLAS ACM Trans Math Softw 44:1--28 https://doi.org/10.1145/3061665
Definition at line 91 of file srotg.f90.
Author
Generated automatically by Doxygen for LAPACK from the source code.
Referenced By
The man page srotg(3) is an alias of srotg.f90(3).
Tue Nov 28 2023 12:08:41 Version 3.12.0 LAPACK