1SLAHQR(1)           LAPACK auxiliary routine (version 3.2)           SLAHQR(1)
2
3
4

NAME

6       SLAHQR  -  SLAHQR i an auxiliary routine called by SHSEQR to update the
7       eigenvalues and Schur decomposition  already  computed  by  SHSEQR,  by
8       dealing with the Hessenberg submatrix in rows and columns ILO to  IHI
9

SYNOPSIS

11       SUBROUTINE SLAHQR( WANTT,  WANTZ,  N,  ILO,  IHI, H, LDH, WR, WI, ILOZ,
12                          IHIZ, Z, LDZ, INFO )
13
14           INTEGER        IHI, IHIZ, ILO, ILOZ, INFO, LDH, LDZ, N
15
16           LOGICAL        WANTT, WANTZ
17
18           REAL           H( LDH, * ), WI( * ), WR( * ), Z( LDZ, * )
19

PURPOSE

21          SLAHQR is an auxiliary routine called by SHSEQR to update the
22          eigenvalues and Schur decomposition already computed by SHSEQR, by
23          dealing with the Hessenberg submatrix in rows and columns ILO to
24          IHI.
25

ARGUMENTS

27       WANTT   (input) LOGICAL
28               = .TRUE. : the full Schur form T is required;
29               = .FALSE.: only eigenvalues are required.
30
31       WANTZ   (input) LOGICAL
32               = .TRUE. : the matrix of Schur vectors Z is required;
33               = .FALSE.: Schur vectors are not required.
34
35       N       (input) INTEGER
36               The order of the matrix H.  N >= 0.
37
38       ILO     (input) INTEGER
39               IHI     (input) INTEGER It is assumed that H is  already  upper
40               quasi-triangular   in   rows  and  columns  IHI+1:N,  and  that
41               H(ILO,ILO-1) = 0 (unless ILO = 1). SLAHQR works primarily  with
42               the  Hessenberg  submatrix  in rows and columns ILO to IHI, but
43               applies transformations to all of H if WANTT is .TRUE..   1  <=
44               ILO <= max(1,IHI); IHI <= N.
45
46       H       (input/output) REAL array, dimension (LDH,N)
47               On  entry,  the upper Hessenberg matrix H.  On exit, if INFO is
48               zero and if WANTT is .TRUE., H  is  upper  quasi-triangular  in
49               rows  and  columns  ILO:IHI, with any 2-by-2 diagonal blocks in
50               standard form. If INFO is zero and WANTT is .FALSE.,  the  con‐
51               tents  of  H are unspecified on exit.  The output state of H if
52               INFO is nonzero is given below under the description of INFO.
53
54       LDH     (input) INTEGER
55               The leading dimension of the array H. LDH >= max(1,N).
56
57       WR      (output) REAL array, dimension (N)
58               WI      (output) REAL array, dimension (N) The real and  imagi‐
59               nary  parts,  respectively,  of the computed eigenvalues ILO to
60               IHI are stored in the corresponding elements of WR and  WI.  If
61               two  eigenvalues are computed as a complex conjugate pair, they
62               are stored in consecutive elements of WR and WI, say  the  i-th
63               and  (i+1)th,  with  WI(i)  >  0  and  WI(i+1) < 0. If WANTT is
64               .TRUE., the eigenvalues are stored in the same order as on  the
65               diagonal  of the Schur form returned in H, with WR(i) = H(i,i),
66               and, if H(i:i+1,i:i+1) is a  2-by-2  diagonal  block,  WI(i)  =
67               sqrt(H(i+1,i)*H(i,i+1)) and WI(i+1) = -WI(i).
68
69       ILOZ    (input) INTEGER
70               IHIZ     (input)  INTEGER Specify the rows of Z to which trans‐
71               formations must be applied if WANTZ is .TRUE..  1  <=  ILOZ  <=
72               ILO; IHI <= IHIZ <= N.
73
74       Z       (input/output) REAL array, dimension (LDZ,N)
75               If  WANTZ is .TRUE., on entry Z must contain the current matrix
76               Z of transformations accumulated by SHSEQR, and on exit  Z  has
77               been updated; transformations are applied only to the submatrix
78               Z(ILOZ:IHIZ,ILO:IHI).  If WANTZ is .FALSE.,  Z  is  not  refer‐
79               enced.
80
81       LDZ     (input) INTEGER
82               The leading dimension of the array Z. LDZ >= max(1,N).
83
84       INFO    (output) INTEGER
85               =   0: successful exit
86               eigenvalues  ILO  to IHI in a total of 30 iterations per eigen‐
87               value; elements i+1:ihi of WR and WI contain those  eigenvalues
88               which  have  been  successfully  computed.   If INFO .GT. 0 and
89               WANTT is .FALSE., then on exit, the remaining  unconverged  ei‐
90               genvalues  are  the  eigenvalues of the upper Hessenberg matrix
91               rows and columns ILO thorugh INFO of the final, output value of
92               H.   If  INFO  .GT.  0  and  WANTT  is .TRUE., then on exit (*)
93               (initial value of H)*U  = U*(final value of H) where  U  is  an
94               orthognal  matrix.     The final value of H is upper Hessenberg
95               and triangular in rows and columns INFO+1 through IHI.  If INFO
96               .GT.  0 and WANTZ is .TRUE., then on exit (final value of Z)  =
97               (initial value of Z)*U where U is the orthogonal matrix in  (*)
98               (regardless of the value of WANTT.)
99

FURTHER DETAILS

101          02-96 Based on modifications by
102          David Day, Sandia National Laboratory, USA
103          12-04 Further modifications by
104          Ralph Byers, University of Kansas, USA
105          This is a modified version of SLAHQR from LAPACK version 3.0.
106          It is (1) more robust against overflow and underflow and
107          (2) adopts the more conservative Ahues & Tisseur stopping
108          criterion (LAWN 122, 1997).
109
110
111
112 LAPACK auxiliary routine (versionNo3v.e2m)ber 2008                       SLAHQR(1)
Impressum