SLALSA(3)
๐ SLALSA(3) โ LAPACK Library Functions Manual ๐
okay bestie, we are deep in LAPACK land and this page is all about SLALSA. Buckle up, it's giving "intermediate step but make it iconic" โจ
๐ฆ NAME ๐ฆ
/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/slalsa.f
that's the file this page is serving, periodt ๐
๐ SYNOPSIS ๐
๐ง Functions/Subroutines ๐ง
subroutine SLALSA (icompq, smlsiz, n, nrhs, b, ldb, bx, ldbx, u, ldu, vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum, c, s, work, iwork, info)โSLALSAcomputes the SVD of the coefficient matrix in compact form. Used bysgelsd.
๐ ๏ธ Function/Subroutine Documentation ๐ ๏ธ
subroutine SLALSA (integer icompq, integer smlsiz, integer n, integer nrhs, real, dimension( ldb, * ) b, integer ldb, real, dimension( ldbx, * ) bx, integer ldbx, real, dimension( ldu, * ) u, integer ldu, real, dimension( ldu, * ) vt, integer, dimension( * ) k, real, dimension( ldu, * ) difl, real, dimension( ldu, * ) difr, real, dimension( ldu, * ) z, real, dimension( ldu, * ) poles, integer, dimension( * ) givptr, integer, dimension( ldgcol, * ) givcol, integer ldgcol, integer, dimension( ldgcol, * ) perm, real, dimension( ldu, * ) givnum, real, dimension( * ) c, real, dimension( * ) s, real, dimension( * ) work, integer, dimension( * ) iwork, integer info)
SLALSA computes the SVD of the coefficient matrix in compact form. Used by sgelsd. No cap, that's the whole summary ๐ซถ
๐ฏ Purpose ๐ฏ
SLALSA is an intermediate step in solving the least squares problem by computing the SVD of the coefficient matrix in compact form. The singular vectors are computed as products of simple orthogonal matrices. ๐ซ
If ICOMPQ = 0, SLALSA applies the inverse of the left singular vector matrix of an upper bidiagonal matrix to the right hand side. If ICOMPQ = 1, SLALSA applies the right singular vector matrix to the right hand side. The singular vector matrices were generated in compact form by SLALSA. slay ๐
๐งฎ Parameters ๐งฎ
ICOMPQโINTEGER. tells us whether the left or the right singular vector matrix is involved.= 0: Left singular vector matrix.= 1: Right singular vector matrix.SMLSIZโINTEGER. the maximum size of the subproblems at the bottom of the computation tree. tiny subproblems, big main character energy ๐ฑNโINTEGER. the row and column dimensions of the upper bidiagonal matrix.NRHSโINTEGER. the number of columns ofBandBX.NRHSmust be at least 1.BโREAL array, dimension ( LDB, NRHS ). on input,Bcontains the right hand sides of the least squares problem in rows 1 through M. on output,Bcontains the solution X in rows 1 through N. glow-up moment โจLDBโINTEGER. the leading dimension ofBin the calling subprogram.LDBmust be at leastmax(1,MAX( M, N )).BXโREAL array, dimension ( LDBX, NRHS ). on exit, it's the result of applying the left or right singular vector matrix toB.LDBXโINTEGER. the leading dimension ofBX.UโREAL array, dimension ( LDU, SMLSIZ ). on entry,Ucontains the left singular vector matrices of all subproblems at the bottom level.LDUโINTEGER,LDU = > N. the leading dimension of arraysU,VT,DIFL,DIFR,POLES,GIVNUM, andZ. yes bestie, that's the exactLDU = > Nfrom the page ๐VTโREAL array, dimension ( LDU, SMLSIZ+1 ). on entry,VT**Tcontains the right singular vector matrices of all subproblems at the bottom level.KโINTEGER array, dimension ( N ).DIFLโREAL array, dimension ( LDU, NLVL ), whereNLVL = INT(log_2 (N/(SMLSIZ+1))) + 1.DIFRโREAL array, dimension ( LDU, 2 * NLVL ). on entry,DIFL(*, I)andDIFR(*, 2 * I -1)record distances between singular values on the I-th level and singular values on the (I -1)-th level, andDIFR(*, 2 * I)record the normalizing factors of the right singular vectors matrices of subproblems on I-th level.ZโREAL array, dimension ( LDU, NLVL ). on entry,Z(1, I)contains the components of the deflation-adjusted updating row vector for subproblems on the I-th level.POLESโREAL array, dimension ( LDU, 2 * NLVL ). on entry,POLES(*, 2 * I -1: 2 * I)contains the new and old singular values involved in the secular equations on the I-th level.GIVPTRโINTEGER array, dimension ( N ). on entry,GIVPTR( I )records the number of Givens rotations performed on the I-th problem on the computation tree.GIVCOLโINTEGER array, dimension ( LDGCOL, 2 * NLVL ). on entry, for each I,GIVCOL(*, 2 * I - 1: 2 * I)records the locations of Givens rotations performed on the I-th level on the computation tree.LDGCOLโINTEGER,LDGCOL = > N. the leading dimension of arraysGIVCOLandPERM.PERMโINTEGER array, dimension ( LDGCOL, NLVL ). on entry,PERM(*, I)records permutations done on the I-th level of the computation tree.GIVNUMโREAL array, dimension ( LDU, 2 * NLVL ). on entry,GIVNUM(*, 2 *I -1 : 2 * I)records the C- and S-values of Givens rotations performed on the I-th level on the computation tree.CโREAL array, dimension ( N ). on entry, if the I-th subproblem is not square,C( I )contains the C-value of a Givens rotation related to the right null space of the I-th subproblem.SโREAL array, dimension ( N ). on entry, if the I-th subproblem is not square,S( I )contains the S-value of a Givens rotation related to the right null space of the I-th subproblem.WORKโREAL array, dimension (N).IWORKโINTEGER array, dimension (3*N).INFOโINTEGER.= 0: successful exit.< 0: ifINFO = -i, the i-th argument had an illegal value. so if it's negative, something in the arguments said "not today" ๐ญ
๐ Author ๐
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
๐ธ Contributors: ๐ธ
- Ming Gu and Ren-Cang Li, Computer Science Division, University of California at Berkeley, USA
- Osni Marques, LBNL/NERSC, USA
๐ Definition at line 263 of file slalsa.f. ๐
๐ช Author ๐ช
Generated automatically by Doxygen for LAPACK from the source code.
okay that's the whole page, bestie ๐ซถ โ it's LAPACK Version 3.12.0, and the footer path was /home/abui...RC/slalsa.f(3). iconic documentation behavior, no notes ๐
โจ
๐ฆ 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