Skip to main contentIBM Quantum Documentation
This page is from an old version of Qiskit SDK and does not exist in the latest version. We recommend you migrate to the latest version. See the release notes for more information.

qiskit.pulse.Gaussian

class Gaussian(duration, amp, sigma, name=None)

GitHub

A truncated pulse envelope shaped according to the Gaussian function whose mean is centered at the center of the pulse (duration / 2):

f(x)=ampexp((1/2)(xduration/2)2/sigma2)),0<=x<durationf(x) = amp * exp( -(1/2) * (x - duration/2)^2 / sigma^2) ) , 0 <= x < duration

Initialize the gaussian pulse.

Parameters

  • duration (Union[int, ParameterExpression]) – Pulse length in terms of the the sampling period dt.
  • amp (Union[complex, ParameterExpression]) – The amplitude of the Gaussian envelope.
  • sigma (Union[float, ParameterExpression]) – A measure of how wide or narrow the Gaussian peak is; described mathematically in the class docstring.
  • name (Optional[str]) – Display name for this pulse envelope.

__init__

__init__(duration, amp, sigma, name=None)

Initialize the gaussian pulse.

Parameters

  • duration (Union[int, ParameterExpression]) – Pulse length in terms of the the sampling period dt.
  • amp (Union[complex, ParameterExpression]) – The amplitude of the Gaussian envelope.
  • sigma (Union[float, ParameterExpression]) – A measure of how wide or narrow the Gaussian peak is; described mathematically in the class docstring.
  • name (Optional[str]) – Display name for this pulse envelope.

Methods

__init__(duration, amp, sigma[, name])Initialize the gaussian pulse.
assign(parameter, value)Assign one parameter to a value, which can either be numeric or another parameter expression.
assign_parameters(value_dict)Return a new ParametricPulse with parameters assigned.
draw([dt, style, filename, interp_method, …])Plot the interpolated envelope of pulse.
get_waveform()Return a Waveform with samples filled according to the formula that the pulse represents and the parameter values it contains.
is_parameterized()Return True iff the instruction is parameterized.
validate_parameters()Validate parameters.

Attributes

ampThe Gaussian amplitude.
idUnique identifier for this pulse.
limit_amplitude
parametersReturn a dictionary containing the pulse’s parameters.
sigmaThe Gaussian standard deviation of the pulse width.

amp

The Gaussian amplitude.

Return type

Union[complex, ParameterExpression]

assign

assign(parameter, value)

Assign one parameter to a value, which can either be numeric or another parameter expression.

Return type

ParametricPulse

assign_parameters

assign_parameters(value_dict)

Return a new ParametricPulse with parameters assigned.

Parameters

value_dict (Dict[ParameterExpression, Union[ParameterExpression, float]]) – A mapping from Parameters to either numeric values or another Parameter expression.

Return type

ParametricPulse

Returns

New pulse with updated parameters.

draw

draw(dt=None, style=None, filename=None, interp_method=None, scale=None, interactive=None, draw_title=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 (Optional[Dict[str, Any]]) – Stylesheet options. This can be dictionary or preset stylesheet classes. See :py:class:~`qiskit.visualization.pulse_v2.stylesheets.IQXStandard`, :py:class:~`qiskit.visualization.pulse_v2.stylesheets.IQXSimple`, and :py:class:~`qiskit.visualization.pulse_v2.stylesheets.IQXDebugging` 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 (Optional[Tuple[int, int]]) – Set horizontal axis limit. Tuple (tmin, tmax).

  • time_unit (str) – The unit of specified time range either dt or ns. The unit of ns is available only when backend 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 (Optional[Any]) – 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.

  • dt (Optional[Any]) – Deprecated. This argument is used by the legacy pulse drawer.

  • filename (Optional[Any]) – Deprecated. This argument is used by the legacy pulse drawer. To save output image, you can call .savefig method with returned Matplotlib Figure object.

  • interp_method (Optional[Any]) – Deprecated. This argument is used by the legacy pulse drawer.

  • scale (Optional[Any]) – Deprecated. This argument is used by the legacy pulse drawer.

  • interactive (Optional[Any]) – Deprecated. This argument is used by the legacy pulse drawer.

  • draw_title (Optional[Any]) – Deprecated. This argument is used by the legacy pulse drawer.

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.

get_waveform

get_waveform()

Return a Waveform with samples filled according to the formula that the pulse represents and the parameter values it contains.

Return type

Waveform

id

Unique identifier for this pulse.

Return type

int

is_parameterized

is_parameterized()

Return True iff the instruction is parameterized.

Return type

bool

parameters

Return a dictionary containing the pulse’s parameters.

Return type

Dict[str, Any]

sigma

The Gaussian standard deviation of the pulse width.

Return type

Union[float, ParameterExpression]

validate_parameters

validate_parameters()

Validate parameters.

Raises

PulseError – If the parameters passed are not valid.

Return type

None

Was this page helpful?
Report a bug or request content on GitHub.