UniformCorewiseGeometryOps ========================== .. toctree:: :hidden: /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.from_point /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.with_sharing /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.frame /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.stack_shape /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.base_point /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.precompute /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.project /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.retract /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.inner /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.point_norm_sq /autoapi/t3toolbox/backend/geometry/UniformCorewiseGeometryOps.point_tangent .. py:class:: t3toolbox.backend.geometry.UniformCorewiseGeometryOps Bases: :py:obj:`t3toolbox.backend.common.ValueHashedFields` The uniform **corewise** geometry at a fixed rank -- the raw-supercore twin of :py:data:`t3toolbox.uniform_manifold.UNIFORM_COREWISE`. As :py:class:`CorewiseGeometryOps`: the cores are the frame, no gauge, additive retraction; and as :py:class:`UniformManifoldGeometryOps`, the rank structure is held here because the optimizer state is a bare supercore pair. The variation masks are a pure derivation of the plain masks here (the ``(U, G, G, G)`` frame's gauge shift), so ``from_point`` needs no orthogonalization. .. py:attribute:: shape :type: t3toolbox.backend.common.typ.Tuple[int, ...] .. py:attribute:: masks :type: t3toolbox.backend.common.typ.Tuple .. py:attribute:: groups :type: t3toolbox.backend.common.typ.Tuple[t3toolbox.backend.common.typ.Tuple[int, ...], ...] :value: () .. py:property:: n_stack :type: int ``|C|``, the frame stack rank (see :py:attr:`UniformManifoldGeometryOps.n_stack`). .. py:property:: var_masks :type: t3toolbox.backend.common.typ.Tuple The variation masks of the ``(U, G, G, G)`` frame -- the corewise frame's mask set put through the gauge shift. A pure derivation of :py:attr:`masks`, so it is a property rather than a stored field. Methods ------- .. autoapisummary:: t3toolbox.backend.geometry.UniformCorewiseGeometryOps.from_point t3toolbox.backend.geometry.UniformCorewiseGeometryOps.with_sharing t3toolbox.backend.geometry.UniformCorewiseGeometryOps.frame t3toolbox.backend.geometry.UniformCorewiseGeometryOps.stack_shape t3toolbox.backend.geometry.UniformCorewiseGeometryOps.base_point t3toolbox.backend.geometry.UniformCorewiseGeometryOps.precompute t3toolbox.backend.geometry.UniformCorewiseGeometryOps.project t3toolbox.backend.geometry.UniformCorewiseGeometryOps.retract t3toolbox.backend.geometry.UniformCorewiseGeometryOps.inner t3toolbox.backend.geometry.UniformCorewiseGeometryOps.point_norm_sq t3toolbox.backend.geometry.UniformCorewiseGeometryOps.point_tangent