[Eeglablist] pop_eegfiltnew vs. eegfilt - transition bandwidth

Andreas Widmann widmann at uni-leipzig.de
Sun Apr 16 08:43:35 PDT 2017

> We’re replicating another lab’s experiment. They used eegfilt for their data, when we use eegfilt we are able to replicate their effects. However, when we use eegfiltnew we do not. 
> We changed the transition bandwidth to .15 from .25 in eegfiltnew
You changed that directly in the code? This is actually a bad idea. To only partly change the heuristic for default filter order may have adverse side effects. The .25 parameter only applies to cutoff > 8 Hz (and < Nyquist - 8 Hz) in eegfiltnew anyway. I suggest manually computing filter order from requested transition band width and directly using this filter order in the GUI or CLI. I posted the equation recently on the list.

> and the data looks to, again, replicate their effects. This would suggest that a narrower transition bandwidth is yielding better SNR in this case. 
> I have two questions:
> (1) I realize that the narrow transition bandwidth will increase ripple in the passband
Where did you read that? This is incorrect. Transition band width is a function of filter order. Ripple is defined by the windowing function. See
for a detailed introduction of the concepts.

> , but is there any other reason why .15 may be problematic vs. .25? 
Not problematic, just requires higher filter orders.

> (2) Is there any other difference between eegfilt and eegfiltnew besides the transition bandwidth? I couldn’t really tell from my cursory comparison of the functions. 
Almost everything. eegfiltnew uses a completely different backend. The frontend was maintained for backward compatibility.

There are two different versions of the old eegfilt function. The older firls-default versions until early 2012 were ok-ish with respect to transition band width but had severe other (related) problems. The later fir1-default versions reduced these problems but transition band width was now actually far from the requested. See
for a more details.

I suggest directly comparing the frequency responses of old and new filter to see the effective (!) filter characteristics find out what makes the difference for your data.


> Thanks for your help!!
> -Mary
> _______________________________________________
> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
> To unsubscribe, send an empty email to eeglablist-unsubscribe at sccn.ucsd.edu
> For digest mode, send an email with the subject "set digest mime" to eeglablist-request at sccn.ucsd.edu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://sccn.ucsd.edu/pipermail/eeglablist/attachments/20170416/1a671b7b/attachment.html>

More information about the eeglablist mailing list