slartgs - generate a plane rotation designed to introduce a bulge in implicit QR iteration for the bidiagonal SVD problem
SUBROUTINE SLARTGS( X, Y, SIGMA, CS, SN ) REAL CS, SIGMA, SN, X, Y SUBROUTINE SLARTGS_64( X, Y, SIGMA, CS, SN ) REAL CS, SIGMA, SN, X, Y F95 INTERFACE SUBROUTINE LARTGS( X, Y, SIGMA, CS, SN ) REAL :: X, Y, SIGMA, CS, SN SUBROUTINE LARTGS_64( X, Y, SIGMA, CS, SN ) REAL :: X, Y, SIGMA, CS, SN C INTERFACE #include <sunperf.h> void slartgs (float x, float y, float sigma, float *cs, float *sn); void slartgs_64 (float x, float y, float sigma, float *cs, float *sn);
Oracle Solaris Studio Performance Library slartgs(3P)
NAME
slartgs - generate a plane rotation designed to introduce a bulge in
implicit QR iteration for the bidiagonal SVD problem
SYNOPSIS
SUBROUTINE SLARTGS( X, Y, SIGMA, CS, SN )
REAL CS, SIGMA, SN, X, Y
SUBROUTINE SLARTGS_64( X, Y, SIGMA, CS, SN )
REAL CS, SIGMA, SN, X, Y
F95 INTERFACE
SUBROUTINE LARTGS( X, Y, SIGMA, CS, SN )
REAL :: X, Y, SIGMA, CS, SN
SUBROUTINE LARTGS_64( X, Y, SIGMA, CS, SN )
REAL :: X, Y, SIGMA, CS, SN
C INTERFACE
#include <sunperf.h>
void slartgs (float x, float y, float sigma, float *cs, float *sn);
void slartgs_64 (float x, float y, float sigma, float *cs, float *sn);
PURPOSE
slartgs generates a plane rotation designed to introduce a bulge in
Golub-Reinsch-style implicit QR iteration for the bidiagonal SVD prob-
lem. X and Y are the top-row entries, and SIGMA is the shift. The com-
puted CS and SN define a plane rotation satisfying
[ CS SN ] . [ X^2 - SIGMA ] = [ R ], [ -SN CS ] [ X * Y
] [ 0 ]
with R nonnegative. If X^2 - SIGMA and X * Y are 0, then the rotation
is by PI/2.
ARGUMENTS
X (input)
X is REAL
The (1,1) entry of an upper bidiagonal matrix.
Y (input)
Y is REAL
The (1,2) entry of an upper bidiagonal matrix.
SIGMA (input)
SIGMA is REAL
The shift.
CS (output)
CS is REAL
The cosine of the rotation.
SN (output)
SN is REAL
The sine of the rotation.
7 Nov 2015 slartgs(3P)