UT3Variations ============= .. toctree:: :hidden: /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.d /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.N /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.nU /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.nD /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.rL /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.rR /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.stack_shape /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.uniform_structure /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.uniform_variation_shapes /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.up_ranks /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.down_ranks /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.variation_left_ranks /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.variation_right_ranks /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.structure /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.data /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.apply_masks /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.from_t3variations /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.to_t3variations /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.supercores /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.contains_jax /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.to_jax /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.to_numpy /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.copy /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.__repr__ /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.validate /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.__post_init__ /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.unstack /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.stack /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.__add__ /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.__sub__ /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.__mul__ /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.__neg__ /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.reverse /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.save /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.load /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.sum_stack /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.allclose /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.zeros /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.randn /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.unit /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.zeros_like /autoapi/t3toolbox/uniform_frame_variations_format/UT3Variations.randn_like .. py:class:: t3toolbox.uniform_frame_variations_format.UT3Variations Variation cores for the frame-variations representation of uniform Tucker tensor trains. Uniform analog of :py:class:`~t3toolbox.frame_variations_format.T3Variations`: two padded supercores (``tucker_variations``, ``tt_variations``) + the static physical ``shape`` (an int tuple, shared across the stack) + a :py:class:`UT3VariationsMasks` holder. The variations fit in the "holes" of a :py:class:`UT3Frame`. .. rubric:: Examples >>> import numpy as np >>> import t3toolbox.uniform_frame_variations_format as ubcf >>> d, N, nU, nD, rL, rR = 3, 6, 4, 5, 3, 2 >>> tkv = np.random.randn(d, nD, N) >>> ttv = np.random.randn(d, rL, nU, rR) >>> shape = (4, 5, 6) >>> up = np.arange(nU) < np.array([[2],[3],[4]]) # (d, nU) >>> down = np.arange(nD) < np.array([[3],[4],[5]]) # (d, nD) >>> left = np.arange(rL) < np.array([[1],[2],[3]]) # (d, rL) -- note d, not d+1 >>> right = np.arange(rR) < np.array([[1],[2],[2]]) # (d, rR) >>> masks = ubcf.UT3VariationsMasks(up, down, left, right) >>> V = ubcf.UT3Variations(tkv, ttv, shape, masks) >>> V.uniform_structure (3, 6, 4, 5, 3, 2, ()) >>> V.uniform_variation_shapes ((3, 5, 6), (3, 3, 4, 2)) .. py:attribute:: tucker_variations :type: t3toolbox.backend.common.NDArray .. py:attribute:: tt_variations :type: t3toolbox.backend.common.NDArray .. py:attribute:: shape :type: t3toolbox.backend.common.typ.Tuple[int, Ellipsis] .. py:attribute:: masks :type: UT3VariationsMasks .. py:attribute:: __rmul__ Methods ------- .. autoapisummary:: t3toolbox.uniform_frame_variations_format.UT3Variations.d t3toolbox.uniform_frame_variations_format.UT3Variations.N t3toolbox.uniform_frame_variations_format.UT3Variations.nU t3toolbox.uniform_frame_variations_format.UT3Variations.nD t3toolbox.uniform_frame_variations_format.UT3Variations.rL t3toolbox.uniform_frame_variations_format.UT3Variations.rR t3toolbox.uniform_frame_variations_format.UT3Variations.stack_shape t3toolbox.uniform_frame_variations_format.UT3Variations.uniform_structure t3toolbox.uniform_frame_variations_format.UT3Variations.uniform_variation_shapes t3toolbox.uniform_frame_variations_format.UT3Variations.up_ranks t3toolbox.uniform_frame_variations_format.UT3Variations.down_ranks t3toolbox.uniform_frame_variations_format.UT3Variations.variation_left_ranks t3toolbox.uniform_frame_variations_format.UT3Variations.variation_right_ranks t3toolbox.uniform_frame_variations_format.UT3Variations.structure t3toolbox.uniform_frame_variations_format.UT3Variations.data t3toolbox.uniform_frame_variations_format.UT3Variations.apply_masks t3toolbox.uniform_frame_variations_format.UT3Variations.from_t3variations t3toolbox.uniform_frame_variations_format.UT3Variations.to_t3variations t3toolbox.uniform_frame_variations_format.UT3Variations.supercores t3toolbox.uniform_frame_variations_format.UT3Variations.contains_jax t3toolbox.uniform_frame_variations_format.UT3Variations.to_jax t3toolbox.uniform_frame_variations_format.UT3Variations.to_numpy t3toolbox.uniform_frame_variations_format.UT3Variations.copy t3toolbox.uniform_frame_variations_format.UT3Variations.__repr__ t3toolbox.uniform_frame_variations_format.UT3Variations.validate t3toolbox.uniform_frame_variations_format.UT3Variations.__post_init__ t3toolbox.uniform_frame_variations_format.UT3Variations.unstack t3toolbox.uniform_frame_variations_format.UT3Variations.stack t3toolbox.uniform_frame_variations_format.UT3Variations.__add__ t3toolbox.uniform_frame_variations_format.UT3Variations.__sub__ t3toolbox.uniform_frame_variations_format.UT3Variations.__mul__ t3toolbox.uniform_frame_variations_format.UT3Variations.__neg__ t3toolbox.uniform_frame_variations_format.UT3Variations.reverse t3toolbox.uniform_frame_variations_format.UT3Variations.save t3toolbox.uniform_frame_variations_format.UT3Variations.load t3toolbox.uniform_frame_variations_format.UT3Variations.sum_stack t3toolbox.uniform_frame_variations_format.UT3Variations.allclose t3toolbox.uniform_frame_variations_format.UT3Variations.zeros t3toolbox.uniform_frame_variations_format.UT3Variations.randn t3toolbox.uniform_frame_variations_format.UT3Variations.unit t3toolbox.uniform_frame_variations_format.UT3Variations.zeros_like t3toolbox.uniform_frame_variations_format.UT3Variations.randn_like