1CUNGHR(1) LAPACK routine (version 3.2) CUNGHR(1)
2
3
4
6 CUNGHR - generates a complex unitary matrix Q which is defined as the
7 product of IHI-ILO elementary reflectors of order N, as returned by
8 CGEHRD
9
11 SUBROUTINE CUNGHR( N, ILO, IHI, A, LDA, TAU, WORK, LWORK, INFO )
12
13 INTEGER IHI, ILO, INFO, LDA, LWORK, N
14
15 COMPLEX A( LDA, * ), TAU( * ), WORK( * )
16
18 CUNGHR generates a complex unitary matrix Q which is defined as the
19 product of IHI-ILO elementary reflectors of order N, as returned by
20 CGEHRD: Q = H(ilo) H(ilo+1) . . . H(ihi-1).
21
23 N (input) INTEGER
24 The order of the matrix Q. N >= 0.
25
26 ILO (input) INTEGER
27 IHI (input) INTEGER ILO and IHI must have the same values
28 as in the previous call of CGEHRD. Q is equal to the unit
29 matrix except in the submatrix Q(ilo+1:ihi,ilo+1:ihi). 1 <=
30 ILO <= IHI <= N, if N > 0; ILO=1 and IHI=0, if N=0.
31
32 A (input/output) COMPLEX array, dimension (LDA,N)
33 On entry, the vectors which define the elementary reflectors,
34 as returned by CGEHRD. On exit, the N-by-N unitary matrix Q.
35
36 LDA (input) INTEGER
37 The leading dimension of the array A. LDA >= max(1,N).
38
39 TAU (input) COMPLEX array, dimension (N-1)
40 TAU(i) must contain the scalar factor of the elementary reflecā
41 tor H(i), as returned by CGEHRD.
42
43 WORK (workspace/output) COMPLEX array, dimension (MAX(1,LWORK))
44 On exit, if INFO = 0, WORK(1) returns the optimal LWORK.
45
46 LWORK (input) INTEGER
47 The dimension of the array WORK. LWORK >= IHI-ILO. For optimum
48 performance LWORK >= (IHI-ILO)*NB, where NB is the optimal
49 blocksize. If LWORK = -1, then a workspace query is assumed;
50 the routine only calculates the optimal size of the WORK array,
51 returns this value as the first entry of the WORK array, and no
52 error message related to LWORK is issued by XERBLA.
53
54 INFO (output) INTEGER
55 = 0: successful exit
56 < 0: if INFO = -i, the i-th argument had an illegal value
57
58
59
60 LAPACK routine (version 3.2) November 2008 CUNGHR(1)