1CLARFB(1)           LAPACK auxiliary routine (version 3.2)           CLARFB(1)
2
3
4

NAME

6       CLARFB  -  applies a complex block reflector H or its transpose H' to a
7       complex M-by-N matrix C, from either the left or the right
8

SYNOPSIS

10       SUBROUTINE CLARFB( SIDE, TRANS, DIRECT, STOREV, M, N,  K,  V,  LDV,  T,
11                          LDT, C, LDC, WORK, LDWORK )
12
13           IMPLICIT       NONE
14
15           CHARACTER      DIRECT, SIDE, STOREV, TRANS
16
17           INTEGER        K, LDC, LDT, LDV, LDWORK, M, N
18
19           COMPLEX        C( LDC, * ), T( LDT, * ), V( LDV, * ), WORK( LDWORK,
20                          * )
21

PURPOSE

23       CLARFB applies a complex block reflector H or its  transpose  H'  to  a
24       complex M-by-N matrix C, from either the left or the right.
25

ARGUMENTS

27       SIDE    (input) CHARACTER*1
28               = 'L': apply H or H' from the Left
29               = 'R': apply H or H' from the Right
30
31       TRANS   (input) CHARACTER*1
32               = 'N': apply H (No transpose)
33               = 'C': apply H' (Conjugate transpose)
34
35       DIRECT  (input) CHARACTER*1
36               Indicates  how H is formed from a product of elementary reflec‐
37               tors = 'F': H = H(1) H(2) . . . H(k) (Forward)
38               = 'B': H = H(k) . . . H(2) H(1) (Backward)
39
40       STOREV  (input) CHARACTER*1
41               Indicates how the vectors which define the  elementary  reflec‐
42               tors are stored:
43               = 'C': Columnwise
44               = 'R': Rowwise
45
46       M       (input) INTEGER
47               The number of rows of the matrix C.
48
49       N       (input) INTEGER
50               The number of columns of the matrix C.
51
52       K       (input) INTEGER
53               The  order  of the matrix T (= the number of elementary reflec‐
54               tors whose product defines the block reflector).
55
56       V       (input) COMPLEX array, dimension
57               (LDV,K) if STOREV = 'C' (LDV,M) if STOREV = 'R' and SIDE =  'L'
58               (LDV,N)  if  STOREV = 'R' and SIDE = 'R' The matrix V. See fur‐
59               ther details.
60
61       LDV     (input) INTEGER
62               The leading dimension of the array V.  If STOREV = 'C' and SIDE
63               =  'L', LDV >= max(1,M); if STOREV = 'C' and SIDE = 'R', LDV >=
64               max(1,N); if STOREV = 'R', LDV >= K.
65
66       T       (input) COMPLEX array, dimension (LDT,K)
67               The triangular K-by-K matrix T in  the  representation  of  the
68               block reflector.
69
70       LDT     (input) INTEGER
71               The leading dimension of the array T. LDT >= K.
72
73       C       (input/output) COMPLEX array, dimension (LDC,N)
74               On  entry,  the  M-by-N matrix C.  On exit, C is overwritten by
75               H*C or H'*C or C*H or C*H'.
76
77       LDC     (input) INTEGER
78               The leading dimension of the array C. LDC >= max(1,M).
79
80       WORK    (workspace) COMPLEX array, dimension (LDWORK,K)
81
82       LDWORK  (input) INTEGER
83               The leading dimension of the array WORK.  If SIDE = 'L', LDWORK
84               >= max(1,N); if SIDE = 'R', LDWORK >= max(1,M).
85
86
87
88 LAPACK auxiliary routine (versionNo3v.e2m)ber 2008                       CLARFB(1)
Impressum