Go to main content
Oracle Developer Studio 12.5 Man Pages

Exit Print View

Updated: June 2017
 
 

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);

Description

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)