scipy.signal.

morlet#

scipy.signal.morlet(M, w=5.0, s=1.0, complete=True)[源代码][源代码]#

复杂Morlet小波。

自 1.12.0 版本弃用: 在 SciPy 1.12 中,scipy.signal.morlet 已被弃用,并将在 SciPy 1.15 中移除。我们建议使用 PyWavelets 替代。

参数:
M整数

小波的长度。

wfloat, 可选

Omega0。默认值为 5

sfloat, 可选

缩放因子,从 -s*2*pi+s*2*pi 窗口化。默认值为 1。

完成bool, 可选

是否使用完整版或标准版。

返回:
morlet(M,) ndarray

参见

morlet2

Morlet 小波的实现,与 cwt 兼容。

scipy.signal.gausspulse

注释

标准版本:

pi**-0.25 * exp(1j*w*x) * exp(-0.5*(x**2))

这个常用的波形通常简称为 Morlet 波形。请注意,这种简化版本在 w 值较低时可能会导致可接受性问题。

完整版本:

pi**-0.25 * (exp(1j*w*x) - exp(-0.5*(w**2))) * exp(-0.5*(x**2))

此版本有一个修正项以提高可接受性。对于 w 大于 5 的情况,修正项可以忽略不计。

注意,返回波的能量并未根据 s 进行归一化。

这个小波的基本频率(以赫兹为单位)由 f = 2*s*w*r / M 给出,其中 r 是采样率。

注意:此函数是在 cwt 之前创建的,与其不兼容。

示例

>>> from scipy import signal
>>> import matplotlib.pyplot as plt
>>> M = 100
>>> s = 4.0
>>> w = 2.0
>>> wavelet = signal.morlet(M, s, w)
>>> plt.plot(wavelet.real, label="real")
>>> plt.plot(wavelet.imag, label="imag")
>>> plt.legend()
>>> plt.show()
../../_images/scipy-signal-morlet-1.png