Why filter orders are always Even numbers?

19 Ansichten (letzte 30 Tage)
Krishna Ganesan
Krishna Ganesan am 24 Mär. 2020
Beantwortet: Sindhu Karri am 1 Apr. 2020
I designed a digital filter and while experimenting with the filter order, I came across the following warning when I use an odd filter order,
I read about the filter documentation that says,
b = firls(n,f,a) % Returns row vector b containing the n+1 coefficients of an order-n FIR filter.
% The frequency and amplitude characteristics of the resulting filter match those given by vectors f and a.
but nowhere it is mentioned that I should use an even number for a filter order.
I can ofcourse design my filter with an even order. But I wish to understand the warning.
I'm new to signal processing and any insights to help me understand the warning would be really helpful.

Antworten (1)

Sindhu Karri
Sindhu Karri am 1 Apr. 2020
According to my understanding when firls function is trying to calculate frequency response H(k) components depending on the given f,b values it is getting H(1) as non zero value but which should be zero value for the fir to be type 2 filter(odd order symmetric filter).So it is incrementing the order by 1 so that it becomes type 1 filter(even order symmetric filter) for which H(1) need not be zero.
For better understanding please refer to the table given at the end of the documentation

Community Treasure Hunt

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

Start Hunting!

Translated by