Wavelet-based TFR with multiple wavelets

I’ve started to look into wavelet-TFR, and MNE offers tfr_morlet. But what about other wavelet transformations? After discussion with colleagues, I’d like to try to compute a TFR representation with morlet wavelet + other wavelets at once.

Morlet wavelet case

In the case of tfr_morlet, the function _compute_tfr creates one wavelet per frequency of interest to account for variable time-window duration, decreasing with frequency (depending on the number of cycles set).

Next step, the wavelets are passed to _time_frequency_loop as an array of shape (n_tapers, n_wavelets, n_times) with n_tapers=1 for wavelet-based TFR.

Next step, the CWT is computed (as a generator used in _time_frequency_loop):

With the wavelets W (Ws in _cwt_gen) provided as a list of wavelets (1D array): one wavelet per frequency of interest. The CWT generator yields the TFR for each epoch (n_freqs, n_times).

Multiple wavelets case

Now, what if I want to have both a morlet wavelet + a daubechies wavelet? (as an example only). I’m stuck at this stage:

  • Should I combine both wavelets before CWT? And how?
  • Should I compute 2 times the CWT, one with each wavelet, and combine the TFR? And how?

EDIT: Not entirely sure, but it looks like I’m referring to DWT.

Addition to MNE-Python

I’m waiting for the literature that my colleague will forward me about wavelet representation of EEG data, if it checks out, I could add another TFR function in which you provide a list of wavelets to use (by name probably).