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

NAME

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

SYNOPSIS

11       SUBROUTINE DLAHQR( 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           DOUBLE         PRECISION H( LDH, * ), WI( * ), WR( * ), Z( LDZ, * )
19

PURPOSE

21          DLAHQR is an auxiliary routine called by DHSEQR to update the
22          eigenvalues and Schur decomposition already computed by DHSEQR, 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). DLAHQR 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) DOUBLE PRECISION 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) DOUBLE PRECISION array, dimension (N)
58               WI      (output) DOUBLE PRECISION array, dimension (N) The real
59               and  imaginary parts, respectively, of the computed eigenvalues
60               ILO to IHI are stored in the corresponding elements of  WR  and
61               WI.  If  two  eigenvalues  are  computed as a complex conjugate
62               pair, they are stored in consecutive elements of WR and WI, say
63               the  i-th and (i+1)th, with WI(i) > 0 and WI(i+1) < 0. If WANTT
64               is .TRUE., the eigenvalues are stored in the same order  as  on
65               the  diagonal  of  the  Schur  form returned in H, with WR(i) =
66               H(i,i), and, if H(i:i+1,i:i+1)  is  a  2-by-2  diagonal  block,
67               WI(i) = 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) DOUBLE PRECISION array, dimension (LDZ,N)
75               If  WANTZ is .TRUE., on entry Z must contain the current matrix
76               Z of transformations accumulated by DHSEQR, 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 DLAHQR 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                       DLAHQR(1)
Impressum