DSPRelated.com
Forums

DSP Riddle: Infinitely Narrow Notch Filter

Started by Andor May 19, 2006
Jani Huhtanen wrote:
> Randy Yates wrote: > > >>I think you did. >> >>--Randy > > > I second that. By the analogy, infinitely thin but infinitely wide hamburger > should indeed exist (at least in theory ;)) as well as there should exist a > DC level or a sine wave. Although this has little to do with the riddle at > hand. >
I never seen an infinitely wide hamburger, but I've seen a close approximation to an infinitely wide hamburger consumer. :-) Steve
robert bristow-johnson wrote:
> Andor wrote: > > > > is it possible to construct a causal and realizable n-th order IIR > > filter, where n > 1 is an integer, which acts as an infinitely narrow > > notch filter?
...
> from a Lebesgue measure POV, there is no difference betwee the > specification you made and one where H(w) = 1 for all w.
Hmmm... almost sad, this. Shuch a brilliantly constructed riddle. Such a concise solution. These kinds of things take all the fun out of solving puzzles. Oh well. Rune
robert bristow-johnson wrote:

> > Andor wrote: >> >> is it possible to construct a causal and realizable n-th order IIR >> filter, where n > 1 is an integer, which acts as an infinitely narrow >> notch filter? This filter must have frequency response >> >> H(w) = 1, for w =/= w0 >> = 0, for w == w0, >> >> for some arbitrary 0 < w0 < pi. >> >> Assume for the moment that the filter can be computed with infinite >> precision. > > you can get arbitrarily close for n=2. > > zeros = exp(&#4294967295;j*w0) > poles = (1-e)*exp(&#4294967295;j*w0) > > where 0 < e << 1. > > but, from a Lebesgue measure POV, there is no difference betwee the > specification you made and one where H(w) = 1 for all w. > > r b-j
Perhaps, but in "practice" there would be a difference. H(w) = 1, for all w, would not effect a sine wave (from +inf to inf) in anyway, where as the original definition (H(w)=/=0, for w0) would have filtered the sine wave out if the frequency would have been w0. I may have mistaken of course.. -- Jani Huhtanen Tampere University of Technology, Pori
I wrote:
> robert bristow-johnson wrote: > >> >> Andor wrote: >>> >>> is it possible to construct a causal and realizable n-th order IIR >>> filter, where n > 1 is an integer, which acts as an infinitely narrow >>> notch filter? This filter must have frequency response >>> >>> H(w) = 1, for w =/= w0 >>> = 0, for w == w0, >>> >>> for some arbitrary 0 < w0 < pi. >>> >>> Assume for the moment that the filter can be computed with infinite >>> precision. >> >> you can get arbitrarily close for n=2. >> >> zeros = exp(&#4294967295;j*w0) >> poles = (1-e)*exp(&#4294967295;j*w0) >> >> where 0 < e << 1. >> >> but, from a Lebesgue measure POV, there is no difference betwee the >> specification you made and one where H(w) = 1 for all w. >> >> r b-j > > Perhaps, but in "practice" there would be a difference. H(w) = 1, for all > w, would not effect a sine wave (from +inf to inf) in anyway, where as the > original definition (H(w)=/=0, for w0)
And this -------------^^^^^^^^^^^^^^^^^ was meant to be (H(w) = 0, for w=w0)
> would have filtered the sine wave > out if the frequency would have been w0. I may have mistaken of course.. > > >
I really have to start proof reading my posts some day. -- Jani Huhtanen Tampere University of Technology, Pori
Sukrut wrote:

> for a notch filter, > > H(ejw) = 0 > H(e-jw) = 0 > > zero at z = e+-jw > > pole infinitely close to the zero > at z = a * e+-jw > > where a -> 1, but a =/= 1 > > the filter transfer function would be > > H(z) = (z - e^jw) * (z - e^-jw) > ------------------------- > (z - a*e^jw) * (z - a*e^-jw) > > = z^2 - z * (2 cos w) + 1 > -------------------------- > z^2 - z * (2*a cos w) + a > > This is a causal filter and can be realized using a direct form > realization if a -> 1 can be realized > > As the filter can be computed with infinte precision, assuming that the > gainterm a -> 1 can be realized, > the filter is causal as well as realizable > > but, a -> 1 can't be realized in reality, which is an altogether > different question > > ---------------------------------------------------------------------------------------- > > Q: Why didnt i join this group before?
One doesn't join; one just hangs out. Welcome! 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;
That was my rationale as well.

And this isn't just nit-picking. I believe that this type
of analysis as applied to the riddle at hand is going
down the wrong road. (Although I can't offer anything
more, yet.)

--Randy

"Fred Marshall" <fmarshallx@remove_the_x.acm.org> wrote in message 
news:i-SdnVQ57M0DpfPZRVn-rg@centurytel.net...
> Here is a constructive method for thinking about it: > > I am speaking of discrete time / discrete frequency here. > Start with an all-pass frequency domain sequence of all 1's. > For ease of discussion, normalize as follows: > Assume the sample interval is 1 second and the length of the filter is N > samples/coefficients. > The frequency interval between samples is 1/N. > > Now, set a pair of frequency domain samples to zero as follows: > choose f0 per your specification > choose fs for the sampling radian frequency > find the index "k" of the frequency sequence that corresponds to f0<fs/2: > the unnormalized frequency interval is fs/N > f0 corresponds closest to the index k=ROUND[N*f0/fs] > Set F(k)=0 and F(N-k+2)=0 ... (and you worry about whether this is OK for > your index scheme starting at 1 or at zero).. > Compute the IFFT of the new sequence. > > Notice that you can only define the filter response on a discrete set of > frequencies spaced at fs/N. So, an infinitely narrow notch done this way > must have infinite N. Or, if your "infinity" is sufficient with N=10,000 > so be it. > > Also notice that the time domain filter that results has a spike or sample > of amplitude 1.0 at time=0 *minus* a cosine at w0 of amplitude 2/N. It's > that simple. > > So a perfect notch filter has an impulse response that is an impulse at > time=0 minus a cosine at w0 of amplitude 2/(infinity). > If your "infinity" is sufficient with N=10,000 then it would have > amplitude 2/10,000. > Clearly infinitely narrow notches take away infinitesimal energy! > > Interesting, eh? > > Fred
Gee, I'm a bit disappointed that there was no comment to this. As before, the narrower the notch, the smaller the amplitude affect on the filter unit sample response. Fred
Fred Marshall wrote:

> > "Fred Marshall" <fmarshallx@remove_the_x.acm.org> wrote in message > news:i-SdnVQ57M0DpfPZRVn-rg@centurytel.net... >> Here is a constructive method for thinking about it: >> >> I am speaking of discrete time / discrete frequency here. >> Start with an all-pass frequency domain sequence of all 1's. >> For ease of discussion, normalize as follows: >> Assume the sample interval is 1 second and the length of the filter is N >> samples/coefficients. >> The frequency interval between samples is 1/N. >> >> Now, set a pair of frequency domain samples to zero as follows: >> choose f0 per your specification >> choose fs for the sampling radian frequency >> find the index "k" of the frequency sequence that corresponds to >> f0<fs/2: >> the unnormalized frequency interval is fs/N >> f0 corresponds closest to the index k=ROUND[N*f0/fs] >> Set F(k)=0 and F(N-k+2)=0 ... (and you worry about whether this is OK >> for >> your index scheme starting at 1 or at zero).. >> Compute the IFFT of the new sequence. >> >> Notice that you can only define the filter response on a discrete set of >> frequencies spaced at fs/N. So, an infinitely narrow notch done this way >> must have infinite N. Or, if your "infinity" is sufficient with N=10,000 >> so be it. >> >> Also notice that the time domain filter that results has a spike or >> sample >> of amplitude 1.0 at time=0 *minus* a cosine at w0 of amplitude 2/N. It's >> that simple. >> >> So a perfect notch filter has an impulse response that is an impulse at >> time=0 minus a cosine at w0 of amplitude 2/(infinity). >> If your "infinity" is sufficient with N=10,000 then it would have >> amplitude 2/10,000. >> Clearly infinitely narrow notches take away infinitesimal energy! >> >> Interesting, eh? >> >> Fred > > Gee, I'm a bit disappointed that there was no comment to this. > > As before, the narrower the notch, the smaller the amplitude affect on the > filter unit sample response. > > Fred
OK, a comment. ;) Let H(w) be the frequency response of a causal notch filter with H(w) = 0, for w = w0 and H(w) = 1 for all other w. Let S(w) be the frequency response of a sine wave with frequency w0 (a comb of diracs, see e.g., http://www.cse.ucsc.edu/classes/cmpe163/Spring03/Lec23Ap.pdf). Convolving them yields H(w)S(w)=0 for all w, right (probably not :/)? This is because S(w)=0 for all w except w=w0 and H(w)=0 for w=w0). This multiplication involves infinities and as such is not well defined. However, the dirac delta should not have a finite energy after the multiplication and thus it seems that more than infinitesimal energy is taken. -- Jani Huhtanen Tampere University of Technology, Pori
Randy Yates wrote:

> So an infinitely-narrow spectrum is the same as no spectrum at all?
Yes, if it's bounded (if the flat hamburger has finite area). Martin -- Quidquid latine scriptum sit, altum viditur.
Fred Marshall wrote:

> I am speaking of discrete time / discrete frequency here.
You can't meaningfully use the phrase "infinitely narrow" if you're working on a grid. Alternatively, you might take the discrete spectrum to specify a continuous spectrum through circular sinc interpolation; but prescribing a zero at one grid point (and its images) will leave the continuous notch finitely wide. Martin -- Quidquid latine scriptum sit, altum viditur.