1DLASQ3(1) LAPACK auxiliary routine (version 3.1) DLASQ3(1)
2
3
4
6 DLASQ3 - for deflation, computes a shift (TAU) and calls dqds
7
9 SUBROUTINE DLASQ3( I0, N0, Z, PP, DMIN, SIGMA, DESIG, QMAX, NFAIL,
10 ITER, NDIV, IEEE )
11
12 LOGICAL IEEE
13
14 INTEGER I0, ITER, N0, NDIV, NFAIL, PP
15
16 DOUBLE PRECISION DESIG, DMIN, QMAX, SIGMA
17
18 DOUBLE PRECISION Z( * )
19
21 DLASQ3 checks for deflation, computes a shift (TAU) and calls dqds. In
22 case of failure it changes shifts, and tries again until output is pos‐
23 itive.
24
25
27 I0 (input) INTEGER
28 First index.
29
30 N0 (input) INTEGER
31 Last index.
32
33 Z (input) DOUBLE PRECISION array, dimension ( 4*N )
34 Z holds the qd array.
35
36 PP (input) INTEGER
37 PP=0 for ping, PP=1 for pong.
38
39 DMIN (output) DOUBLE PRECISION
40 Minimum value of d.
41
42 SIGMA (output) DOUBLE PRECISION
43 Sum of shifts used in current segment.
44
45 DESIG (input/output) DOUBLE PRECISION
46 Lower order part of SIGMA
47
48 QMAX (input) DOUBLE PRECISION
49 Maximum value of q.
50
51 NFAIL (output) INTEGER
52 Number of times shift was too big.
53
54 ITER (output) INTEGER
55 Number of iterations.
56
57 NDIV (output) INTEGER
58 Number of divisions.
59
60 TTYPE (output) INTEGER
61 Shift type.
62
63 IEEE (input) LOGICAL
64 Flag for IEEE or non IEEE arithmetic (passed to DLASQ5).
65
66
67
68 LAPACK auxiliary routine (versionNo3v.e1m)ber 2006 DLASQ3(1)