當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python cusignal.wavelets.wavelets.morlet2用法及代碼示例

用法:

cusignal.wavelets.wavelets.morlet2(M, s, w=5)

複雜 Morlet 小波,設計用於 cwt 。返回 morlet 小波的完整版本,根據 s 標準化:

exp(1j*w*x/s) * exp(-0.5*(x/s)**2) * pi**(-0.25) * sqrt(1/s)
Mint

小波的長度。

s浮點數

小波的寬度參數。

w浮點數,可選

歐米茄0。默認值為 5

morlet : (M,) ndarray 另見 ---- morlet : Morlet 小波的實現,與 cwt 不兼容 注意 ---- .. version added::1.4.0 此函數旨在與 cwt 一起使用。因為morlet2 返回複數數組,所以cwtdtype 參數應設置為complex128 以獲得最佳結果。請注意與 morlet 的實現差異。該小波的基頻(以 Hz 為單位)由下式給出:

f = w*fs / (2*s*np.pi)

其中fs是采樣率,s是小波寬度參數。同樣,我們可以在f 處獲得小波寬度參數:

s = w*fs / (2*f*np.pi)
>>> from scipy import signal
>>> import matplotlib.pyplot as plt
>>> M = 100
>>> s = 4.0
>>> w = 2.0
>>> wavelet = signal.morlet2(M, s, w)
>>> plt.plot(abs(wavelet))
>>> plt.show()
This example shows basic use of `morlet2` with `cwt` in time-frequency
analysis:
>>> from scipy import signal
>>> import matplotlib.pyplot as plt
>>> t, dt = np.linspace(0, 1, 200, retstep=True)
>>> fs = 1/dt
>>> w = 6.
>>> sig = np.cos(2*np.pi*(50 + 10*t)*t) + np.sin(40*np.pi*t)
>>> freq = np.linspace(1, fs/2, 100)
>>> widths = w*fs / (2*freq*np.pi)
>>> cwtm = signal.cwt(sig, signal.morlet2, widths, w=w)
>>> plt.pcolormesh(t, freq, np.abs(cwtm),
    cmap='viridis', shading='gouraud')
>>> plt.show()

相關用法


注:本文由純淨天空篩選整理自rapids.ai大神的英文原創作品 cusignal.wavelets.wavelets.morlet2。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。