TruncatedGaussianDerivative

TruncatedGaussianDerivative#

class iqm.models.playlist.waveforms.TruncatedGaussianDerivative(n_samples, full_width, center_offset=0.0)#

Bases: Waveform

Derivative of a gaussian pulse, where the decaying tails are removed by offsetting, truncating, and then rescaling the pulse slightly, so that the resulting waveform is zero where the original waveform reaches the threshold level, and beyond, while still reaching the same maximal pulse amplitude. Currently, the threshold is fixed at \(g_0 = 0.003\).

Normalized so that values are in \([-1, 1]\). The normalization factor is \(\sigma \: \sqrt{e}\).

\[f(t) = - \sqrt{e} \frac{t - c}{\sigma} e^{-\frac{(t - c)^2}{2 \sigma^2}},\]

where \(c\) is center_offset, and \(\sigma\) is calculated via \(\sigma :=\) full_width \(/ \sqrt{8 \text{ln}(1/g_0)}\).

The waveform after offsetting, truncating and rescaling is given by

\[f(t) = \text{max}(g(t) - g_0, 0) / (1 - g_0).\]

where \(g_0\) is the threshold level for the truncation.

Parameters:
  • full_width (float) – Duration of the support of the pulse, >= 0.

  • center_offset (float) – The waveform is centered at this offset from the midpoint of the sampling window.

  • n_samples (int)

Module: iqm.models.playlist.waveforms

Attributes

center_offset

full_width

n_samples

Requested number of samples for the waveform.

Methods