CLALSA(3)

πŸ“¦ version 3.12.0, in opensuse-leap 16.0

πŸ’… CLALSA(3) β€” the Library Functions Manual page, but make it make sense πŸ’…

okay so bestie, welcome to CLALSA(3) from the Library Functions Manual. We are reading the whole thing together β€” no skimming, no β€œI’ll come back to it,” every array dimension is staying. πŸ’–

🌸 NAME 🌸

/home/abuild/rpmbuild/BUILD/lapack-static-3.12.0-build/lapack-3.12.0/SRC/clalsa.f β€” literally the file path, bestie. That’s the NAME section’s whole vibe.

✨ SYNOPSIS ✨

🫢 Functions/Subroutines 🫢

  • subroutine CLALSA β€” the official one-liner is CLALSA computes the SVD of the coefficient matrix in compact form. Used by sgelsd. The full synopsis signature is:
subroutine CLALSA (icompq, smlsiz, n, nrhs, b, ldb, bx, ldbx, u, ldu,
    vt, k, difl, difr, z, poles, givptr, givcol, ldgcol, perm, givnum,
    c, s, rwork, iwork, info)

πŸ’– Function/Subroutine Documentation πŸ’–

The full documentation signature, exactly as listed:

subroutine CLALSA (integer icompq, integer smlsiz, integer n, integer nrhs,
    complex, dimension( ldb, * ) b, integer ldb, complex, 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( * ) rwork,
    integer, dimension( * ) iwork, integer info)

And the summary is: CLALSA computes the SVD of the coefficient matrix in compact form. Used by sgelsd. periodt.

πŸŽ€ Purpose πŸŽ€

Okay so, CLALSA 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. No cap.

  • If ICOMPQ = 0, CLALSA applies the inverse of the left singular vector matrix of an upper bidiagonal matrix to the right hand side.
  • If ICOMPQ = 1, CLALSA applies the right singular vector matrix to the right hand side.
  • The singular vector matrices were generated in compact form by CLALSA.

πŸ“ Parameters πŸ“

  • ICOMPQ β€” INTEGER. Tells us whether we’re dealing with the left or the right singular vector matrix. = 0: left singular vector matrix. = 1: right singular vector matrix.
  • SMLSIZ β€” INTEGER. The biggest size those subproblems can be at the bottom of the computation tree.
  • N β€” INTEGER. The row and column dimensions of that upper bidiagonal matrix.
  • NRHS β€” INTEGER. How many columns B and BX have. NRHS has to be at least 1.
  • B β€” COMPLEX array, dimension ( LDB, NRHS ). On input, B is holding the right hand sides of the least squares problem in rows 1 through M. On output, B is holding the solution X in rows 1 through N.
  • LDB β€” INTEGER. The leading dimension of B inside the calling subprogram. LDB must be at least max(1,MAX( M, N ) ).
  • BX β€” COMPLEX array, dimension ( LDBX, NRHS ). On exit, this is the result of applying the left or right singular vector matrix to B.
  • LDBX β€” INTEGER. The leading dimension of BX.
  • U β€” REAL array, dimension ( LDU, SMLSIZ ). On entry, U holds the left singular vector matrices of all subproblems at the bottom level.
  • LDU β€” INTEGER, LDU = > N. The leading dimension of arrays U, VT, DIFL, DIFR, POLES, GIVNUM, and Z.
  • VT β€” REAL array, dimension ( LDU, SMLSIZ+1 ). On entry, VT**H holds the right singular vector matrices of all subproblems at the bottom level.
  • K β€” INTEGER array, dimension ( N ). That’s literally all it says, bestie.
  • DIFL β€” REAL array, dimension ( LDU, NLVL ), where NLVL = INT(log_2 (N/(SMLSIZ+1))) + 1.
  • DIFR β€” REAL array, dimension ( LDU, 2 * NLVL ). On entry, DIFL(*, I) and DIFR(*, 2 * I -1) record the distances between singular values on the I-th level and singular values on the (I -1)-th level, and DIFR(*, 2 * I) records the normalizing factors of the right singular vectors matrices of subproblems on the I-th level.
  • Z β€” REAL array, dimension ( LDU, NLVL ). On entry, Z(1, I) has 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) has 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 how many Givens rotations were 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 where the Givens rotations were performed on the I-th level on the computation tree.
  • LDGCOL β€” INTEGER, LDGCOL = > N. The leading dimension of arrays GIVCOL and PERM.
  • PERM β€” INTEGER array, dimension ( LDGCOL, NLVL ). On entry, PERM(*, I) records the 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 ) holds 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 ) holds the S-value of a Givens rotation related to the right null space of the I-th subproblem.
  • RWORK β€” REAL array, dimension at least MAX( (SMLSZ+1)*NRHS*3, N*(1+NRHS) + 2*NRHS ).
  • IWORK β€” INTEGER array, dimension (3*N).
  • INFO β€” 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.

🧚 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 clalsa.f πŸ’…

That’s the source-code location, bestie: Definition at line 263 of file clalsa.f.

🌈 Author 🌈

This one is the auto-generated credit: Generated automatically by Doxygen for LAPACK from the source code.


Okay bestie, that’s the whole page. The footer energy is LAPACK, Version 3.12.0, and the path /home/abui...RC/clalsa.f(3). Bye, ily, go be the main character of your least squares problem πŸ’…βœ¨πŸ«Ά

πŸ“¦ where this page comes from