SharedFrameData#
- class t3toolbox.backend.sharing.SharedFrameData#
The per-frame companion of the shared geometry: everything the tied projection, the shared retraction, and the group-spectrum diagnostics need, derived from an orthogonal frame by
fv_shared_frame_data()(never stored inside a frame).All array fields carry the frame stack
Cleading;groups/row_splitsare static structure (jax aux). One entry per NONTRIVIAL group (>= 2 modes), in canonical order;svd_*is the thin SVD of the stacked matrixM_g = concat_i(S_i^T)– deliberately an SVD, never a Cholesky/Gram: the solve gets the intrinsic least-squares sensitivity,svd_sIS the group spectrums_gat full (non-squared) accuracy, and the clipped pseudoinverse is well-defined at the rank-deficient points rank continuation visits.What ``s_g`` is (representation-independent – a property of the represented tensor
Tand the partition alone): the singular values of the concatenated matricization[T_(i1) | ... | T_(ik)]over the group’s modes; equivalentlys_g^2 = eig(sum_i Gamma_i)(the summed mode Grams), equivalently the singular values of the Jacobian ofTwith respect to a gauged tied motion of the shared factor – the exact analog of what a per-mode Tucker spectrum is to an unshared factor. Note the scale: every mode carries the full norm, sosum_j s_gj^2 = k * ||T||^2(a group ofkmodes inflates the spectrum bysqrt(k); the factor cancels in every condition-number ratio). Cf. Peshekhonov, Arzhantsev & Rakhuba (2024, SF-Tucker) and Molozhavenko & Rakhuba (2026, SF-ETT), whose algorithms compute this same object.- groups: tuple#
- row_splits: tuple#
- centers: tuple#
- svd_U: tuple#
- svd_s: tuple#
- svd_Vt: tuple#