t3_from_canonical#

t3toolbox.backend.t3_conversions.t3_from_canonical(factors)#
def t3_from_canonical(
        factors: typ.Sequence[NDArray],  # len=d, elm_shape=stack_shape+(canonical_rank,Ni)
) -> typ.Tuple[
    typ.Tuple[NDArray, ...],  # tucker_cores. len=d, elm_shape=stack_shape+(canonical_rank,Ni)
    typ.Tuple[NDArray, ...],  # tt_cores.     len=d, superdiagonal, elm_shape=stack_shape+(cr,cr,cr)
]:

Constructs Tucker tensor train from Canonical decomposition.

Parameters:

factors (t3toolbox.backend.common.typ.Sequence[NDArray])

Return type:

t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Tuple[NDArray, Ellipsis], t3toolbox.backend.common.typ.Tuple[NDArray, Ellipsis]]