t3_corewise_randn#

t3toolbox.backend.t3_constructors.t3_corewise_randn(shape, tucker_ranks, tt_ranks, stack_shape=(), use_jax=False)#
def t3_corewise_randn(
        shape:        typ.Tuple[int, ...],       # len=d, the tensor mode sizes (N0,...,N(d-1))
        tucker_ranks: typ.Tuple[int, ...],       # len=d
        tt_ranks:     typ.Tuple[int, ...],       # len=d+1
        stack_shape:  typ.Tuple[int, ...] = (),  # leading batch axes

        use_jax:      bool = False,  # constructor: no array inputs, so the flag chooses the output type
) -> typ.Tuple[
    typ.Sequence[NDArray],  # tucker_cores. len=d, elm_shape=stack_shape+(ni,Ni)
    typ.Sequence[NDArray],  # tt_cores.     len=d, elm_shape=stack_shape+(rLi,ni,rR(i+1))
]:

Construct a Tucker tensor train with random cores.

Parameters:
  • shape (t3toolbox.backend.common.typ.Tuple[int, Ellipsis])

  • tucker_ranks (t3toolbox.backend.common.typ.Tuple[int, Ellipsis])

  • tt_ranks (t3toolbox.backend.common.typ.Tuple[int, Ellipsis])

  • stack_shape (t3toolbox.backend.common.typ.Tuple[int, Ellipsis])

  • use_jax (bool)

Return type:

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