How can I normalize my filter?
이전 댓글 표시
Hi,
I am applying a low pass filter to my signal and I should make sure the transfer function of my filter is one. How can I check it?
If the filter is not normalized, how can I normalize it?
I am learning about filters and I appreciate any help.
%lowpass filter
sig = MY SIGNAL;
sig_length = 5000001; % my signal length
fs = 1e13 % sampling rate
fc = 3e9; % cutt off frequency
order = 4;
wo = 2*pi*fc;
[z,p,k] = besself(order, wo,'low'); % zero, pole and gain form
% Convert to digital fileter
[zd,pd,kd] = bilinear(z,p,k,fs); % z-domain zero/pole/gain
[sos,g] = zp2sos(zd,pd,kd); % convert to second order section
filteredSignal = filtfilt(sos, g, sig);
댓글 수: 5
Star Strider
2022년 3월 30일
It is generally not possible to convert a Bessel filter to a discrete version.
From the documentation:
‘The besself function does not support the design of digital Bessel filters.’
Compare it with the transfer function version of the analogue filter with freqs.
.
Star Strider
2022년 4월 4일
편집: Star Strider
2022년 4월 4일
I do not advise using a Bessel filter as a discrete filter for the reasons I previously stated.
‘So, is it wrong if I use bessel filter for my simulation?’
Yes.
Use any other design and then use filtfilt to do the actual filtering. since it will make all discrete filter realisations have a phase-neutral response.
EDIT — See the Digital section of the Wikipedia article on the Bessel filter for an appropriate discussion.
Amy Lg
2022년 4월 6일
Star Strider
2022년 4월 7일
Right.
In spite of everything I wrote in my answer (now deleted) and the observation in the Wikipedia article (and every signal processing textbook I consulted on this), you are still going to try to use the bilinear function to discretise a Bessel filter!
That is not going to work, and no amount of wishful thinking on your (or anyone else’s) part is ever going to make it work!
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Analog Filters에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



