cgemlqt.f man page




subroutine cgemlqt (SIDE, TRANS, M, N, K, MB, V, LDV, T, LDT, C, LDC, WORK, INFO)

Function/Subroutine Documentation

subroutine cgemlqt (character SIDE, character TRANS, integer M, integer N, integer K, integer MB, complex, dimension( ldv, * ) V, integer LDV, complex, dimension( ldt, * ) T, integer LDT, complex, dimension( ldc, * ) C, integer LDC, complex, dimension( * ) WORK, integer INFO)


CGEMLQT overwrites the general real 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 orthogonal 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 CGELQT.

Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'.  



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


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


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


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


          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 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 DGELQT.


          V is COMPLEX 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
          DGELQT in the first K rows of its array argument A.


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


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


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


          C is COMPLEX 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 is INTEGER
          The leading dimension of the array C. LDC >= max(1,M).


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


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

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.


November 2017

Definition at line 153 of file cgemlqt.f.


Generated automatically by Doxygen for LAPACK from the source code.

Referenced By

The man page cgemlqt(3) is an alias of cgemlqt.f(3).

Tue Nov 14 2017 Version 3.8.0 LAPACK