ufv_frame_orthogonality_residual ================================ .. py:function:: t3toolbox.backend.ufv_operations.ufv_frame_orthogonality_residual(data) .. code-block:: python def ufv_frame_orthogonality_residual(data): # UT3Frame .data -> max orthogonality deviation, per stack element Max deviation of the four masked frame supercores from orthonormality, **per stack element** (shape ``stack_shape``). Each masked supercore slice IS a hypothetical ragged core (mask the padding to zero); require its Gram == ``diag(outgoing_mask)`` -- the masked-Gram pattern, over the four senses (up ``U``, down/outer ``O``, left ``L``, right ``R``), with the correct outgoing mask per sense (left core ``i`` -> ``frame_left_mask[i+1]``). The uniform analog of :py:func:`fv_operations.fv_frame_orthogonality_residual`; the per-element oracle is the ragged one via ``to_t3frame``. The boundary left/right cores are remainders and are not checked (so left checks cores ``0..d-2``, right checks ``1..d-1``).