ut3_orthogonalization#

Orthogonalization for uniform supercores – SVD-based so the masks stay a deterministic prefix.

Supercore-level sweeps, their core-level mirrors, and ut3_orthogonality_residual. Why SVD rather than QR is load-bearing: docs/contributor/uniform_svd_prefix_orthogonalization.md.

Functions#

ut3_orthogonality_residual(data, side)

Uniform analog of t3_orthogonality_residual(): non-enforcing check of left/right-orthogonal

down_orthogonalize_tucker_supercores(tucker_supercore, ...)

Bare batched Tucker SVD on supercores (assumes masked input): rows orthonormal over the mode

ut3_down_orthogonalize_tucker_cores(data)

Orthogonalize the Tucker cores (rows orthonormal over the mode index), pushing the remainder up

up_orthogonalize_tt_supercores(tucker_supercore, ...)

Bare batched TT-up SVD on supercores (assumes masked input): the TT mode index becomes orthonormal

ut3_up_orthogonalize_tt_cores(data)

Up-orthogonalize the TT cores (mode index orthonormal over the bonds), pushing the remainder down

ut3_left_orthogonalize_tt_cores(data)

Left-orthogonalize the TT cores (shared polymorphic sweep). Bond ranks: L->R recurrence.

ut3_right_orthogonalize_tt_cores(data)

Right-orthogonalize the TT cores (shared polymorphic sweep). Bond ranks: R->L recurrence.