1CGEHD2(1)                LAPACK routine (version 3.2)                CGEHD2(1)
2
3
4

NAME

6       CGEHD2  - reduces a complex general matrix A to upper Hessenberg form H
7       by a unitary similarity transformation
8

SYNOPSIS

10       SUBROUTINE CGEHD2( N, ILO, IHI, A, LDA, TAU, WORK, INFO )
11
12           INTEGER        IHI, ILO, INFO, LDA, N
13
14           COMPLEX        A( LDA, * ), TAU( * ), WORK( * )
15

PURPOSE

17       CGEHD2 reduces a complex general matrix A to upper Hessenberg form H by
18       a unitary similarity transformation:  Q' * A * Q = H .
19

ARGUMENTS

21       N       (input) INTEGER
22               The order of the matrix A.  N >= 0.
23
24       ILO     (input) INTEGER
25               IHI      (input)  INTEGER It is assumed that A is already upper
26               triangular in rows and columns 1:ILO-1 and IHI+1:N. ILO and IHI
27               are  normally  set by a previous call to CGEBAL; otherwise they
28               should be set to 1 and N respectively. See Further Details.
29
30       A       (input/output) COMPLEX array, dimension (LDA,N)
31               On entry, the n by n general matrix to be  reduced.   On  exit,
32               the upper triangle and the first subdiagonal of A are overwrit‐
33               ten with the upper Hessenberg matrix H, and the elements  below
34               the  first  subdiagonal, with the array TAU, represent the uni‐
35               tary matrix Q as a product of elementary reflectors.  See  Fur‐
36               ther Details.  LDA     (input) INTEGER The leading dimension of
37               the array A.  LDA >= max(1,N).
38
39       TAU     (output) COMPLEX array, dimension (N-1)
40               The scalar factors of the elementary  reflectors  (see  Further
41               Details).
42
43       WORK    (workspace) COMPLEX array, dimension (N)
44
45       INFO    (output) INTEGER
46               = 0:  successful exit
47               < 0:  if INFO = -i, the i-th argument had an illegal value.
48

FURTHER DETAILS

50       The  matrix  Q  is  represented  as  a  product of (ihi-ilo) elementary
51       reflectors
52          Q = H(ilo) H(ilo+1) . . . H(ihi-1).
53       Each H(i) has the form
54          H(i) = I - tau * v * v'
55       where tau is a complex scalar, and v is a complex vector with v(1:i)  =
56       0,  v(i+1)  =  1  and  v(ihi+1:n)  = 0; v(i+2:ihi) is stored on exit in
57       A(i+2:ihi,i), and tau in TAU(i).
58       The contents of A are illustrated by the following example, with n = 7,
59       ilo = 2 and ihi = 6:
60       on entry,                        on exit,
61       ( a   a   a   a   a   a   a )    (  a   a   h   h   h   h   a ) (     a
62       a   a   a   a   a )    (      a   h   h   h   h   a ) (     a    a    a
63       a    a    a )    (      h   h   h   h   h   h ) (     a   a   a   a   a
64       a )    (      v2  h   h   h   h   h ) (     a   a   a    a    a    a  )
65       (       v2   v3   h    h    h    h ) (     a   a   a   a   a   a )    (
66       v2   v3   v4   h    h    h  )  (                           a   )      (
67       a  )  where  a denotes an element of the original matrix A, h denotes a
68       modified element of the upper Hessenberg matrix H, and  vi  denotes  an
69       element of the vector defining H(i).
70
71
72
73 LAPACK routine (version 3.2)    November 2008                       CGEHD2(1)
Impressum