qudit_sim.visualization.plot_evolution

qudit_sim.visualization.plot_evolution(sim_result=None, time_evolution=None, tlist=None, dim=None, differential=False, threshold=0.01, select_components=None, eigvals=True, align_ylim=True, tscale=FrequencyScale.auto, fig=None, title='')

Plot the Pauli components of the generator of a time evolution as a function of time.

The time evolution, time points, and the operator dimension can either be passed as a simulation result object or individually.

Parameters
  • sim_result (Optional[PulseSimResult]) – Simulation result object. If not None, time_evolution, tlist, and dim are ignored.

  • time_evolution (Optional[numpy.ndarray]) – Time evolution unitaries.

  • tlist (Optional[numpy.ndarray]) – Time points.

  • dim (Optional[Tuple[int, ...]]) – Operator dimension.

  • differential (bool) – If True, plot the differential of the time evolution, i.e. \(U_{H}(t_i) U_{H}(t_{i-1})^{\dagger}\).

  • threshold (float) – Only the Pauli components whose values exceed this value are plotted. Ignored if select_components is not None.

  • select_components (Optional[List[Tuple[int, ...]]]) – List of indices of the components to plot.

  • eigvals (bool) – If True, add a plot of the generator eigenvalue evolution.

  • align_ylim (bool) – If True, the vertical axis limits are aligned over all plots.

  • tscale (Optional[FrequencyScale]) – Time scale.

  • fig (Optional[Figure]) – Figure to add the plots into.

  • title (str) – Title of the figure.

Return type

Tuple[List[Tuple[int, ...]], Figure]

Returns

The indices of the plotted components and the plot figure.