DSPRelated.com
Forums

FIR roots and frequency response

Started by Bob Cain February 13, 2004
Ronald H. Nicholson Jr. wrote:

> In article <40321b52$0$3084$61fed72c@news.rcn.com>, > Jerry Avins <jya@ieee.org> wrote: > >>Bob Cain wrote: >> ... >> >>> ... I do understand Ronald's explanation and see that >>>(since I'm only thinking now about FIR's) the placement of the zeros >>>inside or outside determine whether the integral of the total of the >>>contributions of all the zeros can only be a multiple of 2*pi if they >>>are all inside but I'm still not making the connection as to why that >>>would cause the energy in an impulse response to all bunch up at the >>>start when it's minimum phase and what is really being minimized if I >>>look at just the usual (unwraped) phase plot (assuming it even shows up >>>there.)
...
>>Adding phase shift implies adding or subtracting time. In real life, >>subtracting isn't possible, so extra phase shift means extra delay. > > > Here's another "hand-wavey" one: > > Consider the unit delay. That's a zero at the origin. It's phase > response will spiral by 2*pi per trip around the unit cylindar. > The phase response of an N unit delay line will spiral by 2*pi*N. > Wave hands: > The more any arbitrary frequency response in the z plane "resembles" > one of these spirals, the more the time response will "resemble" a > delay line of N taps. A minimum phase filter is the one closest to > "resembling" a zero-delay delay line.
It just goes to show: when an idea is sound, it hangs together from any angle. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
"Bob Cain" <arcane@arcanemethods.com> wrote in message
news:c0s60402rrh@enews3.newsguy.com...
> Actually, I've always thought [...] > From what I'm reading in the thread I'm still not sure > whether that is right or dead wrong. :-)
Yes, what you say works fine if you measure log amplitude, and the deformations sum.
> Now I am trying to understand how the phase function varies > as you traverse that circle. [...] I'm still not making the > connection as to why that would cause the energy in an > impulse response to all bunch up at the start when it's > minimum phase [...]
The easiest explantion is in tems of impulse responses. The impulse response for the filter is the convolution of the impulse responses for all the poles and zeros. Swapping any zero outside the unit circle for the matching one inside the unit circle will pack more of the impulse response near t=0, because the impulse response for that zero will be packed more towards t=0, and that is easy to see, because H(z) for a single-zero FIR is zero at z=-h[1]/h[0].
>and what is really being minimized if I look > at just the usual (unwraped) phase plot (assuming it even > shows up there.)
Now that's an interesting question that I would like the answer to as well. In particular, knowing that a filter is minimum phase for a particlar magnitude response doesn't convince me that there isn't a *nearly identical* magnitude response with a minimum phase filter that is *much* more concentrated towards t=0. I would be very happy to have a conclusive demonstration of that.
Matt Timmermans wrote:

> "Bob Cain" <arcane@arcanemethods.com> wrote in message > news:c0s60402rrh@enews3.newsguy.com... > >>Actually, I've always thought [...] >> From what I'm reading in the thread I'm still not sure >>whether that is right or dead wrong. :-) > > > Yes, what you say works fine if you measure log amplitude, and the > deformations sum. > > >>Now I am trying to understand how the phase function varies >>as you traverse that circle. [...] I'm still not making the >>connection as to why that would cause the energy in an >>impulse response to all bunch up at the start when it's >>minimum phase [...] > > > The easiest explantion is in tems of impulse responses. The impulse > response for the filter is the convolution of the impulse responses for all > the poles and zeros. Swapping any zero outside the unit circle for the > matching one inside the unit circle will pack more of the impulse response > near t=0, because the impulse response for that zero will be packed more > towards t=0, and that is easy to see, because H(z) for a single-zero FIR is > zero at z=-h[1]/h[0]. > > >>and what is really being minimized if I look >>at just the usual (unwraped) phase plot (assuming it even >>shows up there.) > > > Now that's an interesting question that I would like the answer to as well. > In particular, knowing that a filter is minimum phase for a particlar > magnitude response doesn't convince me that there isn't a *nearly identical* > magnitude response with a minimum phase filter that is *much* more > concentrated towards t=0. I would be very happy to have a conclusive > demonstration of that.
Since the minimum-phase frequency and phase responses are a Hilbert transform pair, it seems to me that greatly affecting one can't affect the other only a little. Of course, the back of my envelope is rather smudged tonight. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Jerry Avins <jya@ieee.org> writes:

> Matt Timmermans wrote: > > > Now that's an interesting question that I would like the answer to as well. > > In particular, knowing that a filter is minimum phase for a particlar > > magnitude response doesn't convince me that there isn't a *nearly identical* > > magnitude response with a minimum phase filter that is *much* more > > concentrated towards t=0. I would be very happy to have a conclusive > > demonstration of that. > > Since the minimum-phase frequency and phase responses are a Hilbert > transform pair, it seems to me that greatly affecting one can't affect > the other only a little. Of course, the back of my envelope is rather > smudged tonight.
Another observation is that the overall energy of the *much* more bunched filter cannot be different from the minimum phase original (by Parseval's theorem). I suspect you could probably extend that to an argument showing that the "energy delay" (see Oppenheim and Schafer, 1989, prob 5.36) of each cannot be significantly different. Ciao, Peter K. -- Peter J. Kootsookos "I will ignore all ideas for new works [..], the invention of which has reached its limits and for whose improvement I see no further hope." - Julius Frontinus, c. AD 84
Matt Timmermans wrote:

> "Bob Cain" <arcane@arcanemethods.com> wrote in message > news:c0s60402rrh@enews3.newsguy.com... > >>Actually, I've always thought [...] >> From what I'm reading in the thread I'm still not sure >>whether that is right or dead wrong. :-) > > > Yes, what you say works fine if you measure log amplitude, and the > deformations sum.
Ah, yes, the log. That clears up another question I now need not ask.
> > > The easiest explantion is in tems of impulse responses. The impulse > response for the filter is the convolution of the impulse responses for all > the poles and zeros. Swapping any zero outside the unit circle for the > matching one inside the unit circle will pack more of the impulse response > near t=0, because the impulse response for that zero will be packed more > towards t=0, and that is easy to see, because H(z) for a single-zero FIR is > zero at z=-h[1]/h[0].
Is there a nice interactive pole/zero placement tool (for Win98se or Java) that will show the impulse response, magnitude, and phase plots as you place them on the z-plane (the ability to mirror zeros about the unit circle would be handy too)?
> > Now that's an interesting question that I would like the answer to as well. > In particular, knowing that a filter is minimum phase for a particlar > magnitude response doesn't convince me that there isn't a *nearly identical* > magnitude response with a minimum phase filter that is *much* more > concentrated towards t=0. I would be very happy to have a conclusive > demonstration of that.
If you get further insight on that, please share it. Thanks, Bob -- "Things should be described as simply as possible, but no simpler." A. Einstein
Bob Cain wrote:

   ...


> Is there a nice interactive pole/zero placement tool (for Win98se or > Java) that will show the impulse response, magnitude, and phase plots as > you place them on the z-plane (the ability to mirror zeros about the > unit circle would be handy too)?
... Try http://www.eas.asu.edu/~midle/jdsp/JDSP/Demo_3_polezero.html. It may work for you. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
Jerry Avins wrote:

> Bob Cain wrote: > >> Is there a nice interactive pole/zero placement tool (for Win98se or >> Java) that will show the impulse response, magnitude, and phase plots >> as you place them on the z-plane (the ability to mirror zeros about >> the unit circle would be handy too)? > > Try http://www.eas.asu.edu/~midle/jdsp/JDSP/Demo_3_polezero.html. It may > work for you.
Very cool. Thanks, Jerry. Bob -- "Things should be described as simply as possible, but no simpler." A. Einstein
In article <4032c743$0$3094$61fed72c@news.rcn.com>,
Jerry Avins  <jya@ieee.org> wrote:
>Ronald H. Nicholson Jr. wrote: > >> In article <40321b52$0$3084$61fed72c@news.rcn.com>, >> Jerry Avins <jya@ieee.org> wrote: >> >>>Bob Cain wrote: >>> ... >>> >>>> ... I do understand Ronald's explanation and see that >>>>(since I'm only thinking now about FIR's) the placement of the zeros >>>>inside or outside determine whether the integral of the total of the >>>>contributions of all the zeros can only be a multiple of 2*pi if they >>>>are all inside but I'm still not making the connection as to why that >>>>would cause the energy in an impulse response to all bunch up at the >>>>start when it's minimum phase and what is really being minimized if I >>>>look at just the usual (unwraped) phase plot (assuming it even shows up >>>>there.) > > ... > >>>Adding phase shift implies adding or subtracting time. In real life, >>>subtracting isn't possible, so extra phase shift means extra delay. >> >> >> Here's another "hand-wavey" one: >> >> Consider the unit delay. That's a zero at the origin. It's phase >> response will spiral by 2*pi per trip around the unit cylindar. >> The phase response of an N unit delay line will spiral by 2*pi*N. >> Wave hands: >> The more any arbitrary frequency response in the z plane "resembles" >> one of these spirals, the more the time response will "resemble" a >> delay line of N taps. A minimum phase filter is the one closest to >> "resembling" a zero-delay delay line. > >It just goes to show: when an idea is sound, it hangs together from any >angle.
Actually, I think I lost a minus sign, or confused a pole for a zero somewhere in my analogies. I may have to do a rewrite after more coffee. (or maybe less coffee :) IMHO. YMMV. -- Ron Nicholson rhn AT nicholson DOT com http://www.nicholson.com/rhn/ #include <canonical.disclaimer> // only my own opinions, etc.
rhn@mauve.rahul.net (Ronald H. Nicholson Jr.) wrote in message news:<c0jn3f$6dn$1@blue.rahul.net>...
> In article <c0holl016fs@enews1.newsguy.com>, > Bob Cain <arcane@arcanemethods.com> wrote: > >>>I understand that the magnitude of the frequency response of > >>>an FIR filter is the intersection of a tube going down > >>>through the unit circle with the curvaceous surface created > >>>by the placement of the zeros of its roots. > ... > >>>Is there also a simple visualization of the phase of the > >>>frequency response that's related to the zero placement? > ... > >I'm trying to visualize how reflecting a zero from outside > >to inside the unit circle causes the phase function to > >become closer to zero everywhere. Actually I'm trying to > >understand just what it is that's minimized in minimum phase > >filters. If that's not it, please enlighten me. > > The location of both the poles and the zeros is important. Imagine a > crank handle at the location of every pole or zero on the complex > plane. These crank handles are attached to rotation counters (funny > counters that count by 2*pi instead of just once per revolution). > The counters count up for zeros, but count down for poles. Every crank > handle is automated to aim at where you are standing on the a unit circle > (perhaps operated by little demons who are tired of playing with all > those doors over in the thermodynamics lab). > > First consider a single pole or zero. If it's inside the unit circle then > the counter will count up or down an entire 2*pi every time you complete > a walk around the entire circle. If the pole or zero is outside the unit > circle (say far away) then the handle may only wiggle back and forth, > but never move in a complete revolution, no matter how many times you > walks around in unit circles. > > Consider not just one pole or zero, but the sum of several. Say you > are plotting the sum of all the rotation counters on the cylinder > wall as you take a walk around the unit circle. Unless you have > a handy time machine, all the poles will be inside the unit circle. > So for every trip around, the sum will go down by 2*pi*number_of_poles. > If all the zeros are also inside the unit circle the the sum will go up > by 2*pi*number_of_zeros. If the the number of poles is the same as the > number of zeros, then the sum will be zero after a round trip, which is > usually considered a fairly small value. > > But if some of the zeros are outside the unit circle, and you have the > same number of zeros as poles (why?), then the sum of the positive and > negative counters will not cancel after one round trip. The sum > will continue to diverge as you walk around and around the unit circle, > and you will eventually need a ladder to keep plotting points. For > some reason, this ever-rising curve is unlikely to be called "minimum". > > An interesting question might be whether, if you actually came across > a working handy-dandy (z^+1) time machine, and could move some of the > poles outside the unit circle, would a minimum phase design also require > moving an equal number of zeros outside? > > Whether or not these demons standing on a complex plane and operating > funny crank handles with counters attached has anything to do with > frequency response, and if so under what conditions, is left as an > exercise for the student. > > > IMHO. YMMV.
This explanation is fine for IIR's but doesn't work for FIR's because FIR's don't have any poles, only zeros. Do you have a similarly clear explanation for FIR's? Regards, Pavo Jumppanen Author of Har-Bal Harmonic Balancer http://www.har-bal.com
"Peter J. Kootsookos" <p.kootsookos@remove.ieee.org> wrote in message
news:s68znbh3qdi.fsf@mango.itee.uq.edu.au...
> Another observation is that the overall energy of the *much* more > bunched filter cannot be different from the minimum phase original (by > Parseval's theorem). > > I suspect you could probably extend that to an argument showing that > the "energy delay" (see Oppenheim and Schafer, 1989, prob 5.36) of > each cannot be significantly different.
Any argument along these lines, or Jerry's, to which you replied, would need some subtle refinement to avoid arguing against the existence of the non-minimum phase filters we can make just by flipping zeros outside the unit circle, as well as good linear phase FIR approximations to minimum phase responses. And if we truncate a minimum phase IIR to make a FIR, trading the poles for a bunch of zeros, do we really expect the result to be minimum phase? If not, then couldn't flipping all the outer zeros into the unit circle significantly change the impulse response, making it more concentrated towards 0, even though the frequency response hasn't changed much?