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.library.drag

drag(duration, amp, sigma, beta, name=None, zero_ends=True)

GitHub

Generates Y-only correction DRAG Waveform for standard nonlinear oscillator (SNO) [1].

For A=A= amp, σ=\sigma= sigma, and β=\beta= beta, applies the midpoint sampling strategy to generate a discrete pulse sampled from the continuous function:

f(x)=g(x)+iβh(x),f(x) = g(x) + i \beta h(x),

where g(x)g(x) is the function sampled in gaussian(), and h(x)h(x) is the function sampled in gaussian_deriv().

If zero_ends == True, the samples from g(x)g(x) are remapped as in gaussian().

References

  1. Gambetta, J. M., Motzoi, F., Merkel, S. T. & Wilhelm, F. K. “Analytic control methods for high-fidelity unitary operations in a weakly nonlinear oscillator.” Phys. Rev. A 83, 012308 (2011).

Parameters

  • duration (int) – Duration of pulse. Must be greater than zero.
  • amp (complex) – Pulse amplitude at center duration/2.
  • sigma (float) – Width (standard deviation) of pulse.
  • beta (float) – Y correction amplitude. For the SNO this is β=λ124Δ2\beta=-\frac{\lambda_1^2}{4\Delta_2}. Where λ1\lambda_1 is the relative coupling strength between the first excited and second excited states and Δ2\Delta_2 is the detuning between the respective excited states.
  • name (str | None) – Name of pulse.
  • zero_ends (bool) – If True, zero ends at x = -1, x = duration + 1, but rescale to preserve amp.

Return type

Waveform

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