TESTING/EIG/zbdt03.f(3)
π zbdt03 β manual name TESTING/EIG/zbdt03.f(3) π
okay so bestie, this is the Library Functions Manual page for TESTING/EIG/zbdt03.f(3), and the routine is zbdt03. Sheβs a LAPACK testing girlie: she reconstructs a bidiagonal matrix from its SVD and checks the residual. Iconic behavior, honestly. No cap.
β¨ NAME β¨
TESTING/EIG/zbdt03.f β this is the file/manual-name situation, and zbdt03 is the subroutine inside. Periodt.
π SYNOPSIS π
π«Ά Functions/Subroutines π«Ά
subroutine zbdt03 (uplo, n, kd, d, e, u, ldu, s, vt, ldvt, work, resid)
ZBDT03
π Function/Subroutine Documentation π
subroutine zbdt03 (character uplo, integer n, integer kd, double precision,
dimension( * ) d, double precision, dimension( * ) e, complex*16,
dimension( ldu, * ) u, integer ldu, double precision, dimension( * ) s,
complex*16, dimension( ldvt, * ) vt, integer ldvt, complex*16,
dimension( * ) work, double precision resid)
ZBDT03
ZBDT03 is literally the routine. Letβs get into it. β¨
π₯ Purpose π₯
Okay so ZBDT03 reconstructs a bidiagonal matrix B from its SVD:
S = U' * B * V
where U and V are orthogonal matrices and S is diagonal.
The test ratio to test the singular value decomposition is:
RESID = norm( B - U * S * VT ) / ( n * norm(B) * EPS )
where VT = V' and EPS is the machine precision. Thatβs the whole vibe check.
πΈ Parameters πΈ
UPLOβCHARACTER*1. Specifies whether the matrixBis upper or lower bidiagonal.= 'U': Upper bidiagonal;= 'L': Lower bidiagonal.NβINTEGER. The order of the matrixB.KDβINTEGER. The bandwidth of the bidiagonal matrixB. IfKD = 1, the matrixBis bidiagonal, and ifKD = 0,Bis diagonal andEis not referenced. IfKDis greater than1, it is assumed to be1, and ifKDis less than0, it is assumed to be0.DβDOUBLE PRECISION array, dimension (N). The n diagonal elements of the bidiagonal matrixB.EβDOUBLE PRECISION array, dimension (N-1). The (n-1) superdiagonal elements of the bidiagonal matrixBifUPLO = 'U', or the (n-1) subdiagonal elements ofBifUPLO = 'L'.UβCOMPLEX*16 array, dimension (LDU,N). The n by n orthogonal matrixUin the reductionB = U'*A*P.LDUβINTEGER. The leading dimension of the arrayU.LDU >= max(1,N).SβDOUBLE PRECISION array, dimension (N). The singular values from the SVD ofB, sorted in decreasing order.VTβCOMPLEX*16 array, dimension (LDVT,N). The n by n orthogonal matrixV'in the reductionB = U * S * V'.LDVTβINTEGER. The leading dimension of the arrayVT.WORKβCOMPLEX*16 array, dimension (2*N).RESIDβDOUBLE PRECISION. The test ratio:norm(B - U * S * V') / ( n * norm(A) * EPS ).
π Author π
- Univ. of Tennessee
- Univ. of California Berkeley
- Univ. of Colorado Denver
- NAG Ltd.
Definition at line 133 of file zbdt03.f.
π Author π
Generated automatically by Doxygen for LAPACK from the source code.
okay thatβs the whole page, bestie. Source/version: LAPACK Version 3.12.0; footer/page tag: TESTING/EIG/zbdt03.f(3). The original footer doesnβt show a separate calendar date, so no invented date here β just that version and page. Slay and may your residual checks stay cute π
β¨π¦
π¦ 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