boulderopalscaleup.common.GaussianWaveform

class boulderopalscaleup.common.GaussianWaveform(duration_ns, amplitude, sigma, waveform_type='Gaussian')

A Gaussian-shaped pulse waveform.

Gaussian pulses provide smooth edges that minimize spectral leakage and reduce transitions to unwanted energy levels in quantum systems.

Variables

  • duration_ns (int) – Total duration of the waveform in nanoseconds. Must be positive. The pulse is centered at duration_ns / 2. Typical values: 20-100 ns.
  • amplitude (float) – Peak amplitude of the Gaussian pulse. Dimensionless, typically normalized in the range [0, 1]. Common values: 0.1-0.4.
  • sigma (float) – Standard deviation of the Gaussian envelope in nanoseconds. Controls the width of the pulse. For well-contained pulses, use sigma<textdurationns/4sigma < text{duration_ns} / 4. Typical values: 5-20 ns.
  • waveform_type (Literal [ "Gaussian" ]) – Type discriminator for serialization.

Notes

The waveform is mathematically defined as:

$$f(t) = A cdot expleft(-frac{(t - t_{text{center}})^2}{2sigma^2}right)$$

where AA is the amplitude, ttextcenter=textdurationns/2t_{text{center}} = text{duration_ns} / 2 is the pulse center, sigmasigma is the standard deviation and tin[0,textdurationns]t in [0, text{duration_ns}].

The pulse is automatically centered within the duration window.

SEE ALSO

DragCosineWaveform : For DRAG pulses with leakage suppression

GaussianFlattopWaveform : For flat-top pulses with Gaussian ramps

Methods

init
showReturn a human-readable string representation of the waveform.

Was this useful?