Reply by Rick Lyons June 22, 20132013-06-22
On Thu, 20 Jun 2013 15:53:32 -0700, robert bristow-johnson
<rbj@audioimagination.com> wrote:

      [Snipped by Lyons]
>> >> so Rick, is it considered "good" that your differentiator gain starts to >> dive toward zero after you get to pi/4 (or 1/2 Nyquist)? it seems to me >> that the simple forward difference differentiator does much better in >> that regard.
Hi Robert, Well, one characteristic of the forward difference differentiator is that it amplifies high frequency noise. So my differentiator's response goes to zero at Fs/2 to eliminate that characteristic. (Fs is the sample rate in Hz.) I always get confused when people use the term "Nyquist" when referring to frequency. I'm often unsure of what they mean. Above you equate pi/4 to 1/2 Nyquist. It seems to me that pi --> Fs/2, pi/2 --> Fs/4, and pi/4 --> Fs/8.
>> >> i am in need of a decent differentiator and when i think of applying the >> bilinear transform (BLT) directly to the problem: >> >> H(z) = 2*(1 - z^-1)/(1 + z^-1) >> >> because of BLT frequency warping, the gain shoots up to +inf at Nyquist >> (small wonder since there is a pole directly on z=-1), which is too much >> correction (the opposite problem of Rick's differentiator).
Yep, that transfer function makes for a great oscillator at Fs/2.
>>i would >> really like to do this with a first order filter and i think if we can >> just back off on that nasty quasi-stable pole: >> >> H(z) = 2*(1 - z^-1)/(1 - p*z^-1) >> >> we can get something that might work pretty good. pole p would be close >> to -1, but clearly inside the unit circle. >> >> has anyone tried this (the latter transfer function) and what value of p >> had you used? >> >> please get back in a hurry to prevent me from re-inventing the wheel. if >> i end up reinventing the blankity-blank wheel, i'll tell you how round i >> got it to be. >> > >okay, so i got this wheel (actually 2 of them). > >if you use the simple transfer function above (the scaling of 2 doesn't >matter, comes from the BLT), i figgered out that if you want the gain at >Nyquist to be exactly twice the gain at half Nyquist, you want the pole >p to be at p = -0.267949192.
For p = -0.267949192 I get: Freq: Gain: Fs/2 5.464 Fs/4 2.732 Fs/8 1.27
> >or, if you want the gain at 1/2 Nyquist to be exactly twice the gain at >1/4 Nyquist, then the pole should be p = -0.694566677 .
For p = -0.694566677 I get: Freq: Gain: Fs/2 13.1 Fs/4 2.32 Fs/8 0.975
>i like the latter one the best. it looks pretty good. > >gee, i wish some bright undergrad EE student that doesn't have anything >to do, if he/she would've done this for us and save me time. it can >still be generalized a little where we can come up for an expression of >p that preserves this double-the-gain-for-doubling-the-frequency >relationship for an arbitrary frequency between 0 and pi/2. it would be >nice if someone might do that and report the results, because i ain't gonna. > >L8r,
See Ya, [-Rick-] No. 6: "Where am I?" No. 2: "In the Village." No. 6: "What do you want?" No. 2: "Information." No. 6: "Who are you?" No. 2: "I am the new No. 2." No. 6: "Who is No. 1?" No. 2: "You are No. 6." No. 6: "I am not a number. I am a free man!"
Reply by robert bristow-johnson June 20, 20132013-06-20
On 6/20/13 12:32 PM, robert bristow-johnson wrote:
> > okay, so it just happens that now this topic is getting important to me. > > On 6/9/13 12:54 PM, Rick Lyons wrote: >> On Sat, 08 Jun 2013 23:24:01 -0400, Jerry Avins<jya@ieee.org> wrote: >> > ... >>>>> On Thursday, June 6, 2013 7:11:53 PM UTC+12, Mimar wrote: >>>>>> >>>>>> could somebody give me an advice? At the moment I am solving >>>>>> interesting problem. I have been using SW PLL with SOGI circuit to >>>>>> obtain grid frequency > ... >>> >>> Digital approximations to derivatives come in many forms. The simplest >>> and most intuitive is simply y[n]=x[n-1]-x[n]. For many applications, >>> y[n]=.5(x[n-2]-2.c[n-1]+x[n]) is better. The cost is an extra clock of >>> latency. Rick Lyons improves on that with two more delay terms and the >>> corresponding extra latency. I'm not certain that I'm at liberty to >>> provide more details. I expect that he will. >>> > ... >> If you're referring to the differentiator that >> I think you are, then it's described in detail >> at: >> >> http://www.dsprelated.com/showarticle/35.php >> > > so Rick, is it considered "good" that your differentiator gain starts to > dive toward zero after you get to pi/4 (or 1/2 Nyquist)? it seems to me > that the simple forward difference differentiator does much better in > that regard. > > i am in need of a decent differentiator and when i think of applying the > bilinear transform (BLT) directly to the problem: > > H(z) = 2*(1 - z^-1)/(1 + z^-1) > > because of BLT frequency warping, the gain shoots up to +inf at Nyquist > (small wonder since there is a pole directly on z=-1), which is too much > correction (the opposite problem of Rick's differentiator). i would > really like to do this with a first order filter and i think if we can > just back off on that nasty quasi-stable pole: > > H(z) = 2*(1 - z^-1)/(1 - p*z^-1) > > we can get something that might work pretty good. pole p would be close > to -1, but clearly inside the unit circle. > > has anyone tried this (the latter transfer function) and what value of p > had you used? > > please get back in a hurry to prevent me from re-inventing the wheel. if > i end up reinventing the blankity-blank wheel, i'll tell you how round i > got it to be. >
okay, so i got this wheel (actually 2 of them). if you use the simple transfer function above (the scaling of 2 doesn't matter, comes from the BLT), i figgered out that if you want the gain at Nyquist to be exactly twice the gain at half Nyquist, you want the pole p to be at p = -0.267949192. or, if you want the gain at 1/2 Nyquist to be exactly twice the gain at 1/4 Nyquist, then the pole should be p = -0.694566677 . i like the latter one the best. it looks pretty good. gee, i wish some bright undergrad EE student that doesn't have anything to do, if he/she would've done this for us and save me time. it can still be generalized a little where we can come up for an expression of p that preserves this double-the-gain-for-doubling-the-frequency relationship for an arbitrary frequency between 0 and pi/2. it would be nice if someone might do that and report the results, because i ain't gonna. L8r, -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
Reply by robert bristow-johnson June 20, 20132013-06-20
okay, so it just happens that now this topic is getting important to me.

On 6/9/13 12:54 PM, Rick Lyons wrote:
> On Sat, 08 Jun 2013 23:24:01 -0400, Jerry Avins<jya@ieee.org> wrote: >
...
>>>> On Thursday, June 6, 2013 7:11:53 PM UTC+12, Mimar wrote: >>>>> >>>>> could somebody give me an advice? At the moment I am solving >>>>> interesting problem. I have been using SW PLL with SOGI circuit to >>>>> obtain grid frequency
...
>> >> Digital approximations to derivatives come in many forms. The simplest >> and most intuitive is simply y[n]=x[n-1]-x[n]. For many applications, >> y[n]=.5(x[n-2]-2.c[n-1]+x[n]) is better. The cost is an extra clock of >> latency. Rick Lyons improves on that with two more delay terms and the >> corresponding extra latency. I'm not certain that I'm at liberty to >> provide more details. I expect that he will. >>
...
> If you're referring to the differentiator that > I think you are, then it's described in detail > at: > > http://www.dsprelated.com/showarticle/35.php >
so Rick, is it considered "good" that your differentiator gain starts to dive toward zero after you get to pi/4 (or 1/2 Nyquist). it seems to me that the simple forward difference differentiator does much better in that regard. i am in need of a decent differentiator and when i think of applying the bilinear transform (BLT) directly to the problem: H(z) = 2*(1 - z^-1) / (1 + z^-1) because of BLT frequency warping, the gain shoots up to +inf at Nyquist (small wonder since there is a pole directly on z=-1), which is too much correction (the opposite problem of Rick's differentiator). i would really like to do this with a first order filter and i think if we can just back off on that nasty quasi-stable pole: H(z) = 2*(1 - z^-1) / (1 + p*z^-1) we can get something that might work pretty good. pole p would be close to -1, but clearly inside the unit circle. has anyone tried this (the latter transfer function) and what value of p had you used? please get back in a hurry to prevent me from re-inventing the wheel. if i end up reinventing the blankity-blank wheel, i'll tell you how round i got it to be. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
Reply by Rick Lyons June 15, 20132013-06-15
On Tue, 11 Jun 2013 17:36:29 +0300, Tauno Voipio 
<tauno.voipio@notused.fi.invalid> wrote:

      [Snipped by Lyons]

>> >> Hello Miroslav Martisek, >> Please forgive me for my ignorance. >> What do you mean by Bohemia? >> >> In the United States we have Bohemian >> beer. But I confess, I don't know what >> Bohemia or Bohemian means. >> >> [-Rick-] > >Hello Rick, > >Bohemia (German: B&#4294967295;hmenland) is the western part of current Czech >Republic, the home of world's best beer. > >See: <https://en.wikipedia.org/wiki/Bohemia>
Hi Tauno, Thanks for the info. As always, I continue to learn all manner of interesting things from you guys. [-Rick-] No. 6: "Where am I?" No. 2: "In the Village." No. 6: "What do you want?" No. 2: "Information." No. 6: "Who are you?" No. 2: "I am the new No. 2." No. 6: "Who is No. 1?" No. 2: "You are No. 6." No. 6: "I am not a number. I am a free man!"
Reply by Rick Lyons June 15, 20132013-06-15
On Tue, 11 Jun 2013 12:38:28 +0000 (UTC), Miroslaw Kwasniak
<mirek@infrared.zind.ikem.pwr.wroc.pl> wrote:

>Rick Lyons <R.Lyons@_bogus_ieee.org> wrote: >> Please forgive me for my ignorance. >> What do you mean by Bohemia? > >http://en.wikipedia.org/wiki/Bohemia >> >> In the United States we have Bohemian >> beer. But I confess, I don't know what >> Bohemia or Bohemian means. > >http://en.wikipedia.org/wiki/Beer_in_the_Czech_Republic > >;)
Hi Miroslaw, That's a neat web site. Thanks. I spent some time in Germany many years ago, and grew to love Pilsner Urquell. As a souvenir I brought a bottle of the "REAL" Budweiser" home with me. [-Rick-] No. 6: "Where am I?" No. 2: "In the Village." No. 6: "What do you want?" No. 2: "Information." No. 6: "Who are you?" No. 2: "I am the new No. 2." No. 6: "Who is No. 1?" No. 2: "You are No. 6." No. 6: "I am not a number. I am a free man!"
Reply by Rick Lyons June 15, 20132013-06-15
On Tue, 11 Jun 2013 00:22:12 -0700 (PDT), gyansorova@gmail.com wrote:

>> >> Hello Miroslav Martisek, >> Please forgive me for my ignorance. >> What do you mean by Bohemia? >> >> In the United States we have Bohemian >> beer. But I confess, I don't know what >> Bohemia or Bohemian means. >> >> [-Rick-] >>
> >A lifestyle, arty type Bohemian existence - from Europe. > >Bohemianism is the practice of an unconventional lifestyle, often >in the company of like-minded people, with few permanent ties, >involving musical, artistic, or literary pursuits. In this context, > Bohemians may be wanderers, adventurers, or vagabonds. >This use of the word bohemian first appeared in the English language >in the nineteenth century[1] to describe the non-traditional lifestyles >of marginalized and impoverished artists, writers, journalists, >musicians, and actors in major European cities.
Hi gyansorova, Ah ha. Thanks. Bohemian sounds like a description of Jerry Avins. :-) I'll try to use the word "Bohemian" in a conversation the next time I get a chance. [-Rick-] No. 6: "Where am I?" No. 2: "In the Village." No. 6: "What do you want?" No. 2: "Information." No. 6: "Who are you?" No. 2: "I am the new No. 2." No. 6: "Who is No. 1?" No. 2: "You are No. 6." No. 6: "I am not a number. I am a free man!"
Reply by Mimar June 12, 20132013-06-12
>On 11.6.13 8:25 , Rick Lyons wrote: >> On Mon, 10 Jun 2013 07:31:15 -0500, "Mimar" <94571@dsprelated> wrote: >> >>>> On Sat, 08 Jun 2013 23:24:01 -0400, Jerry Avins <jya@ieee.org> wrote: >>>> >>>>> On 6/7/2013 12:56 PM, Vladimir Vassilevsky wrote: >>>>>> On 6/6/2013 4:11 PM, gyansorova@gmail.com wrote: >>>>>>> On Thursday, June 6, 2013 7:11:53 PM UTC+12, Mimar wrote: >>>>>>>> >>>>>>>> could somebody give me an advice? At the moment I am solving >>>>>>>> interesting problem. I have been using SW PLL with SOGI circuit
to
>>>>>>>> obtain grid frequency >>>>>> >>>>>> >>>>>>> >>>>>>> You could design a simple control loop with an integrator in the >>>>>>> feedback path. This will give you band-limited differentiation ie
a
>>>>>>> slope of 6dB/octave. >>>>>> >>>>>> Good point. As the OP is using PLL, the output of phase detector is >>>>>> derivative of frequency. >>>>>> >>>>>> VLV >>>>> On 6/7/2013 12:56 PM, Vladimir Vassilevsky wrote: >>>>>> On 6/6/2013 4:11 PM, gyansorova@gmail.com wrote: >>>>>>> On Thursday, June 6, 2013 7:11:53 PM UTC+12, Mimar wrote: >>>>>>>> >>>>>>>> could somebody give me an advice? At the moment I am solving >>>>>>>> interesting problem. I have been using SW PLL with SOGI circuit
to
>>>>>>>> obtain grid frequency >>>>>> >>>>>> >>>>>>> >>>>>>> You could design a simple control loop with an integrator in the >>>>>>> feedback path. This will give you band-limited differentiation ie
a
>>>>>>> slope of 6dB/octave. >>>>>> >>>>>> Good point. As the OP is using PLL, the output of phase detector is >>>>>> derivative of frequency. >>>>>> >>>>>> VLV >>>>> >>>>> It still needs filtering. >>>>> >>>>> Digital approximations to derivatives come in many forms. The
simplest
>>>>> and most intuitive is simply y[n]=x[n-1]-x[n]. For many
applications,
>>>>> y[n]=.5(x[n-2]-2.c[n-1]+x[n]) is better. The cost is an extra clock
of
>>>>> latency. Rick Lyons improves on that with two more delay terms and
the
>>>>> corresponding extra latency. I'm not certain that I'm at liberty to >>>>> provide more details. I expect that he will. >>>>> >>>>> Jerry >>>> >>>> Hi Jerry, >>>> If you're referring to the differentiator that >>>> I think you are, then it's described in detail >>>> at: >>>> >>>> http://www.dsprelated.com/showarticle/35.php >>>> >>>> See Ya', >>>> [-Rick-] >>>> No. 6: "What do you want?" >>>> No. 2: "Information." >>>> No. 6: "Who are you?" >>>> No. 2: "I am the new No. 2." >>>> No. 6: "Who is No. 1?" >>>> No. 2: "You are No. 6." >>>> No. 6: "I am not a number. I am a free man!" >>>> >>> >>> Hello everybody, >>> >>> I have to say: "Thank you for your advices, some (= everyone :-)) of
them
>>> were very useful for me!" >>> >>> At the moment I am testing differentiator described by Rick Lyons in
his
>>> article (http://www.dsprelated.com/showarticle/35.php). It seems, it
will
>>> be work as we with my boss want. The output from differentiator is
attached
>>> to moving average filter (16th order). Resulting value of derivative
is
>>> stable now. Super :-). I think, this solution is the best of we could >>> choose. >>> >>> Thanks a lot. >>> >>> Miroslav Martisek, Bohemia >> >> Hello Miroslav Martisek, >> Please forgive me for my ignorance. >> What do you mean by Bohemia? >> >> In the United States we have Bohemian >> beer. But I confess, I don't know what >> Bohemia or Bohemian means. >> >> [-Rick-] > >Hello Rick, > >Bohemia (German: B&#65533;hmenland) is the western part of current Czech >Republic, the home of world's best beer. > >See: <https://en.wikipedia.org/wiki/Bohemia> > >-- > >-Tauno > >Hello Rick,
Tauno said the truth, Bohemia is really the western part of Czech Republic - country in the middle Europe. Namely, I am living in &#268;esk&eacute; Bud&#283;jovice (= Czech Budweis) now, where you can find the best beer in the world: Budweiser Budvar (NO Anheuser-Busch "Budweiser" :-))). Miroslav
>
Reply by Tauno Voipio June 11, 20132013-06-11
On 11.6.13 8:25 , Rick Lyons wrote:
> On Mon, 10 Jun 2013 07:31:15 -0500, "Mimar" <94571@dsprelated> wrote: > >>> On Sat, 08 Jun 2013 23:24:01 -0400, Jerry Avins <jya@ieee.org> wrote: >>> >>>> On 6/7/2013 12:56 PM, Vladimir Vassilevsky wrote: >>>>> On 6/6/2013 4:11 PM, gyansorova@gmail.com wrote: >>>>>> On Thursday, June 6, 2013 7:11:53 PM UTC+12, Mimar wrote: >>>>>>> >>>>>>> could somebody give me an advice? At the moment I am solving >>>>>>> interesting problem. I have been using SW PLL with SOGI circuit to >>>>>>> obtain grid frequency >>>>> >>>>> >>>>>> >>>>>> You could design a simple control loop with an integrator in the >>>>>> feedback path. This will give you band-limited differentiation ie a >>>>>> slope of 6dB/octave. >>>>> >>>>> Good point. As the OP is using PLL, the output of phase detector is >>>>> derivative of frequency. >>>>> >>>>> VLV >>>> On 6/7/2013 12:56 PM, Vladimir Vassilevsky wrote: >>>>> On 6/6/2013 4:11 PM, gyansorova@gmail.com wrote: >>>>>> On Thursday, June 6, 2013 7:11:53 PM UTC+12, Mimar wrote: >>>>>>> >>>>>>> could somebody give me an advice? At the moment I am solving >>>>>>> interesting problem. I have been using SW PLL with SOGI circuit to >>>>>>> obtain grid frequency >>>>> >>>>> >>>>>> >>>>>> You could design a simple control loop with an integrator in the >>>>>> feedback path. This will give you band-limited differentiation ie a >>>>>> slope of 6dB/octave. >>>>> >>>>> Good point. As the OP is using PLL, the output of phase detector is >>>>> derivative of frequency. >>>>> >>>>> VLV >>>> >>>> It still needs filtering. >>>> >>>> Digital approximations to derivatives come in many forms. The simplest >>>> and most intuitive is simply y[n]=x[n-1]-x[n]. For many applications, >>>> y[n]=.5(x[n-2]-2.c[n-1]+x[n]) is better. The cost is an extra clock of >>>> latency. Rick Lyons improves on that with two more delay terms and the >>>> corresponding extra latency. I'm not certain that I'm at liberty to >>>> provide more details. I expect that he will. >>>> >>>> Jerry >>> >>> Hi Jerry, >>> If you're referring to the differentiator that >>> I think you are, then it's described in detail >>> at: >>> >>> http://www.dsprelated.com/showarticle/35.php >>> >>> See Ya', >>> [-Rick-] >>> No. 6: "What do you want?" >>> No. 2: "Information." >>> No. 6: "Who are you?" >>> No. 2: "I am the new No. 2." >>> No. 6: "Who is No. 1?" >>> No. 2: "You are No. 6." >>> No. 6: "I am not a number. I am a free man!" >>> >> >> Hello everybody, >> >> I have to say: "Thank you for your advices, some (= everyone :-)) of them >> were very useful for me!" >> >> At the moment I am testing differentiator described by Rick Lyons in his >> article (http://www.dsprelated.com/showarticle/35.php). It seems, it will >> be work as we with my boss want. The output from differentiator is attached >> to moving average filter (16th order). Resulting value of derivative is >> stable now. Super :-). I think, this solution is the best of we could >> choose. >> >> Thanks a lot. >> >> Miroslav Martisek, Bohemia > > Hello Miroslav Martisek, > Please forgive me for my ignorance. > What do you mean by Bohemia? > > In the United States we have Bohemian > beer. But I confess, I don't know what > Bohemia or Bohemian means. > > [-Rick-]
Hello Rick, Bohemia (German: B&#4294967295;hmenland) is the western part of current Czech Republic, the home of world's best beer. See: <https://en.wikipedia.org/wiki/Bohemia> -- -Tauno
Reply by Miroslaw Kwasniak June 11, 20132013-06-11
Rick Lyons <R.Lyons@_bogus_ieee.org> wrote:
> Please forgive me for my ignorance. > What do you mean by Bohemia?
http://en.wikipedia.org/wiki/Bohemia
> > In the United States we have Bohemian > beer. But I confess, I don't know what > Bohemia or Bohemian means.
http://en.wikipedia.org/wiki/Beer_in_the_Czech_Republic ;)
Reply by June 11, 20132013-06-11
On Tuesday, June 11, 2013 11:07:22 AM UTC+12, Vladimir Vassilevsky wrote:
> Did it come to your mind that a combination of differentiator and > > averager makes a bandpass filter?
not a very good one though, poor slope.