DSPRelated.com
Forums

All Pole Transfer Functions

Started by Safwan 2 years ago10 replieslatest reply 2 years ago416 views

Hello All,  I think I developed a method for obtaining IIR  low-pass filters. It relies on all-pole z-domain transfer functions. The design is directly made in the z-domain, without using the bi-linear transformation. The simplest filter in this class is the two-pole resonator section, having the well-known transfer function                     

                              two pole_60949.png

with 0<a<1  for stability, and  an empirically set flat-pass-band constraint 

relation_60446.png

This produces low pass filters that might not be optimal for signal processing requiring well defined bands. However it might be suitable as a low delay signal smoother.  Magnitude and group delay are shown below (for the normalised version of the transfer function )

                                  norm_52708.png

                     mag_97700.pnggd_95449.png

 I make this post so that this information might be useful to someone. Also to check to see if anyone had produced this result before.

My full paper is available here:  https://www.researchgate.net/publication/360614264...

or:  DOI: 10.13140/RG.2.2.12181.60647

Thank you


[ - ]
Reply by neiroberMay 15, 2023

Hi Safwan,

Thanks for your interesting post.  I tried comparing your 2nd order all-pole with a = 0.8 and phi= .226  to a 2nd order Butterworth with fc = .05 fs, see plots.

You chose the values of "a" and "phi" for maximum response flatness, so your magnitude response should approximate a butterworth response in the passband, which is indeed the case.  

Comparing the denominator coefficients, your filter's coefficients are very close to the butterworth coefficients.  So one could derive your filter from a butterworth by removing the zeros.

The group delay flatness of the all-pole filter is also approximately the same as the butterworth, and the overall delay is approximately one sample less.  As you mentioned, the all-pole does not roll off as fast as the filter with zeros.

I computed the butterworth coeffs were using the Matlab function

 [b,a]= butter(2,fc/.5), where fc = .05.

regards,

Neil

fig1_77911.png

Magnitude responses  blue = all-pole, red = butterworth, fc = .05*fs


fig2_82691.png

Group delay.  blue = all-pole, red = butterworth, fc = .05*fs

[ - ]
Reply by SafwanMay 15, 2023

Hi Neil,

Thank you so much for taking the time to check the filter vs. the standard Butterworth. You simulation is very clear and your conclusion makes a lot of sense. This clearly helps classify this two-pole transfer function. I wonder if the slightly reduced group delay offers any real advantage.

One might think that higher order all-pole filters like the four-pole discussed in the article ought be a kind of a cascade of such Butterworth filters - except that the empirical criteria for setting quasi-flat passbands are not unique. Strict flatbands need not be adhered to, allowing for some oscillations in the passbands instead. The roll-off improves with increasing order, as expected. 

I am indeed grateful 

Safwan

[ - ]
Reply by neiroberMay 15, 2023

By the way, I wrote a post "Second Order Discrete-Time System Demonstration" that might interest you.

--Neil

[ - ]
Reply by SafwanMay 15, 2023

Thanks Neil, I will surely take a look.

[ - ]
Reply by SafwanMay 15, 2023

I read and downloaded your post "Second Order Discrete-Time System Demonstration". It makes the subject so much more approachable to those not familiar with it, or those who, like myself, have been away from it for so long.  But reading it made me wonder what would be the analog system counterpart to the two-pole discussed in my post (I am not good at doing a reverse bilinear transformation.) The frequency response of the analog two-pole Butterworth is similar to the discrete one. But the bi-linear transformation always adds two zeros away from z=0. 


Safwan

[ - ]
Reply by neiroberMay 15, 2023

Good question -- I don't know the answer offhand.  Of course, a 2nd order LC all-pole lowpass filter would not qualify because it has two zeros at infinity.

Neil

[ - ]
Reply by CharlieRaderMay 15, 2023

Safwan, I'm sorry if this is a rather picky point, but what you refer to as an all-pole filter has two zeroes at z=0.  Multiply numerator and denominator of H(z) by the same quantity z^2.

[ - ]
Reply by SafwanMay 15, 2023

CharlieRader, thanks for your reply. You're right of course. But this does not detract the uniqueness of H(z) due to the perfect pole-zero cancellation of these extra roots at all frequencies. Maybe I should have called it "an all-pole effective transfer function". This would be the transfer function to be implemented in the difference equation and in circuit implementation. Thank you.

Safwan

[ - ]
Reply by CharlieRaderMay 15, 2023

I think what you mean to say is that the extra zeroes at z=0 do no affect the magnitude of the frequency response, contribute only a linear phase.

[ - ]
Reply by SafwanMay 15, 2023

Dear CharlieRader, I stand corrected. I did not see your point initially. The two zeros in the numerator will add a linear phase shift. Apologies for my earlier reply.