Dear Alex,
I was wrong saying that the signal at the cut-off frequency is (always) removed. The SPM manual says: "The default high-pass filter cutoff is 128 seconds. Slow signal drifts with a period longer than this will be removed.", but from my experience I thought that SPM also removes the signal at the specified cut-off frequency. Now I have checked the SPM codes and it is confusing. In short: spm_filter.m does the high-pass filtering and K(s).HParam is the cut-off period in seconds (default 128). The latter is only used in the calculation of the order of the filter:
n = fix(2*(k*K(s).RT)/K(s).HParam + 1);
fix is the matlab's function that rounds towards zero. k is the number of time points/volumes, whereas K(s).RT is the repetition time. Because of the rounding it is difficult to say what is the effective cut-off. Whether signal corresponding to the specified cut-off frequency will be removed or not depends on the time length (number_of_volumes*TR). I think in FSL the specified cut-off is also the one that is effectively used, there is no rounding.
Maybe someone more experienced with high-pass filtering in SPM knows a way of specifying the cut-off when one wants to remove all signal of frequencies lower than 1/period but not 1/period?
Best,
Wiktor Olszowy
|