1CUNMR3(1) LAPACK routine (version 3.1) CUNMR3(1)
2
3
4
6 CUNMR3 - 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 CUNMR3( 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 A( LDA, * ), C( LDC, * ), TAU( * ), WORK( * )
20
22 CUNMR3 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 CTZRZF. 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 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 CTZRZF 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 array, dimension (K)
69 TAU(i) must contain the scalar factor of the elementary reflec‐
70 tor H(i), as returned by CTZRZF.
71
72 C (input/output) COMPLEX 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 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 CUNMR3(1)