ufv_kronecker_weights#

t3toolbox.backend.ufv_operations.ufv_kronecker_weights(weights_A, weights_B)#
def ufv_kronecker_weights(
        weights_A: UT3FrameWeightsData,
        weights_B: UT3FrameWeightsData,
) -> UT3FrameWeightsData:  # per-family Kronecker: padded widths multiply, masks Kronecker

Per-edge Kronecker product of two frame-weight 4-tuples (the Hadamard combine; ranks multiply).

Kronecker the weights, Kronecker the masks – one operation applied twice, since the Kronecker product commutes with elementwise multiply (see ut3_kronecker_weights for the argument). A last-axis outer product broadcasting the shared prefix, A-major – NOT np.kron. Output masks are strided (gappy), which is correct.

Parameters:
  • weights_A (UT3FrameWeightsData)

  • weights_B (UT3FrameWeightsData)

Return type:

UT3FrameWeightsData