SRC/zunbdb1.f(3)
π NAME π
SRC/zunbdb1.f β bestie, this is the Library Functions Manual page for zunbdb1, a LAPACK baddie that does simultaneous bidiagonalization. No cap, it's giving linear algebra main character energy. π
β¨ SYNOPSIS β¨
πΈ Functions/Subroutines πΈ
subroutine zunbdb1 (m, p, q, x11, ldx11, x21, ldx21, theta, phi, taup1,
taup2, tauq1, work, lwork, info)
ZUNBDB1
πΈ Function/Subroutine Documentation πΈ
subroutine zunbdb1 (integer m, integer p, integer q, complex*16,
dimension(ldx11,*) x11, integer ldx11, complex*16, dimension(ldx21,*)
x21, integer ldx21, double precision, dimension(*) theta, double
precision, dimension(*) phi, complex*16, dimension(*) taup1, complex*16,
dimension(*) taup2, complex*16, dimension(*) tauq1, complex*16,
dimension(*) work, integer lwork, integer info)
ZUNBDB1
π« Purpose π«
ZUNBDB1 simultaneously bidiagonalizes the blocks of a tall and skinny matrix X with orthonormal columns:
[ B11 ]
[ X11 ] [ P1 | ] [ 0 ]
[-----] = [---------] [-----] Q1**T .
[ X21 ] [ | P2 ] [ B21 ]
[ 0 ]
X11 is P-by-Q, and X21 is (M-P)-by-Q. Q must be no larger than P, M-P, or M-Q. Routines ZUNBDB2, ZUNBDB3, and ZUNBDB4 handle cases in which Q is not the minimum dimension.
The unitary matrices P1, P2, and Q1 are P-by-P, (M-P)-by-(M-P), and (M-Q)-by-(M-Q), respectively. They are represented implicitly by Householder vectors.
B11 and B12 are Q-by-Q bidiagonal matrices represented implicitly by angles THETA, PHI.
π Parameters π
MβINTEGER. The number of rowsX11plus the number of rows inX21.PβINTEGER. The number of rows inX11.0 <= P <= M.QβINTEGER. The number of columns inX11andX21.0 <= Q <= MIN(P,M-P,M-Q).X11βCOMPLEX*16 array, dimension (LDX11,Q). On entry, the top block of the matrixXto be reduced. On exit, the columns oftril(X11)specify reflectors forP1and the rows oftriu(X11,1)specify reflectors forQ1.LDX11βINTEGER. The leading dimension ofX11.LDX11 >= P.X21βCOMPLEX*16 array, dimension (LDX21,Q). On entry, the bottom block of the matrixXto be reduced. On exit, the columns oftril(X21)specify reflectors forP2.LDX21βINTEGER. The leading dimension ofX21.LDX21 >= M-P.THETAβDOUBLE PRECISION array, dimension (Q). The entries of the bidiagonal blocksB11,B21are defined byTHETAandPHI. See Further Details.PHIβDOUBLE PRECISION array, dimension (Q-1). The entries of the bidiagonal blocksB11,B21are defined byTHETAandPHI. See Further Details.TAUP1βCOMPLEX*16 array, dimension (P). The scalar factors of the elementary reflectors that defineP1.TAUP2βCOMPLEX*16 array, dimension (M-P). The scalar factors of the elementary reflectors that defineP2.TAUQ1βCOMPLEX*16 array, dimension (Q). The scalar factors of the elementary reflectors that defineQ1.WORKβCOMPLEX*16 array, dimension (LWORK).LWORKβINTEGER. The dimension of the arrayWORK.LWORK >= M-Q. 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β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.
π₯ Further Details π₯
The upper-bidiagonal blocks B11, B21 are represented implicitly by angles THETA(1), ..., THETA(Q) and PHI(1), ..., PHI(Q-1). Every entry in each bidiagonal band is a product of a sine or cosine of a THETA with a sine or cosine of a PHI. See [1] or ZUNCSD for details.
P1, P2, and Q1 are represented as products of elementary reflectors. See ZUNCSD2BY1 for details on generating P1, P2, and Q1 using ZUNGQR and ZUNGLQ.
β References β
[1]Brian D. Sutton. Computing the complete CS decomposition. Numer. Algorithms, 50(1):33-65, 2009.
Definition at line 201 of file zunbdb1.f.
π«Ά Author π«Ά
Generated automatically by Doxygen for LAPACK from the source code.
π cute sign-off: LAPACK Version 3.12.0, from SRC/zunbdb1.f(3). Bye bestie, slay your linear algebra! π
β¨
π¦ where this page comes from
- arch rolling: lapack-doc 3.12.1-2 Β· custom
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms