man slasq3 (Fonctions bibliothèques) - check for deflation, computes a shift (TAU) and calls dqds
NAME
SLASQ3 - check for deflation, computes a shift (TAU) and calls dqds
SYNOPSIS
- SUBROUTINE SLASQ3(
- I0, N0, Z, PP, DMIN, SIGMA, DESIG, QMAX, NFAIL, ITER, NDIV, IEEE )
- LOGICAL IEEE
- INTEGER I0, ITER, N0, NDIV, NFAIL, PP
- REAL DESIG, DMIN, QMAX, SIGMA
- REAL Z( * )
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.
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) INTEGER
- PP=0 for ping, PP=1 for pong.
- 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.
- TTYPE (output) INTEGER
- Shift type.
- IEEE (input) LOGICAL
- Flag for IEEE or non IEEE arithmetic (passed to SLASQ5).