symbrim.utilities.benchmarking.benchmark

symbrim.utilities.benchmarking.benchmark(rounds: int = 3, group: str | None = None, **kwargs: dict[str, object]) Callable[[Callable[[], KanesMethod | System]], Callable]

Create decorator to benchmark a function.

Parameters:
  • rounds (int, optional) – Number of rounds to run the benchmark for, by default 3.

  • group (Optional[str], optional) – Group to put the benchmark in, by default None.

  • kwargs – If kwargs are provided, then they are passed to sympy.physics.mechanics.system.System.form_eoms().

Returns:

Decorated function, which should return an instance of sympy.physics.mechanics.system.System or sympy.physics.mechanics.kane.KanesMethod.

Return type:

function