File Exchange

image thumbnail

Sinc filter

version 1.1.0.0 (715 KB) by Christopher Hummersone
Apply a near-ideal low- or band-pass filter.

16 Downloads

Updated 05 May 2018

GitHub view license on GitHub

NOTE: this function is now available from the IoSR Matlab Toolbox as iosr.dsp.sincFilter.
-------------------------
y = sinc_filter(x,Wn)
y = sinc_filter(x,Wn,N)
y = sinc_filter(x,Wn,N,dim)
y = sinc_filter(x,Wn,[],dim)
y = sinc_filter(x,Wn) applies a near-ideal low-pass or band-pass brickwall filter to the array x, operating along the first non-singleton dimension (e.g. down the columns of a matrix). The cutoff frequency/frequencies are specified in Wn. If Wn is a scalar, then Wn specifies the low-pass cutoff frequency. If Wn is a two-element vector, then Wn specifies the band-pass interval. Wn must be 0.0 < Wn < 1.0, with 1.0 corresponding to half the sample rate.

The filtering is performed by FFT-based convolution of x with the sinc kernel.

y = sinc_filter(x,Wn,N) allows the filter length to be specified. The default value is N=1025. The filter length is doubled in the band-pass case. In either case, if N is even the final filter length will be N+1.

y = sinc_filter(x,Wn,N,dim) applies the specified filter along the dimension dim.

y = sinc_filter(x,Wn,[],dim) applies the specified filter along the dimension dim using the default filter length.

Cite As

Christopher Hummersone (2020). Sinc filter (https://github.com/IoSR-Surrey/MatlabToolbox), GitHub. Retrieved .

Comments and Ratings (3)

David Leng

Thank you. David leng

Thank for your file, it have save me lot of time.

Fan D.Chen

This program is perfect, I have to say, thank you

Updates

1.1.0.0

Migrated to GitHub.

1.1.0.0

File now accepts an arbitrarily-sized array input x, and a corresponding input argument for specifying the dimension to operate along.

MATLAB Release Compatibility
Created with R2012b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Tags Add Tags