pulse_scheme#
Module containing functions for drawing pulse schemes and circuit diagrams using matplotlib.
Module Contents#
Functions#
| 
 | Open a new figure and configure it to plot pulse schemes. | 
| 
 | Add a new subplot configured for plotting pulse schemes to a figure. | 
| 
 | Draw a microwave pulse: Gaussian envelope with modulation. | 
| 
 | Draw a smooth flux pulse, where the rising and falling edges are given by | 
| 
 | Draw a Ram-Z flux pulse, i.e. only part of the pulse is shaded, to indicate | 
| 
 | Draw an arrow to indicate an interval. | 
| 
 | Draws a measurement meter on the specified position. | 
| 
 | Draws a box filled with text at the specified position. | 
| 
 | |
| 
 | |
| 
 | 
Attributes#
- new_pulse_fig(figsize: tuple[int, int] | None = None, ax: matplotlib.axes.Axes | None = None) tuple[matplotlib.figure.Figure | None, matplotlib.axes.Axes][source]#
- Open a new figure and configure it to plot pulse schemes. - Parameters:
- figsize – Size of the figure. 
- ax – Axis to use for plotting. If - None, then creates a new one.
 
- Returns:
- Tuple of figure handle and axis handle. 
 
- new_pulse_subplot(fig: matplotlib.figure.Figure, *args, **kwargs) matplotlib.axes.Axes[source]#
- Add a new subplot configured for plotting pulse schemes to a figure. - All *args and **kwargs are passed to fig.add_subplot. - Parameters:
- fig – Figure to add the subplot to. 
- *args – Positional arguments to pass to fig.add_subplot. 
- **kwargs – Keyword arguments to pass to fig.add_subplot. 
 
 
- mw_pulse(ax: matplotlib.axes.Axes, pos: float, y_offs: float = 0.0, width: float = 1.5, amp: float = 1, label: str | None = None, phase: float = 0, label_height: float = 1.3, color: str = constants.COLOR_ORANGE, modulation: str = 'normal', **plot_kws) float[source]#
- Draw a microwave pulse: Gaussian envelope with modulation. - Parameters:
- ax – Axis to plot on. 
- pos – Position of the pulse. 
- y_offs – Vertical offset of the pulse. 
- width – Width of the pulse. 
- amp – Amplitude 
- label – Label to add to the pulse. 
- label_height – Height of the label. 
- color – Color of the pulse. 
- modulation – Modulation 
 
 
- flux_pulse(ax: matplotlib.axes.Axes, pos: float, y_offs: float = 0.0, width: float = 2.5, s: float = 0.1, amp: float = 1.5, label: str | None = None, label_height: float = 1.7, color: str = constants.COLOR_ORANGE, **plot_kws) float[source]#
- Draw a smooth flux pulse, where the rising and falling edges are given by Fermi-Dirac functions. - Parameters:
- ax – Axis to plot on. 
- pos – Position of the pulse. 
- y_offs – Vertical offset of the pulse. 
- width – Width of the pulse. 
- s – smoothness of edge 
- amp – Amplitude 
- label – Label to add to the pulse. 
- label_height – Height of the label. 
- color – Color of the pulse. 
 
 
- ram_Z_pulse(ax: matplotlib.axes.Axes, pos: float, y_offs: float = 0.0, width: float = 2.5, s: float = 0.1, amp: float = 1.5, sep: float = 1.5, color: str = constants.COLOR_ORANGE) float[source]#
- Draw a Ram-Z flux pulse, i.e. only part of the pulse is shaded, to indicate cutting off the pulse at some time. - Parameters:
- ax – Axis to plot on. 
- pos – Position of the pulse. 
- y_offs – Vertical offset of the pulse. 
- width – Width of the pulse. 
- s – smoothness of edge 
- amp – Amplitude 
- sep – Separation between pulses. 
- color – Color of the pulse. 
 
 
- interval(ax: matplotlib.axes.Axes, start: float, stop: float, y_offs: float = 0.0, height: float = 1.5, label: str | None = None, label_height: str | None = None, vlines: bool = True, color: str = 'k', arrowstyle: str = '<|-|>', **plot_kws) None[source]#
- Draw an arrow to indicate an interval. - Parameters:
- ax – Axis to plot on. 
- pos – Position of the pulse. 
- y_offs – Vertical offset of the pulse. 
- width – Width of the pulse. 
- s – smoothness of edge 
- amp – Amplitude 
- sep – Separation between pulses. 
- color – Color of the pulse. 
- arrow_style 
 
 
- meter(ax: matplotlib.axes.Axes, x0: float, y0: float, y_offs: float = 0.0, width: float = 1.1, height: float = 0.8, color: str = 'black', framewidth: float = 0.0, fillcolor: str | None = None) None[source]#
- Draws a measurement meter on the specified position. - Parameters:
- ax 
- x0 
- y0 
- y_offs 
- width 
- height 
- color 
- framewidth 
- fillcolor 
 
 
- box_text(ax: matplotlib.axes.Axes, x0: float, y0: float, text: str = '', width: float = 1.1, height: float = 0.8, color: str = 'black', fillcolor: str | None = None, textcolor: str = 'black', fontsize: int | None = None) None[source]#
- Draws a box filled with text at the specified position. - Parameters:
- ax 
- x0 
- y0 
- text 
- width 
- height 
- color 
- fillcolor 
- textcolor 
- fontsize