SLASQ3(1LAPACK routine (version 3.2)SLASQ3(1)NAMESLASQ3 - checks for deflation, computes a shift (TAU) and calls dqds
SYNOPSIS
SUBROUTINE SLASQ3( I0, N0, Z, PP, DMIN, SIGMA, DESIG, QMAX, NFAIL,
ITER, NDIV, IEEE, TTYPE, DMIN1, DMIN2, DN, DN1, DN2,
G, TAU )
LOGICAL IEEE
INTEGER I0, ITER, N0, NDIV, NFAIL, PP
REAL DESIG, DMIN, DMIN1, DMIN2, DN, DN1, DN2, G, QMAX,
SIGMA, TAU
REAL Z( * )
PURPOSESLASQ3 checks for deflation, computes a shift (TAU) and calls dqds. In
case of failure it changes shifts, and tries again until output is pos‐
itive.
ARGUMENTS
I0 (input) INTEGER
First index.
N0 (input) INTEGER
Last index.
Z (input) REAL array, dimension ( 4*N )
Z holds the qd array.
PP (input/output) 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 (output) REAL
Minimum value of d.
SIGMA (output) REAL
Sum of shifts used in current segment.
DESIG (input/output) REAL
Lower order part of SIGMA
QMAX (input) REAL
Maximum value of q.
NFAIL (output) INTEGER
Number of times shift was too big.
ITER (output) INTEGER
Number of iterations.
NDIV (output) INTEGER
Number of divisions.
IEEE (input) LOGICAL
Flag for IEEE or non IEEE arithmetic (passed to SLASQ5).
TTYPE (input/output) INTEGER
Shift type. DMIN1, DMIN2, DN, DN1, DN2, G, TAU (input/output)
REAL These are passed as arguments in order to save their values
between calls to SLASQ3.
LAPACK routine (version 3.2) November 2008 SLASQ3(1)