Computes an SVD of a matrix \(X\) by partitioning its rows into
\(s\) blocks, taking the SVD of each block, and merging the results.
More numerically stable than direct svd() for ill-conditioned
large matrices.
Value
A list with elements u, d, v, matching the
structure returned by base svd.
Details
This is an internal helper for invert_matrix() and
svd_pseudo_inverse(); end users typically should not call it
directly.