![]() |
LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
|
| subroutine dlasq3 | ( | integer | i0, |
| integer | n0, | ||
| double precision, dimension( * ) | z, | ||
| integer | pp, | ||
| double precision | dmin, | ||
| double precision | sigma, | ||
| double precision | desig, | ||
| double precision | qmax, | ||
| integer | nfail, | ||
| integer | iter, | ||
| integer | ndiv, | ||
| logical | ieee, | ||
| integer | ttype, | ||
| double precision | dmin1, | ||
| double precision | dmin2, | ||
| double precision | dn, | ||
| double precision | dn1, | ||
| double precision | dn2, | ||
| double precision | g, | ||
| double precision | tau | ||
| ) |
DLASQ3 checks for deflation, computes a shift and calls dqds. Used by sbdsqr.
Download DLASQ3 + dependencies [TGZ] [ZIP] [TXT]
DLASQ3 checks for deflation, computes a shift (TAU) and calls dqds. In case of failure it changes shifts, and tries again until output is positive.
| [in] | I0 | I0 is INTEGER
First index. |
| [in,out] | N0 | N0 is INTEGER
Last index. |
| [in,out] | Z | Z is DOUBLE PRECISION array, dimension ( 4*N0 )
Z holds the qd array. |
| [in,out] | 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. |
| [out] | DMIN | DMIN is DOUBLE PRECISION
Minimum value of d. |
| [out] | SIGMA | SIGMA is DOUBLE PRECISION
Sum of shifts used in current segment. |
| [in,out] | DESIG | DESIG is DOUBLE PRECISION
Lower order part of SIGMA |
| [in] | QMAX | QMAX is DOUBLE PRECISION
Maximum value of q. |
| [in,out] | NFAIL | NFAIL is INTEGER
Increment NFAIL by 1 each time the shift was too big. |
| [in,out] | ITER | ITER is INTEGER
Increment ITER by 1 for each iteration. |
| [in,out] | NDIV | NDIV is INTEGER
Increment NDIV by 1 for each division. |
| [in] | IEEE | IEEE is LOGICAL
Flag for IEEE or non IEEE arithmetic (passed to DLASQ5). |
| [in,out] | TTYPE | TTYPE is INTEGER
Shift type. |
| [in,out] | DMIN1 | DMIN1 is DOUBLE PRECISION |
| [in,out] | DMIN2 | DMIN2 is DOUBLE PRECISION |
| [in,out] | DN | DN is DOUBLE PRECISION |
| [in,out] | DN1 | DN1 is DOUBLE PRECISION |
| [in,out] | DN2 | DN2 is DOUBLE PRECISION |
| [in,out] | G | G is DOUBLE PRECISION |
| [in,out] | TAU | TAU is DOUBLE PRECISION
These are passed as arguments in order to save their values
between calls to DLASQ3. |