1ZUNMR3(1) LAPACK routine (version 3.1) ZUNMR3(1)
2
3
4
6 ZUNMR3 - the general complex m by n matrix C with Q * C if SIDE = 'L'
7 and TRANS = 'N', or Q'* C if SIDE = 'L' and TRANS = 'C', or C * Q
8 if SIDE = 'R' and TRANS = 'N', or C * Q' if SIDE = 'R' and TRANS =
9 'C',
10
12 SUBROUTINE ZUNMR3( SIDE, TRANS, M, N, K, L, A, LDA, TAU, C, LDC, WORK,
13 INFO )
14
15 CHARACTER SIDE, TRANS
16
17 INTEGER INFO, K, L, LDA, LDC, M, N
18
19 COMPLEX*16 A( LDA, * ), C( LDC, * ), TAU( * ), WORK( * )
20
22 ZUNMR3 overwrites the general complex m by n matrix C with
23
24 where Q is a complex unitary matrix defined as the product of k elemen‐
25 tary reflectors
26
27 Q = H(1) H(2) . . . H(k)
28
29 as returned by ZTZRZF. Q is of order m if SIDE = 'L' and of order n if
30 SIDE = 'R'.
31
32
34 SIDE (input) CHARACTER*1
35 = 'L': apply Q or Q' from the Left
36 = 'R': apply Q or Q' from the Right
37
38 TRANS (input) CHARACTER*1
39 = 'N': apply Q (No transpose)
40 = 'C': apply Q' (Conjugate transpose)
41
42 M (input) INTEGER
43 The number of rows of the matrix C. M >= 0.
44
45 N (input) INTEGER
46 The number of columns of the matrix C. N >= 0.
47
48 K (input) INTEGER
49 The number of elementary reflectors whose product defines the
50 matrix Q. If SIDE = 'L', M >= K >= 0; if SIDE = 'R', N >= K >=
51 0.
52
53 L (input) INTEGER
54 The number of columns of the matrix A containing the meaningful
55 part of the Householder reflectors. If SIDE = 'L', M >= L >=
56 0, if SIDE = 'R', N >= L >= 0.
57
58 A (input) COMPLEX*16 array, dimension
59 (LDA,M) if SIDE = 'L', (LDA,N) if SIDE = 'R' The i-th row must
60 contain the vector which defines the elementary reflector H(i),
61 for i = 1,2,...,k, as returned by ZTZRZF in the last k rows of
62 its array argument A. A is modified by the routine but
63 restored on exit.
64
65 LDA (input) INTEGER
66 The leading dimension of the array A. LDA >= max(1,K).
67
68 TAU (input) COMPLEX*16 array, dimension (K)
69 TAU(i) must contain the scalar factor of the elementary reflec‐
70 tor H(i), as returned by ZTZRZF.
71
72 C (input/output) COMPLEX*16 array, dimension (LDC,N)
73 On entry, the m-by-n matrix C. On exit, C is overwritten by
74 Q*C or Q'*C or C*Q' or C*Q.
75
76 LDC (input) INTEGER
77 The leading dimension of the array C. LDC >= max(1,M).
78
79 WORK (workspace) COMPLEX*16 array, dimension
80 (N) if SIDE = 'L', (M) if SIDE = 'R'
81
82 INFO (output) INTEGER
83 = 0: successful exit
84 < 0: if INFO = -i, the i-th argument had an illegal value
85
87 Based on contributions by
88 A. Petitet, Computer Science Dept., Univ. of Tenn., Knoxville, USA
89
90
91
92
93 LAPACK routine (version 3.1) November 2006 ZUNMR3(1)