How to define cutoff freqeuncy when using rectwin for lowpass filtering?
4 views (last 30 days)
Show older comments
Hi, when perfoming lowpass filtering, how to choose the cut-off freqeuncy argument? Is it fc/fs/2 or fc/fs? fc is cut off frequency in Hz.
fs %------sampling frequency
fc_normaized = fc/fs/2;--------?
N = 1/fc_normalized;
h = rectwin(N);
ll
fs %------sampling frequency
fc_normaized = fc/fs%-----------------?
N = 1/fc_normalized;
h = rectwin(N);
1 Comment
Mathieu NOE
on 10 Jul 2023
Edited: Mathieu NOE
on 10 Jul 2023
usually we say that a cut off frequency is normalized vs the Nyquist frequency (which is fs/2)
so the right answer is : fc/(fs/2) = 2*fc/fs;
Answers (1)
Sai Pallav
on 13 Jul 2023
Hi,
As Mathieu mentioned in the comments cutoff frequency can be calculated using
cutoff = fc/(fs/2);
But rectwin is used for creating a window and it takes argument which specifies the length of the window. Refer rectwin documentation for more info.
Try a similar piece of code for creating a low-pass filter.
% Filter specifications
cutoff_frequency = 1000; % Desired cutoff frequency in Hz
filter_order = 50;
% Calculate window length
window_length = filter_order + 1;
% Generate rectangular window
window = rectwin(window_length);
% Normalize the window
window = window / sum(window);
% Generate ideal low pass filter coefficients
filter_coefficients = fir1(filter_order, cutoff_frequency/(fs/2), 'low');
% Apply the window to the filter coefficients
filtered_coefficients = filter_coefficients .* window;
0 Comments
See Also
Categories
Find more on Bartlett in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!