DSPRelated.com
Forums

Stability of IIR Filters

Started by Randy Yates December 5, 2015
Tim Wescott  <Tim@seemywebsite.com> writes:

> Randy Yates <yates@digitalsignallabs.com> Wrote in message: >> Tim Wescott <tim@seemywebsite.com> writes: >> >>> On Fri, 04 Dec 2015 23:07:05 -0500, Randy Yates wrote: >>> >>>> Folks, >>>> >>>> First let me ask this: Does the Fs/2-wide sinc function, interpolating >>>> at some fractional sample offset, have a z-transform? I don't think so, >>>> but I thought I'd verify. >>> >>> If it's a sinc in time, it would be sinc(<mumble-mumble>k)/z^k, wouldn't >>> it? Presumably if you have a fractional shift there would still be some >>> closed-form function you could write. >>> >>>> Now it can be shown that a fractionally interpolating sinc function can >>>> generate an infinite output with bounded input. This is commonly >>>> described as an unstable filter. BI does not imply BO. >>> >>> Are you implying that only straight people start to smell after a >>> while? >> >> <snicker> >> >>> A sinc filter is still BIBO stable. Having an infinite response doesn't >>> mean something isn't BIBO stable. >> >> Er, what?!!!!? >> > > Oops. Having a response that's infinite in time doesn't make > something unstable. Better?
Tim, Oh, well yes, sure. But a sinc is not BIBO stable. I'll have to search for it, but I proved that (here on comp.dsp) quite a few years back. Namely, I proved that with a bounded input, the sinc filter can produce an infinite output, at least at one point in time. -- Randy Yates, DSP/Embedded Firmware Developer Digital Signal Labs http://www.digitalsignallabs.com
Tim Wescott <tim@seemywebsite.com> writes:

> On Fri, 04 Dec 2015 23:07:05 -0500, Randy Yates wrote: >> Asked another way, consider an analog (continuous-time) signal that >> blows up at some point in time t_bu, but is finite otherwise. Assume we >> sample that signal with a sample phase that avoids t_bu. Then the >> resulting digital signal is bounded, right? > > Ah ha -- I can see the error in your thinking from here. If you can > straddle the point where it "blows up" then you are, ipso facto, sampling > too slowly.
Nope. Try this gedanken: Take a specific bounded (input) sequence which causes a T/2 fractional sinc filter to blow up. (I can provide just such a sequence). Convert that to the ideal analog signal using the ideal interpolating filter (i.e., the sinc() function). Then sample that. You will get the original sequence, no?
>> But >> if we convert that signal back to continuous-time using the ideal >> interpolator, can we say the resulting continuous-time signal is also >> bounded? > > Yes.
Oh, well that settles it! If Tim Wescott says so, it MUST be true! :) -- Randy Yates, DSP/Embedded Firmware Developer Digital Signal Labs http://www.digitalsignallabs.com
Oops I meant sign(sinc()) not abs(sinc)). When you apply sign(sinc()) you end up with one sample whose output is the sum of the abs of all the sinc values, which does not converge. 

On Sat, 05 Dec 2015 19:44:27 +0300, Evgeny Filatov wrote:

> On 05.12.2015 19:31, Tim Wescott wrote: >> radams2000@gmail.com Wrote in message: >>> It's true that if you apply abs(sinc(x)) as an input to a sinc filter >>> you will get an unbounded output but only when the alignment between >>> input and filter taps is in a certain range. So like you say it's >>> infinite for a short time but then comes back to earth again. My >>> understanding of an unstable filter is that the output continues to >>> grow after the input goes to zero, which implies a pole in the RHP or >>> outside the unit circle. So I don't know that I would call this an >>> unstable filter. >>> >>> >>> Bob >>> >>> >> Nope. Sinc (p*n) has a finite sum, so its response to any >> all-positive sequence will be finite. >> >> > Kinda like Dirichlet's test?
Yes. I had to look it up, but yes. I'm pretty sure that a sinc filter has a finite response for _any_ input sequence, but I'm not sure I want to do the math right now. -- www.wescottdesign.com
On Sat, 05 Dec 2015 11:50:24 -0500, Randy Yates wrote:

> Tim Wescott <Tim@seemywebsite.com> writes: > >> Randy Yates <yates@digitalsignallabs.com> Wrote in message: >>> Tim Wescott <tim@seemywebsite.com> writes: >>> >>>> On Fri, 04 Dec 2015 23:07:05 -0500, Randy Yates wrote: >>>> >>>>> Folks, >>>>> >>>>> First let me ask this: Does the Fs/2-wide sinc function, >>>>> interpolating at some fractional sample offset, have a z-transform? >>>>> I don't think so, >>>>> but I thought I'd verify. >>>> >>>> If it's a sinc in time, it would be sinc(<mumble-mumble>k)/z^k, >>>> wouldn't it? Presumably if you have a fractional shift there would >>>> still be some closed-form function you could write. >>>> >>>>> Now it can be shown that a fractionally interpolating sinc function >>>>> can generate an infinite output with bounded input. This is commonly >>>>> described as an unstable filter. BI does not imply BO. >>>> >>>> Are you implying that only straight people start to smell after a >>>> while? >>> >>> <snicker> >>> >>>> A sinc filter is still BIBO stable. Having an infinite response >>>> doesn't mean something isn't BIBO stable. >>> >>> Er, what?!!!!? >>> >>> >> Oops. Having a response that's infinite in time doesn't make >> something unstable. Better? > > Tim, > > Oh, well yes, sure. But a sinc is not BIBO stable. I'll have to search > for it, but I proved that (here on comp.dsp) quite a few years back. > Namely, I proved that with a bounded input, the sinc filter can produce > an infinite output, at least at one point in time.
I'd be interested in seeing the proof if you can dig it out. -- www.wescottdesign.com
On Sat, 05 Dec 2015 11:53:27 -0500, Randy Yates wrote:

> Tim Wescott <tim@seemywebsite.com> writes: > >> On Fri, 04 Dec 2015 23:07:05 -0500, Randy Yates wrote: >>> Asked another way, consider an analog (continuous-time) signal that >>> blows up at some point in time t_bu, but is finite otherwise. Assume >>> we sample that signal with a sample phase that avoids t_bu. Then the >>> resulting digital signal is bounded, right? >> >> Ah ha -- I can see the error in your thinking from here. If you can >> straddle the point where it "blows up" then you are, ipso facto, >> sampling too slowly. > > Nope. Try this gedanken: Take a specific bounded (input) sequence which > causes a T/2 fractional sinc filter to blow up. (I can provide just such > a sequence). Convert that to the ideal analog signal using the ideal > interpolating filter (i.e., the sinc() function). Then sample that. You > will get the original sequence, no? > >>> But if we convert that signal back to continuous-time using the ideal >>> interpolator, can we say the resulting continuous-time signal is also >>> bounded? >> >> Yes. > > Oh, well that settles it! If Tim Wescott says so, it MUST be true! > :)
Yup. And I say it, so it MUST be true! -- www.wescottdesign.com
On Sat, 05 Dec 2015 11:47:33 -0600, Tim Wescott wrote:

> On Sat, 05 Dec 2015 19:44:27 +0300, Evgeny Filatov wrote: > >> On 05.12.2015 19:31, Tim Wescott wrote: >>> radams2000@gmail.com Wrote in message: >>>> It's true that if you apply abs(sinc(x)) as an input to a sinc filter >>>> you will get an unbounded output but only when the alignment between >>>> input and filter taps is in a certain range. So like you say it's >>>> infinite for a short time but then comes back to earth again. My >>>> understanding of an unstable filter is that the output continues to >>>> grow after the input goes to zero, which implies a pole in the RHP or >>>> outside the unit circle. So I don't know that I would call this an >>>> unstable filter. >>>> >>>> >>>> Bob >>>> >>>> >>> Nope. Sinc (p*n) has a finite sum, so its response to any >>> all-positive sequence will be finite. >>> >>> >> Kinda like Dirichlet's test? > > Yes. I had to look it up, but yes. > > I'm pretty sure that a sinc filter has a finite response for _any_ input > sequence, but I'm not sure I want to do the math right now.
Oops -- no, I'm wrong. Feed sign(sinc) into a sinc filter and it has at least one infinity. Thank you radams. Good thing I wasn't jumping up and down and insisting I was right. -- www.wescottdesign.com
On 05.12.2015 20:47, Tim Wescott wrote:

>> Kinda like Dirichlet's test? > > Yes. I had to look it up, but yes. > > I'm pretty sure that a sinc filter has a finite response for _any_ input > sequence, but I'm not sure I want to do the math right now. >
I admit that I looked it up, too. My question was not to show off but to find out if that's it or whether a stronger statement was implied. Thanks! -- Evgeny.
On 2015-12-05 18:49, Tim Wescott wrote:
[...]
>> Oh, well yes, sure. But a sinc is not BIBO stable. I'll have to search >> for it, but I proved that (here on comp.dsp) quite a few years back. >> Namely, I proved that with a bounded input, the sinc filter can produce >> an infinite output, at least at one point in time. > > I'd be interested in seeing the proof if you can dig it out.
Could it be using an input signal like: -sgn(sinc) ? bye, -- piergiorgio
See the section on Stability here:

https://en.wikipedia.org/wiki/Sinc_filter

--Randy

Randy Yates <yates@digitalsignallabs.com> writes:

> Tim Wescott <tim@seemywebsite.com> writes: > >> On Fri, 04 Dec 2015 23:07:05 -0500, Randy Yates wrote: >>> Asked another way, consider an analog (continuous-time) signal that >>> blows up at some point in time t_bu, but is finite otherwise. Assume we >>> sample that signal with a sample phase that avoids t_bu. Then the >>> resulting digital signal is bounded, right? >> >> Ah ha -- I can see the error in your thinking from here. If you can >> straddle the point where it "blows up" then you are, ipso facto, sampling >> too slowly. > > Nope. Try this gedanken: Take a specific bounded (input) sequence > which causes a T/2 fractional sinc filter to blow up. (I can provide > just such a sequence). Convert that to the ideal analog signal using > the ideal interpolating filter (i.e., the sinc() function). Then sample > that. You will get the original sequence, no? > >>> But >>> if we convert that signal back to continuous-time using the ideal >>> interpolator, can we say the resulting continuous-time signal is also >>> bounded? >> >> Yes. > > Oh, well that settles it! If Tim Wescott says so, it MUST be true! > :)
-- Randy Yates, DSP/Embedded Firmware Developer Digital Signal Labs http://www.digitalsignallabs.com