scipy.signal.
morlet#
- scipy.signal.morlet(M, w=5.0, s=1.0, complete=True)[源代码]#
复值莫尔小波。
已弃用,始于版本 1.12.0: scipy.signal.morlet 在 SciPy 1.12 中已弃用,将在 SciPy 1.15 中删除。建议改为使用 PyWavelets。
- 参数:
- Mint
小波长度。
- wfloat,可选
Omega0。默认值为 5
- sfloat,可选
缩小因子,窗口范围为
-s*2*pi
到+s*2*pi
。默认值为 1。- completebool,可选
是否使用完整版本还是标准版本。
- 返回:
- morlet(M,) ndarray
另请参见
morlet2
实现莫尔小波,与
cwt
兼容。scipy.signal.gausspulse
备注
标准版本
pi**-0.25 * exp(1j*w*x) * exp(-0.5*(x**2))
此种常用小波通常简称为莫尔小波。请注意,当 w 的值为较低时,此简化版本可能导致容许度问题。
完整版本
pi**-0.25 * (exp(1j*w*x) - exp(-0.5*(w**2))) * exp(-0.5*(x**2))
此版本具有一个校正项,以提高可受理性。对于大于 5 的w,校正项可以忽略。
请注意,返回小波的能量未根据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()