Normalization of a given filter to have unity gain at DC

Hello everyone,
As the title says, I should find a general way to normalize some filters to have unity gain at DC. My filters are an Hanning window (note that b/d and a/c are the vectors in which are reported the coefficients of, respectively, numerator and denominator of the transfer function of the filters)
b = [0.25 0.5 0.25];
a = [1 0 0];
And a derivative-based filter:
d = [1 -1];
c = [1 -0.95]
Any help will be greatly appreciated.

 채택된 답변

Honglei Chen
Honglei Chen 2013년 10월 8일

0 개 추천

I don't quite understand your question. For example, in your filter formed by d and c, it has a null at DC, how do you expect it to have a unit gain at DC?
In general, if you have filter coefficients b and a, the DC gain is given by sum(b)/sum(a). You can just scale the filter response accordingly.

댓글 수: 1

Yes, what you said is correct. In fact, I resolved my issue by just scaling:
[h,w] = freqz(b,a,500,1000); %frequency response of the filter H = b/a
scale = 1/max(abs(h)); %scaling factor
b = b*scale; %scale*H
Thank you for your answer!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

커뮤니티

더 많은 답변 보기:  Power Electronics Community

카테고리

질문:

2013년 10월 7일

댓글:

2013년 10월 8일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by