DOC: Reporting filter properties
See original GitHub issueConcerning filtering, in Wiedmann et al. (2015) they recommend to report:
All filter parameters, including filtertype (high-pass, low-pass, band-pass, band-stop, FIR, IIR), cutoff frequency (including definition), filter order (or length), roll-off or transition bandwidth, passband ripple and stopband attenuation, filter delay(zero-phase, linear-phase, non-linear phase) and causality, and direction of computation (one-pass forward/reverse,or two-pass forward and reverse) must be reported
Checking the MNE documentation and specifically the background on filtering and tutorial, there are some questions that I have:
-
What is the definition of the cutoff frequency by the filters used in MNE? In the docstring of
create_filter
it say that -6dB is the middle of the transition window. Does that mean that in MNE, the middle of the transition window is the “half-amplitude” cutoff? (as opposed to half-power) -
Filter length and transition bandwidth are being printed upon calling
raw.filter()
, which is nice - but how would I compute them without having to filter data and copying the values from the console? -
I haven’t seen a method to calculate stopband attenuation and passband ripple in MNE. Did I miss it? Is there some straight forward way using scipy?
Does anyone besides me think that these outputs would be a nice addition to the raw.info
? Maybe providing filter information as a dictionary containing the meta data named above in addition to the frequencies which are the only thing that is specified currently … opinions?
Issue Analytics
- State:
- Created 5 years ago
- Comments:13 (13 by maintainers)
Top GitHub Comments
Reopening this since @bmaess brought up the idea again, and noted we should do this for IIR filters, as well.
… would be super cool if we had a function to automatically add a fully specified methods section report from filter settings 😃