.TH "gemqrt" 3 "Wed Feb 7 2024 11:30:40" "Version 3.12.0" "LAPACK" \" -*- nroff -*- .ad l .nh .SH NAME gemqrt \- gemqrt: multiply by Q from geqrt .SH SYNOPSIS .br .PP .SS "Functions" .in +1c .ti -1c .RI "subroutine \fBcgemqrt\fP (side, trans, m, n, k, nb, v, ldv, t, ldt, c, ldc, work, info)" .br .RI "\fBCGEMQRT\fP " .ti -1c .RI "subroutine \fBdgemqrt\fP (side, trans, m, n, k, nb, v, ldv, t, ldt, c, ldc, work, info)" .br .RI "\fBDGEMQRT\fP " .ti -1c .RI "subroutine \fBsgemqrt\fP (side, trans, m, n, k, nb, v, ldv, t, ldt, c, ldc, work, info)" .br .RI "\fBSGEMQRT\fP " .ti -1c .RI "subroutine \fBzgemqrt\fP (side, trans, m, n, k, nb, v, ldv, t, ldt, c, ldc, work, info)" .br .RI "\fBZGEMQRT\fP " .in -1c .SH "Detailed Description" .PP .SH "Function Documentation" .PP .SS "subroutine cgemqrt (character side, character trans, integer m, integer n, integer k, integer nb, complex, dimension( ldv, * ) v, integer ldv, complex, dimension( ldt, * ) t, integer ldt, complex, dimension( ldc, * ) c, integer ldc, complex, dimension( * ) work, integer info)" .PP \fBCGEMQRT\fP .PP \fBPurpose:\fP .RS 4 .PP .nf CGEMQRT 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 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 CGEQRT\&. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'\&. .fi .PP .RE .PP \fBParameters\fP .RS 4 \fISIDE\fP .PP .nf SIDE is CHARACTER*1 = 'L': apply Q or Q**H from the Left; = 'R': apply Q or Q**H from the Right\&. .fi .PP .br \fITRANS\fP .PP .nf TRANS is CHARACTER*1 = 'N': No transpose, apply Q; = 'C': Conjugate transpose, apply Q**H\&. .fi .PP .br \fIM\fP .PP .nf M is INTEGER The number of rows of the matrix C\&. M >= 0\&. .fi .PP .br \fIN\fP .PP .nf N is INTEGER The number of columns of the matrix C\&. N >= 0\&. .fi .PP .br \fIK\fP .PP .nf 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\&. .fi .PP .br \fINB\fP .PP .nf NB is INTEGER The block size used for the storage of T\&. K >= NB >= 1\&. This must be the same value of NB used to generate T in CGEQRT\&. .fi .PP .br \fIV\fP .PP .nf V is COMPLEX array, dimension (LDV,K) The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,\&.\&.\&.,k, as returned by CGEQRT in the first K columns of its array argument A\&. .fi .PP .br \fILDV\fP .PP .nf LDV is INTEGER The leading dimension of the array V\&. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N)\&. .fi .PP .br \fIT\fP .PP .nf T is COMPLEX array, dimension (LDT,K) The upper triangular factors of the block reflectors as returned by CGEQRT, stored as a NB-by-N matrix\&. .fi .PP .br \fILDT\fP .PP .nf LDT is INTEGER The leading dimension of the array T\&. LDT >= NB\&. .fi .PP .br \fIC\fP .PP .nf 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\&. .fi .PP .br \fILDC\fP .PP .nf LDC is INTEGER The leading dimension of the array C\&. LDC >= max(1,M)\&. .fi .PP .br \fIWORK\fP .PP .nf WORK is COMPLEX array\&. The dimension of WORK is N*NB if SIDE = 'L', or M*NB if SIDE = 'R'\&. .fi .PP .br \fIINFO\fP .PP .nf INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP .SS "subroutine dgemqrt (character side, character trans, integer m, integer n, integer k, integer nb, double precision, dimension( ldv, * ) v, integer ldv, double precision, dimension( ldt, * ) t, integer ldt, double precision, dimension( ldc, * ) c, integer ldc, double precision, dimension( * ) work, integer info)" .PP \fBDGEMQRT\fP .PP \fBPurpose:\fP .RS 4 .PP .nf DGEMQRT overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'T': Q**T C C Q**T where Q is a real orthogonal matrix defined as the product of K elementary reflectors: Q = H(1) H(2) \&. \&. \&. H(K) = I - V T V**T generated using the compact WY representation as returned by DGEQRT\&. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'\&. .fi .PP .RE .PP \fBParameters\fP .RS 4 \fISIDE\fP .PP .nf SIDE is CHARACTER*1 = 'L': apply Q or Q**T from the Left; = 'R': apply Q or Q**T from the Right\&. .fi .PP .br \fITRANS\fP .PP .nf TRANS is CHARACTER*1 = 'N': No transpose, apply Q; = 'C': Transpose, apply Q**T\&. .fi .PP .br \fIM\fP .PP .nf M is INTEGER The number of rows of the matrix C\&. M >= 0\&. .fi .PP .br \fIN\fP .PP .nf N is INTEGER The number of columns of the matrix C\&. N >= 0\&. .fi .PP .br \fIK\fP .PP .nf 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\&. .fi .PP .br \fINB\fP .PP .nf NB is INTEGER The block size used for the storage of T\&. K >= NB >= 1\&. This must be the same value of NB used to generate T in DGEQRT\&. .fi .PP .br \fIV\fP .PP .nf V is DOUBLE PRECISION array, dimension (LDV,K) The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,\&.\&.\&.,k, as returned by DGEQRT in the first K columns of its array argument A\&. .fi .PP .br \fILDV\fP .PP .nf LDV is INTEGER The leading dimension of the array V\&. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N)\&. .fi .PP .br \fIT\fP .PP .nf T is DOUBLE PRECISION array, dimension (LDT,K) The upper triangular factors of the block reflectors as returned by DGEQRT, stored as a NB-by-N matrix\&. .fi .PP .br \fILDT\fP .PP .nf LDT is INTEGER The leading dimension of the array T\&. LDT >= NB\&. .fi .PP .br \fIC\fP .PP .nf C is DOUBLE PRECISION array, dimension (LDC,N) On entry, the M-by-N matrix C\&. On exit, C is overwritten by Q C, Q**T C, C Q**T or C Q\&. .fi .PP .br \fILDC\fP .PP .nf LDC is INTEGER The leading dimension of the array C\&. LDC >= max(1,M)\&. .fi .PP .br \fIWORK\fP .PP .nf WORK is DOUBLE PRECISION array\&. The dimension of WORK is N*NB if SIDE = 'L', or M*NB if SIDE = 'R'\&. .fi .PP .br \fIINFO\fP .PP .nf INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP .SS "subroutine sgemqrt (character side, character trans, integer m, integer n, integer k, integer nb, real, dimension( ldv, * ) v, integer ldv, real, dimension( ldt, * ) t, integer ldt, real, dimension( ldc, * ) c, integer ldc, real, dimension( * ) work, integer info)" .PP \fBSGEMQRT\fP .PP \fBPurpose:\fP .RS 4 .PP .nf SGEMQRT overwrites the general real M-by-N matrix C with SIDE = 'L' SIDE = 'R' TRANS = 'N': Q C C Q TRANS = 'T': Q**T C C Q**T where Q is a real orthogonal matrix defined as the product of K elementary reflectors: Q = H(1) H(2) \&. \&. \&. H(K) = I - V T V**T generated using the compact WY representation as returned by SGEQRT\&. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'\&. .fi .PP .RE .PP \fBParameters\fP .RS 4 \fISIDE\fP .PP .nf SIDE is CHARACTER*1 = 'L': apply Q or Q**T from the Left; = 'R': apply Q or Q**T from the Right\&. .fi .PP .br \fITRANS\fP .PP .nf TRANS is CHARACTER*1 = 'N': No transpose, apply Q; = 'T': Transpose, apply Q**T\&. .fi .PP .br \fIM\fP .PP .nf M is INTEGER The number of rows of the matrix C\&. M >= 0\&. .fi .PP .br \fIN\fP .PP .nf N is INTEGER The number of columns of the matrix C\&. N >= 0\&. .fi .PP .br \fIK\fP .PP .nf 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\&. .fi .PP .br \fINB\fP .PP .nf NB is INTEGER The block size used for the storage of T\&. K >= NB >= 1\&. This must be the same value of NB used to generate T in SGEQRT\&. .fi .PP .br \fIV\fP .PP .nf V is REAL array, dimension (LDV,K) The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,\&.\&.\&.,k, as returned by SGEQRT in the first K columns of its array argument A\&. .fi .PP .br \fILDV\fP .PP .nf LDV is INTEGER The leading dimension of the array V\&. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N)\&. .fi .PP .br \fIT\fP .PP .nf T is REAL array, dimension (LDT,K) The upper triangular factors of the block reflectors as returned by SGEQRT, stored as a NB-by-N matrix\&. .fi .PP .br \fILDT\fP .PP .nf LDT is INTEGER The leading dimension of the array T\&. LDT >= NB\&. .fi .PP .br \fIC\fP .PP .nf C is REAL array, dimension (LDC,N) On entry, the M-by-N matrix C\&. On exit, C is overwritten by Q C, Q**T C, C Q**T or C Q\&. .fi .PP .br \fILDC\fP .PP .nf LDC is INTEGER The leading dimension of the array C\&. LDC >= max(1,M)\&. .fi .PP .br \fIWORK\fP .PP .nf WORK is REAL array\&. The dimension of WORK is N*NB if SIDE = 'L', or M*NB if SIDE = 'R'\&. .fi .PP .br \fIINFO\fP .PP .nf INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP .SS "subroutine zgemqrt (character side, character trans, integer m, integer n, integer k, integer nb, complex*16, dimension( ldv, * ) v, integer ldv, complex*16, dimension( ldt, * ) t, integer ldt, complex*16, dimension( ldc, * ) c, integer ldc, complex*16, dimension( * ) work, integer info)" .PP \fBZGEMQRT\fP .PP \fBPurpose:\fP .RS 4 .PP .nf ZGEMQRT 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 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 ZGEQRT\&. Q is of order M if SIDE = 'L' and of order N if SIDE = 'R'\&. .fi .PP .RE .PP \fBParameters\fP .RS 4 \fISIDE\fP .PP .nf SIDE is CHARACTER*1 = 'L': apply Q or Q**H from the Left; = 'R': apply Q or Q**H from the Right\&. .fi .PP .br \fITRANS\fP .PP .nf TRANS is CHARACTER*1 = 'N': No transpose, apply Q; = 'C': Conjugate transpose, apply Q**H\&. .fi .PP .br \fIM\fP .PP .nf M is INTEGER The number of rows of the matrix C\&. M >= 0\&. .fi .PP .br \fIN\fP .PP .nf N is INTEGER The number of columns of the matrix C\&. N >= 0\&. .fi .PP .br \fIK\fP .PP .nf 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\&. .fi .PP .br \fINB\fP .PP .nf NB is INTEGER The block size used for the storage of T\&. K >= NB >= 1\&. This must be the same value of NB used to generate T in ZGEQRT\&. .fi .PP .br \fIV\fP .PP .nf V is COMPLEX*16 array, dimension (LDV,K) The i-th column must contain the vector which defines the elementary reflector H(i), for i = 1,2,\&.\&.\&.,k, as returned by ZGEQRT in the first K columns of its array argument A\&. .fi .PP .br \fILDV\fP .PP .nf LDV is INTEGER The leading dimension of the array V\&. If SIDE = 'L', LDA >= max(1,M); if SIDE = 'R', LDA >= max(1,N)\&. .fi .PP .br \fIT\fP .PP .nf T is COMPLEX*16 array, dimension (LDT,K) The upper triangular factors of the block reflectors as returned by ZGEQRT, stored as a NB-by-N matrix\&. .fi .PP .br \fILDT\fP .PP .nf LDT is INTEGER The leading dimension of the array T\&. LDT >= NB\&. .fi .PP .br \fIC\fP .PP .nf 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\&. .fi .PP .br \fILDC\fP .PP .nf LDC is INTEGER The leading dimension of the array C\&. LDC >= max(1,M)\&. .fi .PP .br \fIWORK\fP .PP .nf WORK is COMPLEX*16 array\&. The dimension of WORK is N*NB if SIDE = 'L', or M*NB if SIDE = 'R'\&. .fi .PP .br \fIINFO\fP .PP .nf INFO is INTEGER = 0: successful exit < 0: if INFO = -i, the i-th argument had an illegal value .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP .SH "Author" .PP Generated automatically by Doxygen for LAPACK from the source code\&.