1DGEHD2(1) LAPACK routine (version 3.1) DGEHD2(1)
2
3
4
6 DGEHD2 - a real general matrix A to upper Hessenberg form H by an
7 orthogonal similarity transformation
8
10 SUBROUTINE DGEHD2( N, ILO, IHI, A, LDA, TAU, WORK, INFO )
11
12 INTEGER IHI, ILO, INFO, LDA, N
13
14 DOUBLE PRECISION A( LDA, * ), TAU( * ), WORK( * )
15
17 DGEHD2 reduces a real general matrix A to upper Hessenberg form H by an
18 orthogonal similarity transformation: Q' * A * Q = H .
19
20
22 N (input) INTEGER
23 The order of the matrix A. N >= 0.
24
25 ILO (input) INTEGER
26 IHI (input) INTEGER It is assumed that A is already upper
27 triangular in rows and columns 1:ILO-1 and IHI+1:N. ILO and IHI
28 are normally set by a previous call to DGEBAL; otherwise they
29 should be set to 1 and N respectively. See Further Details.
30
31 A (input/output) DOUBLE PRECISION array, dimension (LDA,N)
32 On entry, the n by n general matrix to be reduced. On exit,
33 the upper triangle and the first subdiagonal of A are overwrit‐
34 ten with the upper Hessenberg matrix H, and the elements below
35 the first subdiagonal, with the array TAU, represent the
36 orthogonal matrix Q as a product of elementary reflectors. See
37 Further Details. LDA (input) INTEGER The leading dimension
38 of the array A. LDA >= max(1,N).
39
40 TAU (output) DOUBLE PRECISION array, dimension (N-1)
41 The scalar factors of the elementary reflectors (see Further
42 Details).
43
44 WORK (workspace) DOUBLE PRECISION array, dimension (N)
45
46 INFO (output) INTEGER
47 = 0: successful exit.
48 < 0: if INFO = -i, the i-th argument had an illegal value.
49
51 The matrix Q is represented as a product of (ihi-ilo) elementary
52 reflectors
53
54 Q = H(ilo) H(ilo+1) . . . H(ihi-1).
55
56 Each H(i) has the form
57
58 H(i) = I - tau * v * v'
59
60 where tau is a real scalar, and v is a real vector with
61 v(1:i) = 0, v(i+1) = 1 and v(ihi+1:n) = 0; v(i+2:ihi) is stored on exit
62 in A(i+2:ihi,i), and tau in TAU(i).
63
64 The contents of A are illustrated by the following example, with n = 7,
65 ilo = 2 and ihi = 6:
66
67 on entry, on exit,
68
69 ( a a a a a a a ) ( a a h h h h a ) ( a
70 a a a a a ) ( a h h h h a ) ( a a a
71 a a a ) ( h h h h h h ) ( a a a a a
72 a ) ( v2 h h h h h ) ( a a a a a a )
73 ( v2 v3 h h h h ) ( a a a a a a ) (
74 v2 v3 v4 h h h ) ( a ) (
75 a )
76
77 where a denotes an element of the original matrix A, h denotes a modi‐
78 fied element of the upper Hessenberg matrix H, and vi denotes an ele‐
79 ment of the vector defining H(i).
80
81
82
83
84 LAPACK routine (version 3.1) November 2006 DGEHD2(1)