SRC/zgemlqt.f(3) Library Functions Manual SRC/zgemlqt.f(3)

SRC/zgemlqt.f


subroutine zgemlqt (side, trans, m, n, k, mb, v, ldv, t, ldt, c, ldc, work, info)
ZGEMLQT

ZGEMLQT

Purpose:

!>
!> ZGEMLQT overwrites the general complex M-by-N matrix C with
!>
!>                 SIDE = 'L'     SIDE = 'R'
!> TRANS = 'N':      Q C            C Q
!> TRANS = 'C':   Q**H C            C Q**H
!>
!> where Q is a complex unitary matrix defined as the product of K
!> elementary reflectors:
!>
!>       Q = H(1) H(2) . . . H(K) = I - V T V**H
!>
!> generated using the compact WY representation as returned by ZGELQT.
!>
!> Q is of order M if SIDE = 'L' and of order N  if SIDE = 'R'.
!> 

Parameters

SIDE
!>          SIDE is CHARACTER*1
!>          = 'L': apply Q or Q**H from the Left;
!>          = 'R': apply Q or Q**H from the Right.
!> 

TRANS

!>          TRANS is CHARACTER*1
!>          = 'N':  No transpose, apply Q;
!>          = 'C':  Conjugate transpose, apply Q**H.
!> 

M

!>          M is INTEGER
!>          The number of rows of the matrix C. M >= 0.
!> 

N

!>          N is INTEGER
!>          The number of columns of the matrix C. N >= 0.
!> 

K

!>          K is INTEGER
!>          The number of elementary reflectors whose product defines
!>          the matrix Q.
!>          If SIDE = 'L', M >= K >= 0;
!>          if SIDE = 'R', N >= K >= 0.
!> 

MB

!>          MB is INTEGER
!>          The block size used for the storage of T.  K >= MB >= 1.
!>          This must be the same value of MB used to generate T
!>          in ZGELQT.
!> 

V

!>          V is COMPLEX*16 array, dimension
!>                               (LDV,M) if SIDE = 'L',
!>                               (LDV,N) if SIDE = 'R'
!>          The i-th row must contain the vector which defines the
!>          elementary reflector H(i), for i = 1,2,...,k, as returned by
!>          ZGELQT in the first K rows of its array argument A.
!> 

LDV

!>          LDV is INTEGER
!>          The leading dimension of the array V. LDV >= max(1,K).
!> 

T

!>          T is COMPLEX*16 array, dimension (LDT,K)
!>          The upper triangular factors of the block reflectors
!>          as returned by ZGELQT, stored as a MB-by-K matrix.
!> 

LDT

!>          LDT is INTEGER
!>          The leading dimension of the array T.  LDT >= MB.
!> 

C

!>          C is COMPLEX*16 array, dimension (LDC,N)
!>          On entry, the M-by-N matrix C.
!>          On exit, C is overwritten by Q C, Q**H C, C Q**H or C Q.
!> 

LDC

!>          LDC is INTEGER
!>          The leading dimension of the array C. LDC >= max(1,M).
!> 

WORK

!>          WORK is COMPLEX*16 array. The dimension of
!>          WORK is N*MB if SIDE = 'L', or  M*MB if SIDE = 'R'.
!> 

INFO

!>          INFO is INTEGER
!>          = 0:  successful exit
!>          < 0:  if INFO = -i, the i-th argument had an illegal value
!> 

Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 166 of file zgemlqt.f.

Generated automatically by Doxygen for LAPACK from the source code.

Version 3.12.0 LAPACK