Convolutions

Basic analytical convolutions between preset functions.

convolutions.conv_delta(left, right, params, **kwargs)

Convolution with a Dirac delta.

convolutions.conv_gaussian_gaussian(left, right, params, **kwargs)

Convolution between two Gaussians.

\[a_1 G_{\sigma_1, center_1} \otimes a_2 G_{\sigma_2, center_2} = a_1 a_2 . G_{\sigma_1 + \sigma2, center_1 + center_2}\]
convolutions.conv_gaussian_jumpdiff(left, right, params, **kwargs)

Convolution of a Gaussian and a jump-diffusion Lorentzian.

Results in a Voigt profile as defined in lineshapes.

convolutions.conv_gaussian_lorentzian(left, right, params, **kwargs)

Convolution of a Gaussian and a Lorentzian.

Results in a Voigt profile as defined in lineshapes.

convolutions.conv_gaussian_pvoigt(left, right, params, **kwargs)

Convolution between a Gaussian and a pseudo-Voigt profile.

\[ \begin{align}\begin{aligned}\begin{aligned} & a_L G_{\sigma_G, center_G} \otimes a_V . \mathcal{pV}_{\sigma, center, fraction} =\\& \quad a_G a_V \left[fraction \mathcal{V}_{\sigma_G, \sigma, center + center_G} + (1 - fraction) G_{\sigma_g + \sigma_G, center + center_G} \right] \end{aligned}\end{aligned}\end{align} \]

where \(\mathcal{pV}\) is the pseudo-Voigt, \(\mathcal{V}\) is a Voigt profile, and \(\sigma_g = \frac{\sigma}{\sqrt{(2 log(2))}}\).

convolutions.conv_gaussian_rotations(left, right, params, **kwargs)

Convolution of a Gaussian and a liquid rotations model.

convolutions.conv_jumpdiff_pvoigt(left, right, params, **kwargs)

Convolution between the jump diffusion model and a pseudo-Voigt profile.

convolutions.conv_linear(left, right, params, **kwargs)

Convolution with a linear model.

Simply returns the linear model itself as it is assumed to serve as a background term by default.

convolutions.conv_lorentzian_lorentzian(left, right, params, **kwargs)

Convolution between two Lorentzians.

\[a_1 \mathcal{L}_{\sigma_1, center_1} \otimes a_2 \mathcal{L}_{sigma_2, center_2} = a_1 a_2 . \mathcal{L}_{\sigma_1 + \sigma_2, center_1 + center_2}\]
convolutions.conv_lorentzian_pvoigt(left, right, params, **kwargs)

Convolution between a Lorentzian and a pseudo-Voigt profile.

\[ \begin{align}\begin{aligned}\begin{aligned} & a_L \mathcal{L}_{\sigma_L, center_L} \otimes a_V . p\mathcal{V}_{\sigma, center, fraction} =\\&\quad a_L a_V \left[ (1 - fraction) \mathcal{V}_{\sigma_g, \sigma, center + center_L} + fraction \mathcal{L}_{\sigma + \sigma_L, center + center_L} \right] \end{aligned}\end{aligned}\end{align} \]

where \(p\mathcal{V}\) is the pseudo-Voigt, \(\mathcal{V}\) is a Voigt profile, \(\sigma_g = \frac{\sigma}{\sqrt{(2 log(2))}}\) and \(\mathcal{L}\) is a Lorentzian.

convolutions.conv_rotations_pvoigt(left, right, params, **kwargs)

Convolution between the rotation model and a pseudo-Voigt profile.

convolutions.getGlobals(params)

Helper function to get the global parameters.