TESTING/EIG/cbdt05.f(3)

πŸ“¦
version 3.12.1 Β· 2 versions
, in arch rolling

πŸ’… TESTING/EIG/cbdt05.f πŸ’…

okay so bestie, this is the TESTING/EIG/cbdt05.f(3) page from the Library Functions Manual β€” yes, the cbdt05 subroutine is the main character here and she's here to reconstruct a bidiagonal matrix and check an SVD. No cap. πŸ¦‹


🌸 NAME 🌸

TESTING/EIG/cbdt05.f


✨ SYNOPSIS ✨

   Functions/Subroutines
       subroutine cbdt05 (m, n, a, lda, s, ns, u, ldu, vt, ldvt, work, resid)
           CBDT05

πŸ¦‹ Function/Subroutine Documentation πŸ¦‹

   subroutine cbdt05 (integer m, integer n, complex, dimension( lda, * ) a,
       integer lda, real, dimension( * ) s, integer ns, complex, dimension( * )
       u, integer ldu, complex, dimension( ldvt, * ) vt, integer ldvt, complex,
       dimension( * ) work, real resid)
       CBDT05

✨ Purpose ✨

CBDT05 reconstructs a bidiagonal matrix B from its (partial) 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( S - U' * B * V ) / ( n * norm(B) * EPS )

where VT = V' and EPS is the machine precision. periodt πŸ’…

lowkey important: that RESID formula up there uses B, but the RESID parameter description below uses A β€” yes, both are in the original, so we're keeping both exactly. πŸ‘€

πŸŽ€ Parameters πŸŽ€

  • M β€” M is INTEGER; the number of rows of the matrices A and U.
  • N β€” N is INTEGER; the number of columns of the matrices A and VT.
  • A β€” A is COMPLEX array, dimension (LDA,N); the m by n matrix A.
  • LDA β€” LDA is INTEGER; the leading dimension of the array A. LDA >= max(1,M).
  • S β€” S is REAL array, dimension (NS); the singular values from the (partial) SVD of B, sorted in decreasing order.
  • NS β€” NS is INTEGER; the number of singular values/vectors from the (partial) SVD of B.
  • U β€” U is COMPLEX array, dimension (LDU,NS); the n by ns orthogonal matrix U in S = U' * B * V.
  • LDU β€” LDU is INTEGER; the leading dimension of the array U. LDU >= max(1,N).
  • VT β€” VT is COMPLEX array, dimension (LDVT,N); the n by ns orthogonal matrix V in S = U' * B * V.
  • LDVT β€” LDVT is INTEGER; the leading dimension of the array VT.
  • WORK β€” WORK is COMPLEX array, dimension (M,N).
  • RESID β€” RESID is REAL; the test ratio: norm(S - U' * A * V) / ( n * norm(A) * EPS ).

πŸ‘‘ Author πŸ‘‘

  • Univ. of Tennessee
  • Univ. of California Berkeley
  • Univ. of Colorado Denver
  • NAG Ltd.

Definition at line 123 of file cbdt05.f.

πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for LAPACK from the source code.


okay bye bestie β€” this page is brought to you by LAPACK, Version 3.12.0 and the TESTING/EIG/cbdt05.f(3) source-code dimension πŸ’–βœ¨πŸ¦‹

πŸ“¦ where this page comes from