ut3_add ======= .. py:function:: t3toolbox.backend.ut3_linalg.ut3_add(x, y) .. code-block:: python def ut3_add(x: UT3Data, y: UT3Data) -> UT3Data: # z = x + y (ranks add; NOT squashed) Add two uniform Tucker tensor trains (direct sum): concatenate Tucker supercores along the rank axis, block-diagonalize the TT supercores, and concatenate the masks (``shape`` via OR). Vectorized over ``(d,)+stack`` (the ``xnp.block`` acts on the last 3 axes). ``x``,``y`` need not share padded ``n``/``r``; only ``N``, ``d``, ``stack_shape`` must match (the frontend enforces that).