Skip to main contentIBM Quantum Documentation

GaussianSquare

qiskit.pulse.library.GaussianSquare(duration, amp, sigma, width=None, angle=0.0, risefall_sigma_ratio=None, name=None, limit_amplitude=None) GitHub(opens in a new tab)

Bases: object(opens in a new tab)

A square pulse with a Gaussian shaped risefall on both sides lifted such that its first sample is zero.

Exactly one of the risefall_sigma_ratio and width parameters has to be specified.

If risefall_sigma_ratio is not None and width is None:

risefall=risefall_sigma_ratio×sigmawidth=duration2×risefall\begin{aligned} \text{risefall} &= \text{risefall\_sigma\_ratio} \times \text{sigma}\\ \text{width} &= \text{duration} - 2 \times \text{risefall} \end{aligned}

If width is not None and risefall_sigma_ratio is None:

risefall=durationwidth2\text{risefall} = \frac{\text{duration} - \text{width}}{2}

In both cases, the lifted gaussian square pulse f(x)f'(x) is defined as:

f(x)={exp(12(xrisefall)2sigma2)x<risefall1risefallx<risefall+widthexp(12(x(risefall+width))2sigma2)risefall+widthxf(x)=A×f(x)f(1)1f(1),0x<duration\begin{aligned} f'(x) &= \begin{cases} \exp\biggl(-\frac12 \frac{(x - \text{risefall})^2}{\text{sigma}^2}\biggr) & x < \text{risefall}\\ 1 & \text{risefall} \le x < \text{risefall} + \text{width}\\ \exp\biggl(-\frac12 \frac{{\bigl(x - (\text{risefall} + \text{width})\bigr)}^2} {\text{sigma}^2} \biggr) & \text{risefall} + \text{width} \le x \end{cases}\\ f(x) &= \text{A} \times \frac{f'(x) - f'(-1)}{1-f'(-1)}, \quad 0 \le x < \text{duration} \end{aligned}

where f(x)f'(x) is the gaussian square waveform without lifting or amplitude scaling, and A=amp×exp(i×angle)\text{A} = \text{amp} \times \exp\left(i\times\text{angle}\right).

Create new pulse instance.

Parameters

  • duration – Pulse length in terms of the sampling period dt.
  • amp – The magnitude of the amplitude of the Gaussian and square pulse.
  • sigma – A measure of how wide or narrow the Gaussian risefall is; see the class docstring for more details.
  • width – The duration of the embedded square pulse.
  • angle – The angle of the complex amplitude of the pulse. Default value 0.
  • risefall_sigma_ratio – The ratio of each risefall duration to sigma.
  • name – Display name for this pulse envelope.
  • limit_amplitude – If True, then limit the amplitude of the waveform to 1. The default is True and the amplitude is constrained to 1.

Returns

ScalableSymbolicPulse instance.

Raises

PulseError – When width and risefall_sigma_ratio are both empty or both non-empty.


Attributes

alias

= 'GaussianSquare'

Was this page helpful?