CXML

SLASQ3 (3lapack)


SYNOPSIS

  SUBROUTINE SLASQ3( N, Q, E, QQ, EE, SUP, SIGMA, KEND, OFF, IPHASE, ICONV,
                     EPS, TOL2, SMALL2 )

      INTEGER        ICONV, IPHASE, KEND, N, OFF

      REAL           EPS, SIGMA, SMALL2, SUP, TOL2

      REAL           E( * ), EE( * ), Q( * ), QQ( * )

PURPOSE

     SLASQ3 is the workhorse of the whole bidiagonal SVD algorithm.
     This can be described as the differential qd with shifts.

ARGUMENTS

  N       (input/output) INTEGER
          On entry, N specifies the number of rows and columns in the matrix.
          N must be at least 3.  On exit N is non-negative and less than the
          input value.

  Q       (input/output) REAL array, dimension (N)
          Q array in ping (see IPHASE below)

  E       (input/output) REAL array, dimension (N)
          E array in ping (see IPHASE below)

  QQ      (input/output) REAL array, dimension (N)
          Q array in pong (see IPHASE below)

  EE      (input/output) REAL array, dimension (N)
          E array in pong (see IPHASE below)

  SUP     (input/output) REAL
          Upper bound for the smallest eigenvalue

  SIGMA   (input/output) REAL
          Accumulated shift for the present submatrix

  KEND    (input/output) INTEGER
          Index where minimum D(i) occurs in recurrence for splitting
          criterion

  OFF     (input/output) INTEGER
          Offset for arrays

  IPHASE  (input/output) INTEGER
          If IPHASE = 1 (ping) then data is in Q and E arrays If IPHASE = 2
          (pong) then data is in QQ and EE arrays

  ICONV   (input) INTEGER
          If ICONV = 0 a bottom part of a matrix (with a split) If ICONV =-3
          a top part of a matrix (with a split)

  EPS     (input) REAL
          Machine epsilon

  TOL2    (input) REAL
          Square of the relative tolerance TOL as defined in SLASQ1

  SMALL2  (input) REAL
          A threshold value as defined in SLASQ1

CXML Home Page

Index of CXML Routines