Function bidiag_unpack (o2scl_linalg)¶
-
template<class mat_t, class vec_t, class mat2_t, class vec2_t, class mat3_t, class vec3_t, class vec4_t>
int o2scl_linalg::bidiag_unpack(size_t M, size_t N, const mat_t &A, const vec_t &tau_U, mat2_t &U, const vec2_t &tau_V, mat3_t &V, vec3_t &diag, vec4_t &superdiag)¶ Unpack a matrix
A
with the bidiagonal decomposition and create matricesU
,V
, diagonaldiag
and superdiagonalsuperdiag
.Given a matrix
A
of size(M,N)
with \( M \geq N \) created by bidiag_decomp(), this function creates the matrixU
of size(M,N)
, the matrixV
of size(N,N)
, the diagonaldiag
of sizeN
and the super-diagonalsuperdiag
of sizeN-1
.