bencher.results.manim_cartesian.cartesian_product_cfg ===================================================== .. py:module:: bencher.results.manim_cartesian.cartesian_product_cfg .. autoapi-nested-parse:: Data model for Cartesian product animation configuration. No manim dependency — pure Python dataclasses that bridge BenchCfg to the animation scene. Classes ------- .. autoapisummary:: bencher.results.manim_cartesian.cartesian_product_cfg.SweepVar bencher.results.manim_cartesian.cartesian_product_cfg.CartesianProductCfg Functions --------- .. autoapisummary:: bencher.results.manim_cartesian.cartesian_product_cfg.from_bench_cfg Module Contents --------------- .. py:class:: SweepVar A single dimension of the Cartesian product. .. attribute:: name Human-readable variable name (e.g. "theta", "repeat"). .. attribute:: values The sampled values for this dimension. .. py:attribute:: name :type: str .. py:attribute:: values :type: list[Any] :value: [] .. py:class:: CartesianProductCfg Configuration describing an N-dimensional Cartesian product sweep. ``all_vars`` includes every dimension — input variables *and* meta variables (repeat, over_time). They are all first-class dimensions of the product. .. attribute:: all_vars Every dimension of the Cartesian product. .. attribute:: result_names Names of the result variables being collected. .. py:attribute:: all_vars :type: list[SweepVar] :value: [] .. py:attribute:: result_names :type: list[str] :value: [] .. py:attribute:: strobe_color :type: tuple[int, int, int] :value: (80, 80, 80) .. py:attribute:: strobe_pad :type: int :value: 12 .. py:attribute:: strobe_mark_size :type: int :value: 2 .. py:attribute:: strobe_mark_gap :type: int :value: 4 .. py:attribute:: strobe_mark_row_h :type: int :value: 16 .. py:attribute:: strobe_border_radius :type: int :value: 4 .. py:attribute:: strobe_base_border_w :type: int :value: 2 .. py:property:: ndim :type: int Number of dimensions. .. py:property:: shape :type: tuple[int, Ellipsis] Shape of the result tensor. .. py:property:: total_cells :type: int Total number of cells in the Cartesian product. .. py:function:: from_bench_cfg(bench_cfg) -> CartesianProductCfg Build a :class:`CartesianProductCfg` from a ``BenchCfg`` instance. Uses ``bench_cfg.all_vars`` (input_vars + meta_vars) so that repeat and over_time are included as full dimensions — they are just more dimensions of the Cartesian product. This mirrors the extraction pattern in ``DimsCfg.__init__`` (``bench_cfg.py``).