subroutine slasq3 (I0, N0, Z, PP, DMIN, SIGMA, DESIG, QMAX, NFAIL, ITER, NDIV, IEEE, TTYPE, DMIN1, DMIN2, DN, DN1, DN2, G, TAU)
SLASQ3 checks for deflation, computes a shift and calls dqds. Used by sbdsqr.
SLASQ3 checks for deflation, computes a shift and calls dqds. Used by sbdsqr.
Purpose:
SLASQ3 checks for deflation, computes a shift (TAU) and calls dqds. In case of failure it changes shifts, and tries again until output is positive.
Parameters:
I0 is INTEGER First index.
N0
N0 is INTEGER Last index.
Z
Z is REAL array, dimension ( 4*N0 ) Z holds the qd array.
PP
PP is INTEGER PP=0 for ping, PP=1 for pong. PP=2 indicates that flipping was applied to the Z array and that the initial tests for deflation should not be performed.
DMIN
DMIN is REAL Minimum value of d.
SIGMA
SIGMA is REAL Sum of shifts used in current segment.
DESIG
DESIG is REAL Lower order part of SIGMA
QMAX
QMAX is REAL Maximum value of q.
NFAIL
NFAIL is INTEGER Increment NFAIL by 1 each time the shift was too big.
ITER
ITER is INTEGER Increment ITER by 1 for each iteration.
NDIV
NDIV is INTEGER Increment NDIV by 1 for each division.
IEEE
IEEE is LOGICAL Flag for IEEE or non IEEE arithmetic (passed to SLASQ5).
TTYPE
TTYPE is INTEGER Shift type.
DMIN1
DMIN1 is REAL
DMIN2
DMIN2 is REAL
DN
DN is REAL
DN1
DN1 is REAL
DN2
DN2 is REAL
G
G is REAL
TAU
TAU is REAL These are passed as arguments in order to save their values between calls to SLASQ3.
Author:
Univ. of California Berkeley
Univ. of Colorado Denver
NAG Ltd.
Date:
Definition at line 184 of file slasq3.f.
Generated automatically by Doxygen for LAPACK from the source code.