Waveform
class qiskit.pulse.library.Waveform(samples, name=None, epsilon=1e-07, limit_amplitude=None)
Bases: Pulse
A pulse specified completely by complex-valued samples; each sample is played for the duration of the backend cycle-time, dt.
Create new sample pulse command.
Parameters
- samples (ndarray |List[complex]) – Complex array of the samples in the pulse envelope.
- name (str | None) – Unique name to identify the pulse.
- epsilon (float) – Pulse sample norm tolerance for clipping. If any sample’s norm exceeds unity by less than or equal to epsilon it will be clipped to unit norm. If the sample norm is greater than 1+epsilon an error will be raised.
- limit_amplitude (bool | None) – Passed to parent Pulse
Attributes
duration
name
id
Unique identifier for this pulse.
limit_amplitude
Default value: True
parameters
Return a dictionary containing the pulse’s parameters.
samples
Return sample values.
Methods
draw
draw(style=None, backend=None, time_range=None, time_unit='dt', show_waveform_info=True, plotter='mpl2d', axis=None)
Plot the interpolated envelope of pulse.
Parameters
-
style (Dict[str, Any] | None) – Stylesheet options. This can be dictionary or preset stylesheet classes. See
IQXStandard
,IQXSimple
, andIQXDebugging
for details of preset stylesheets. -
backend (Optional[BaseBackend]) – Backend object to play the input pulse program. If provided, the plotter may use to make the visualization hardware aware.
-
time_range (Tuple[int, int] | None) – Set horizontal axis limit. Tuple
(tmin, tmax)
. -
time_unit (str) – The unit of specified time range either
dt
orns
. The unit ofns
is available only whenbackend
object is provided. -
show_waveform_info (bool) – Show waveform annotations, i.e. name, of waveforms. Set
True
to show additional information about waveforms. -
plotter (str) –
Name of plotter API to generate an output image. One of following APIs should be specified:
mpl2d: Matplotlib API for 2D image generation. Matplotlib API to generate 2D image. Charts are placed along y axis with vertical offset. This API takes matplotlib.axes.Axes as `axis` input.
axis and style kwargs may depend on the plotter.
-
axis (Any | None) – Arbitrary object passed to the plotter. If this object is provided, the plotters use a given
axis
instead of internally initializing a figure object. This object format depends on the plotter. See plotter argument for details.
Returns
Visualization output data. The returned data type depends on the plotter
. If matplotlib family is specified, this will be a matplotlib.pyplot.Figure
data.