ZUNGTSQR_ROW(3)
π ZUNGTSQR_ROW(3) π
okay so weβre in ZUNGTSQR_ROW(3), bestie, and this page comes from the Library Functions Manual. The header path is /home/abui...gtsqr_row.f(3) β and yes, itβs giving very βLAPACK source file on main character energy.β π
π NAME π
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/zungtsqr_row.f
Thatβs the file, periodt. π
πΈ SYNOPSIS πΈ
Functions/Subroutines:
subroutine ZUNGTSQR_ROW (m, n, mb, nb, a, lda, t, ldt, work, lwork, info)
ZUNGTSQR_ROW β thatβs our icon, our moment, our subroutine. β¨
π¦ Function/Subroutine Documentation π¦
β subroutine ZUNGTSQR_ROW β
subroutine ZUNGTSQR_ROW (integer m, integer n, integer mb, integer nb,
complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension(
ldt, * ) t, integer ldt, complex*16, dimension( * ) work, integer lwork,
integer info)
ZUNGTSQR_ROW
π Purpose π
okay so ZUNGTSQR_ROW generates an M-by-N complex matrix Q_out with orthonormal columns from the output of ZLATSQR. These N orthonormal columns are the first N columns of a product of complex unitary matrices Q(k)_in of order M, which are returned by ZLATSQR in a special format.
Q_out = first_N_columns_of( Q(1)_in * Q(2)_in * ... * Q(k)_in ).
The input matrices Q(k)_in are stored in row and column blocks in A. See the documentation of ZLATSQR for more details on the format of Q(k)_in, where each Q(k)_in is represented by block Householder transformations. This routine calls an auxiliary routine ZLARFB_GETT, where the computation is performed on each individual block.
The algorithm first sweeps NB-sized column blocks from the right to left starting in the bottom row block and continues to the top row block (hence _ROW in the routine name). This sweep is in reverse order of the order in which ZLATSQR generates the output blocks. πβ¨
πΈ Parameters πΈ
MβMisINTEGER. The number of rows of the matrixA.M >= 0.NβNisINTEGER. The number of columns of the matrixA.M >= N >= 0.MBβMBisINTEGER. The row block size used byZLATSQRto return arraysAandT.MB > N. (Note that ifMB > M, thenMis used instead ofMBas the row block size.)NBβNBisINTEGER. The column block size used byZLATSQRto return arraysAandT.NB >= 1. (Note that ifNB > N, thenNis used instead ofNBas the column block size.)AβAisCOMPLEX*16array, dimension(LDA,N).- On entry: The elements on and above the diagonal are not used as input. The elements below the diagonal represent the unit lower-trapezoidal blocked matrix
Vcomputed byZLATSQRthat defines the input matricesQ_in(k)(ones on the diagonal are not stored). SeeZLATSQRfor more details. - On exit: The array
Acontains an M-by-N orthonormal matrixQ_out, i.e the columns ofAare orthogonal unit vectors.
- On entry: The elements on and above the diagonal are not used as input. The elements below the diagonal represent the unit lower-trapezoidal blocked matrix
LDAβLDAisINTEGER. The leading dimension of the arrayA.LDA >= max(1,M).TβTisCOMPLEX*16array, dimension(LDT, N * NIRB)whereNIRB = Number_of_input_row_blocks = MAX( 1, CEIL((M-N)/(MB-N)) ). LetNICB = Number_of_input_col_blocks = CEIL(N/NB).
The upper-triangular block reflectors used to define the input matrices Q_in(k), k=(1:NIRB*NICB). The block reflectors are stored in compact form in NIRB block reflector sequences. Each of the NIRB block reflector sequences is stored in a larger NB-by-N column block of T and consists of NICB smaller NB-by-NB upper-triangular column blocks. See ZLATSQR for more details on the format of T.
LDTβLDTisINTEGER. The leading dimension of the arrayT.LDT >= max(1,min(NB,N)).WORKβ(workspace) COMPLEX*16array, dimension(MAX(1,LWORK)). On exit, ifINFO = 0,WORK(1)returns the optimalLWORK.LWORKβ The dimension of the arrayWORK.LWORK >= NBLOCAL * MAX(NBLOCAL,(N-NBLOCAL)), whereNBLOCAL=MIN(NB,N). IfLWORK = -1, then a workspace query is assumed. The routine only calculates the optimal size of theWORKarray, returns this value as the first entry of theWORKarray, and no error message related toLWORKis issued byXERBLA.INFOβINFOisINTEGER.= 0: successful exit< 0: ifINFO = -i, the i-th argument had an illegal value
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
π Contributors: π
- November 2020, Igor Kozachenko, Computer Science Division, University of California, Berkeley
π₯ Definition at line 186 of file zungtsqr_row.f. π₯
fr fr, itβs defined at line 186 of file zungtsqr_row.f. π«Ά
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
and thatβs the whole vibe, bestie. Footer source/version: LAPACK, Version 3.12.0. Footer path: /home/abui...gtsqr_row.f(3). The page doesnβt print a separate footer calendar date, so Iβm not inventing one β the only date stamp on the page is November 2020 in Contributors. π
β¨π
π¦ where this page comes from
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- opensuse-leap 16.0: lapack-man 3.12.0-160000.2.2 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms