tv_oblique_gauge_projection#
- t3toolbox.backend.tv_operations.tv_oblique_gauge_projection(frame, variations)#
def tv_oblique_gauge_projection( frame: typ.Tuple[ typ.Sequence[NDArray], # up_tucker_cores typ.Sequence[NDArray], # down_tt_cores typ.Sequence[NDArray], # left_tt_cores typ.Sequence[NDArray], # right_tt_cores ], variations: typ.Tuple[ typ.Sequence[NDArray], # tucker_variations typ.Sequence[NDArray], # tt_variations ], ) -> typ.Tuple[ typ.Tuple[NDArray, ...], # gauged_tucker_variations typ.Tuple[NDArray, ...], # gauged_tt_variations ]:
Project the variations onto the gauge-satisfying subspace while preserving the tangent vector.
Generalizes Holtz, Rohwedder & Schneider (2012), “On manifolds of tensors of fixed TT-rank”. The Tucker perturbation is made perpendicular to U (compensating through the down/outer cores), then the TT variations are made left-perpendicular (compensating through the right cores). Stack-aware. Ragged path only (uniform deferred).
Enforces the gauge conditions (48)-(49), Appendix A.3, of Alger et al. (2026), “Tucker Tensor Train Taylor Series” (arXiv:2603.21141).
- Parameters:
frame (t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray]])
variations (t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Sequence[NDArray], t3toolbox.backend.common.typ.Sequence[NDArray]])
- Return type:
t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Tuple[NDArray, Ellipsis], t3toolbox.backend.common.typ.Tuple[NDArray, Ellipsis]]