# Higher-order (Butterworth) filters

This is a general question, I am just trying to understand the concept. Why should we use higher-order filters, other than a 1st order (of any type for that matter, but we can keep the discussion to digital Butterworth filters). I understand that the phase shift reduces dominantly as the order increases, but is it the only advantage of increasing the order of the filter or is there any other?

Increasing the number of degrees of freedom with the order allows more flexibility in the overall design, to fulfill as much a possible wished properties: ripples in the pass-, stop-band, accomodate the need for fixed-length coefficients. The most notable is perhaps the sharpness of the transition between preserved and attenuated frequencies. It is useful to separate close frequency: for instance you may wish to filter a $51$ Hz sine, and keep a $50$ Hz one. Increasing the order can help you cut sharp between those two.

This is illustrated in the figure below, four Butterworth designs, same cutoff. Not only the transition is sharper, but the response in the band-pass, stop-band is flatter with increasing degrees, leading to either better amplitude preservation, or attenuation.

The price to pay are increasing issues in the filter stability as the order increases. This is what I get within Matlab with a 40th order filter:

• I am not so knowledgeable, but i will tell you my situation, which kind of contradicts your statement. I have designed a butter worth filter by placement of poles and zeros. That means user can select only the order of the filter and cut off frequency. This negates the freedom of more parameter, now how is higher order filter better than 1st order? Sorry if i sound very stupid. Sep 7, 2016 at 12:12
• @Aashu10 Not at all. Your question was about higher-order in general. Designing a generic filter may involve a lot of optimization. To help users, there exist "parameterized" filters, like Butterworth, Chebyshev, Elliptic. Less parameters, but order impacts the sharpness directly Sep 7, 2016 at 12:18
• So the only advantage in higher order in a generic filter is the sharpness of the slope like @Peter has demonstrated? Sep 7, 2016 at 12:20
• Thank you! You and peter explained better than my professors. Last question, the only disadvantage of going higher order is instability? If yes, what type of stability? Sep 7, 2016 at 12:35
• @LaurentDuval What are the axis in the stability plot?
– MBaz
Sep 7, 2016 at 13:32

If you want to increase the "selectivity" of your filter, I recommend to use a Papoulis-Legendre filter instead of Butterworth. It is the behaviour which present the sharpest slope at cut-off.

When a filter is used, we usually design a specific sort of filter: low pass, high pass, or bandpass. That design assumes an ideal filter that has unity gain in the passband and zero gain in the stop band.

Low order filters to not approximate that "brickwall" very well. Higher order filters do better.

See this page, which has this diagram showing the ideal lowpass filter and how higher orders approximate it better.

When you study the design of the filter and pole zero locations, did your professor point out that some of the pole locations are VERY close to the imaginary axis?

If so, then you might also realize that these poles represent VERY high Q circuit designs. If done using analog filters, then the practical issue is trying to realize high-Q circuit without oscillations. Nearly impossible with orders greater than 5.

If done using digital filters (which most certainly was done in the example of a 40th order filter), then the issue still comes down to stability - numerical answers tend to "blow-up".

Note that high-Q circuits amplify signals to very high values, thus S/N may become an issue, overall amplitude of signals, etc. Some of these issues can be mitigated by properly arranging the 2nd order sections, but life will not be easy. Also higher circuit complexity is going to cost you more overall.

I would study 2nd order circuits, because they really can outperform the 1st order ones by far and get you more or less all you need in most applications.

• See scipy.signal.sosfiltfilt for 2nd order filtering Aug 21, 2019 at 19:37