utv_corewise_retract#
- t3toolbox.backend.utv_operations.utv_corewise_retract(frame_data, variations_data)#
def utv_corewise_retract( frame_data, # UT3Frame .data: the (U, G, G, G) corewise frame, supercore stack = C variations_data, # UT3Variations .data: free core perturbations (dU, dG), stack = K + C ): # -> retracted UniformTuckerTensorTrain .data (at the base point's ranks; stack = K + C)
Additive (corewise) retraction:
cores += variations.The uniform mirror of the additive retraction on the corewise frame
(U, G, G, G)(Section 6.3, Alger et al. 2026 – the(P, Q, O) -> Gsubstitution): recovers the point(U, G)from the frame (up_tucker_supercoreandleft_tt_supercore, which the corewise frame sets to the single coreG) and adds the variation supercores, giving a uniform Tucker tensor train at the base point’s own ranks. MirrorsCorewiseGeometry.utv_retract/corewise.corewise_add– but the uniform supercores ared-leading (stack interior), so aKtangent stack cannot be added by plain numpy broadcasting (it would misaligndwithK): the base point (stackC) is broadcast up toK + Cby insertingn_Ksize-1 axes after the leading mode axis – theKperturbations share one base point. The result masks are the frame plain-UT3 masks (up_mask,frame_left_mask) broadcast overK.