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) -> G substitution): recovers the point (U, G) from the frame (up_tucker_supercore and left_tt_supercore, which the corewise frame sets to the single core G) and adds the variation supercores, giving a uniform Tucker tensor train at the base point’s own ranks. Mirrors CorewiseGeometry.utv_retract / corewise.corewise_add – but the uniform supercores are d-leading (stack interior), so a K tangent stack cannot be added by plain numpy broadcasting (it would misalign d with K): the base point (stack C) is broadcast up to K + C by inserting n_K size-1 axes after the leading mode axis – the K perturbations share one base point. The result masks are the frame plain-UT3 masks (up_mask, frame_left_mask) broadcast over K.