Loading sails/wavelet.py +8 −8 Original line number Diff line number Diff line Loading @@ -6,8 +6,7 @@ import numpy as np from scipy import signal def morlet(x, freqs, sample_rate, win_len=4, ncycles=5, ret_basis=False, ret_mode='power', normalise='wikipedia'): def morlet(x, freqs, sample_rate, win_len=4, ncycles=5, ret_basis=False, ret_mode='power', normalise='wikipedia'): """Compute a morlet wavelet time-frequency transform on a univariate dataset. Parameters Loading Loading @@ -99,13 +98,14 @@ def cross_morlet(x, freqs, sample_rate, win_len=4, ncycles=5, ret_mode='power', Array containing morlet cross wavelet transformed data [nfreqs x nsamples x nchannels x nchannels]. """ if ret_mode not in ['power', 'amplitude', 'complex']: raise ValueError("'ret_mode not recognised, please use one of {'power','amplitude','complex'}") # Run standard wavelet decomposition return complex values wt = morlet(x, freqs, sample_rate, win_len=win_len, ncycles=ncycles, ret_mode='complex', normalise=normalise) wt = morlet(x, freqs, sample_rate, win_len=win_len, ncycles=ncycles, ret_mode='complex', normalise=normalise) # Preallocate output array # [nchannels x nchannels x nfreqs x ntimes] S = np.zeros((wt.shape[0], wt.shape[0], wt.shape[1], wt.shape[2]), dtype=complex) # Preallocate output array [nchannels x nchannels x nfreqs x ntimes] S = np.empty((wt.shape[0], wt.shape[0], wt.shape[1], wt.shape[2]), dtype=complex) # Main loop for ii in range(wt.shape[1]): Loading Loading @@ -139,7 +139,7 @@ def get_morlet_basis(freq, ncycles, win_len, sample_rate, normalise='wikipedia') Flag indicating which normalisation factor to apply to the wavelet basis (default is 'wikipedia') - can be one of: * None - no normalisatio is applied * None - no normalisation is applied * 'simple' - wavelet is normalised by its own sum Loading Loading
sails/wavelet.py +8 −8 Original line number Diff line number Diff line Loading @@ -6,8 +6,7 @@ import numpy as np from scipy import signal def morlet(x, freqs, sample_rate, win_len=4, ncycles=5, ret_basis=False, ret_mode='power', normalise='wikipedia'): def morlet(x, freqs, sample_rate, win_len=4, ncycles=5, ret_basis=False, ret_mode='power', normalise='wikipedia'): """Compute a morlet wavelet time-frequency transform on a univariate dataset. Parameters Loading Loading @@ -99,13 +98,14 @@ def cross_morlet(x, freqs, sample_rate, win_len=4, ncycles=5, ret_mode='power', Array containing morlet cross wavelet transformed data [nfreqs x nsamples x nchannels x nchannels]. """ if ret_mode not in ['power', 'amplitude', 'complex']: raise ValueError("'ret_mode not recognised, please use one of {'power','amplitude','complex'}") # Run standard wavelet decomposition return complex values wt = morlet(x, freqs, sample_rate, win_len=win_len, ncycles=ncycles, ret_mode='complex', normalise=normalise) wt = morlet(x, freqs, sample_rate, win_len=win_len, ncycles=ncycles, ret_mode='complex', normalise=normalise) # Preallocate output array # [nchannels x nchannels x nfreqs x ntimes] S = np.zeros((wt.shape[0], wt.shape[0], wt.shape[1], wt.shape[2]), dtype=complex) # Preallocate output array [nchannels x nchannels x nfreqs x ntimes] S = np.empty((wt.shape[0], wt.shape[0], wt.shape[1], wt.shape[2]), dtype=complex) # Main loop for ii in range(wt.shape[1]): Loading Loading @@ -139,7 +139,7 @@ def get_morlet_basis(freq, ncycles, win_len, sample_rate, normalise='wikipedia') Flag indicating which normalisation factor to apply to the wavelet basis (default is 'wikipedia') - can be one of: * None - no normalisatio is applied * None - no normalisation is applied * 'simple' - wavelet is normalised by its own sum Loading