[Eeglablist] Frequency resolution timef

Scott Makeig smakeig at gmail.com
Thu Nov 15 11:26:05 PST 2007

Conny and all -

For the 'timef()' function -- the default 'cycles' entry [3 0.5] tells the
function to compute a DFT spectrogram in which the lowest frequency has
length of 3 cycles (at that frequency), and instead of remaining at 3 cycles
for all higher frequencies (as in a 'pure' wavelet approach) the number of
cycles in the data window used increases half (0.5) as fast as number of
cycles used in the corresponding FFT (for which the data window length is
the same for all frequencies, meaning many more cycles are used at higher
    The [3 0.5] default was chosen to produce reasonably uniform time
frequency cells (blobs) when plotted as a linear- (not log-) frequency
ERSP/ITC/ERCOH image. The pure wavelet approach (e.g., [3 0]) tends to
produce gamma-band 'vertical streaks,' by sacrificing frequency resolution
in favor of increasing time resolution at higher frequencies.
    To obtain low frequency estimates, either the window length has to be
long enough to fit 3 cycles, or zero-padding has to be used to extend the
length of the window (on both ends without data more actual data). Thus, to
estimate power at frequencies down to 3 Hz using the 'cycles', [3 0.5],
either the window length must be 1 s, or the 'padratio' must be high enough
(> 1) to extend the actual tapered data window out to 1 s.
    I hope this is clear enough!  To use a standard FFT, set 'cycles',0. In
this case, considerations of window length and zero padding still apply to
determine the lowest frequency estimated and the spacing between frequencies
    Fortunately (or otherwise), these arguments were changed somewhat in
'newtimef()'. There, it is also possible to specify a set of DFT frequencies
to use (see >> help newtimef), and -- currently -- the 'padratio' argument
has changed.

Hopefully, we can revisit these functions to provide a maximally clear set
of arguments.  I  also plan to implement a 'test' mode in which the size and
shape of the time/frequency cells at different frequencies produced by a
given set of input arguments is shown for some simulated data.

Scott Makeig

On 11/15/07, conny kranczioch <conny_kranczioch at yahoo.de> wrote:
> Dear all,
> I was wondering about how to get the frequency resolution for the output
> frequencies when using timef with wavelets. What I've done so far is to
> calculate the frequency resolution based on cycles = (output frequency)/
> (sigma(frequency)), so for my (lowest) output frequency of 3.75 Hz and a 3
> cycle wavelet sigma would be 1.25. I use the function with [wavecycles
> factor] = [3 0.5], and for each addititonal output frequency  (starting
> from 3.75 Hz) I add 0.5 cycles to my original 3 cycles to estimate the
> frequency resolution. Does this make sense or am I completely of the track?
> Best, Conny
>         __________________________________  Ihr erstes Baby? Holen Sie
> sich Tipps von anderen Eltern.  www.yahoo.de/clever
> _______________________________________________
> eeglablist mailing list eeglablist at sccn.ucsd.edu
> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
> To unsubscribe, send an empty email to
> eeglablist-unsubscribe at sccn.ucsd.edu

Scott Makeig, Research Scientist and Director, Swartz Center for
Computational Neuroscience, Institute for Neural Computation, University of
California San Diego, La Jolla CA 92093-0961, http://sccn.ucsd.edu/~scott
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://sccn.ucsd.edu/pipermail/eeglablist/attachments/20071115/9f93cef0/attachment.html 

More information about the eeglablist mailing list