sfbandpass implements bandpass filtering using the Butterworth algorithm.
The desired bandwidth is specified by low and high frequencies (in Hertz) flo= and fhi=. A continuous low-pass Butterworth filter is given by
The actual filtering is implemented by recursive (Infinite Impulse Response) convolution in the time domain. The number of poles (
The following example from sep/pwd/hector shows a land shot gather after linear moveout and low-pass filtering that isolates ground-roll noise.
By default, the applied filter has zero phase. To use a minimum-phase filter, use phase=y. This is the option used in the Madagascar test example from rsf/rsf/test
An alternative way to implement bandpass filtering is using the Fourier transform and tapering functions in the Fourier domain. One example of this approach is provided by sferf.