Csound Csound-dev Csound-tekno Search About

Diode Ladder Filter

Date2016-11-17 16:59
FromSteven Yi
SubjectDiode Ladder Filter
Hi All,

I've done a UDO translation of Will Pirkle's Diode Ladder filter, available at:

https://github.com/kunstmusik/libsyi/blob/master/diode.udo
https://github.com/kunstmusik/libsyi/blob/master/tests/diode.csd

Pirkle describes the filter and derivation in:

http://www.willpirkle.com/Downloads/AN-6DiodeLadderFilter.pdf

>From the document:

"Background

The Diode Ladder Filter first appeared in the EMS VCS3 Monophonic
Synth designed by David Cockerell in 1969. It is (more famously)
incorporated in the Roland TB-303 BassLine monophonic bass synth from
1982. It is based on the Moog Ladder Filter (see App Note 4) but
incorporates multiple feedback paths between sections. The effect of
the feedback paths on the signal is two-fold: like the Moog Ladder, it
reduces overall filter gain as the resonance increases but the
reduction is more extreme (by about 12dB) and secondly, as the
resonance increases, the resonant frequency migrates upwards, but
never makes it to the cutoff frequency (which does not occur in the
Moog Ladder). Like the Moog Ladder it also self oscillates. At the
point of self-oscillation, the poles (and therefore the resonant peak)
will have drifted up
to fc/sqrt(2)."

I've checked the translation a couple times now and I *think* it is
correct.  (It was a little tricky to convert from the use of filter
objects in the C++ code to the inline version in the Csound UDO code.
It sounds about the same as the version in the WPDiodeLadder chugin
provided with Chuck using k=17, though I have not done an exact 1:1
test yet.)

Cheers!
steven

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-11-17 19:01
FromAnton Kholomiov
SubjectRe: Diode Ladder Filter
Wow, sounds fantastic! Toxic csound

thanks Steven!

2016-11-17 19:59 GMT+03:00 Steven Yi <stevenyi@gmail.com>:
Hi All,

I've done a UDO translation of Will Pirkle's Diode Ladder filter, available at:

https://github.com/kunstmusik/libsyi/blob/master/diode.udo
https://github.com/kunstmusik/libsyi/blob/master/tests/diode.csd

Pirkle describes the filter and derivation in:

http://www.willpirkle.com/Downloads/AN-6DiodeLadderFilter.pdf

>From the document:

"Background

The Diode Ladder Filter first appeared in the EMS VCS3 Monophonic
Synth designed by David Cockerell in 1969. It is (more famously)
incorporated in the Roland TB-303 BassLine monophonic bass synth from
1982. It is based on the Moog Ladder Filter (see App Note 4) but
incorporates multiple feedback paths between sections. The effect of
the feedback paths on the signal is two-fold: like the Moog Ladder, it
reduces overall filter gain as the resonance increases but the
reduction is more extreme (by about 12dB) and secondly, as the
resonance increases, the resonant frequency migrates upwards, but
never makes it to the cutoff frequency (which does not occur in the
Moog Ladder). Like the Moog Ladder it also self oscillates. At the
point of self-oscillation, the poles (and therefore the resonant peak)
will have drifted up
to fc/sqrt(2)."

I've checked the translation a couple times now and I *think* it is
correct.  (It was a little tricky to convert from the use of filter
objects in the C++ code to the inline version in the Csound UDO code.
It sounds about the same as the version in the WPDiodeLadder chugin
provided with Chuck using k=17, though I have not done an exact 1:1
test yet.)

Cheers!
steven

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2016-11-17 20:27
FromTarmo Johannes
SubjectRe: Diode Ladder Filter
Again,

a very nice example and great sound!

tarmo

On Thursday 17 November 2016 11:59:41 you wrote:
> Hi All,
> 
> I've done a UDO translation of Will Pirkle's Diode Ladder filter, available
> at:
> 
> https://github.com/kunstmusik/libsyi/blob/master/diode.udo
> https://github.com/kunstmusik/libsyi/blob/master/tests/diode.csd
> 
> Pirkle describes the filter and derivation in:
> 
> http://www.willpirkle.com/Downloads/AN-6DiodeLadderFilter.pdf
> 
> From the document:
> 
> "Background
> 
> The Diode Ladder Filter first appeared in the EMS VCS3 Monophonic
> Synth designed by David Cockerell in 1969. It is (more famously)
> incorporated in the Roland TB-303 BassLine monophonic bass synth from
> 1982. It is based on the Moog Ladder Filter (see App Note 4) but
> incorporates multiple feedback paths between sections. The effect of
> the feedback paths on the signal is two-fold: like the Moog Ladder, it
> reduces overall filter gain as the resonance increases but the
> reduction is more extreme (by about 12dB) and secondly, as the
> resonance increases, the resonant frequency migrates upwards, but
> never makes it to the cutoff frequency (which does not occur in the
> Moog Ladder). Like the Moog Ladder it also self oscillates. At the
> point of self-oscillation, the poles (and therefore the resonant peak)
> will have drifted up
> to fc/sqrt(2)."
> 
> I've checked the translation a couple times now and I *think* it is
> correct.  (It was a little tricky to convert from the use of filter
> objects in the C++ code to the inline version in the Csound UDO code.
> It sounds about the same as the version in the WPDiodeLadder chugin
> provided with Chuck using k=17, though I have not done an exact 1:1
> test yet.)
> 
> Cheers!
> steven
> 
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-11-17 21:09
FromMichael Gogins
SubjectRe: Diode Ladder Filter
Very nice! Thanks, I'll use it.

Best,
Mike

-----------------------------------------------------
Michael Gogins
Irreducible Productions
http://michaelgogins.tumblr.com
Michael dot Gogins at gmail dot com


On Thu, Nov 17, 2016 at 3:27 PM, Tarmo Johannes
 wrote:
> Again,
>
> a very nice example and great sound!
>
> tarmo
>
> On Thursday 17 November 2016 11:59:41 you wrote:
>> Hi All,
>>
>> I've done a UDO translation of Will Pirkle's Diode Ladder filter, available
>> at:
>>
>> https://github.com/kunstmusik/libsyi/blob/master/diode.udo
>> https://github.com/kunstmusik/libsyi/blob/master/tests/diode.csd
>>
>> Pirkle describes the filter and derivation in:
>>
>> http://www.willpirkle.com/Downloads/AN-6DiodeLadderFilter.pdf
>>
>> From the document:
>>
>> "Background
>>
>> The Diode Ladder Filter first appeared in the EMS VCS3 Monophonic
>> Synth designed by David Cockerell in 1969. It is (more famously)
>> incorporated in the Roland TB-303 BassLine monophonic bass synth from
>> 1982. It is based on the Moog Ladder Filter (see App Note 4) but
>> incorporates multiple feedback paths between sections. The effect of
>> the feedback paths on the signal is two-fold: like the Moog Ladder, it
>> reduces overall filter gain as the resonance increases but the
>> reduction is more extreme (by about 12dB) and secondly, as the
>> resonance increases, the resonant frequency migrates upwards, but
>> never makes it to the cutoff frequency (which does not occur in the
>> Moog Ladder). Like the Moog Ladder it also self oscillates. At the
>> point of self-oscillation, the poles (and therefore the resonant peak)
>> will have drifted up
>> to fc/sqrt(2)."
>>
>> I've checked the translation a couple times now and I *think* it is
>> correct.  (It was a little tricky to convert from the use of filter
>> objects in the C++ code to the inline version in the Csound UDO code.
>> It sounds about the same as the version in the WPDiodeLadder chugin
>> provided with Chuck using k=17, though I have not done an exact 1:1
>> test yet.)
>>
>> Cheers!
>> steven
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>         https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-11-17 22:48
From"Dr. Richard Boulanger"
SubjectRe: Diode Ladder Filter
Awesome!  Great UDO.  Great emulation.  And really exciting and inspiring .csd.
A new way to make a step sequencer.  Cool.  I will try to use it live in my piece at the conference.

-dB

On Thu, Nov 17, 2016 at 11:59 AM, Steven Yi <stevenyi@gmail.com> wrote:
Hi All,

I've done a UDO translation of Will Pirkle's Diode Ladder filter, available at:

https://github.com/kunstmusik/libsyi/blob/master/diode.udo
https://github.com/kunstmusik/libsyi/blob/master/tests/diode.csd

Pirkle describes the filter and derivation in:

http://www.willpirkle.com/Downloads/AN-6DiodeLadderFilter.pdf

>From the document:

"Background

The Diode Ladder Filter first appeared in the EMS VCS3 Monophonic
Synth designed by David Cockerell in 1969. It is (more famously)
incorporated in the Roland TB-303 BassLine monophonic bass synth from
1982. It is based on the Moog Ladder Filter (see App Note 4) but
incorporates multiple feedback paths between sections. The effect of
the feedback paths on the signal is two-fold: like the Moog Ladder, it
reduces overall filter gain as the resonance increases but the
reduction is more extreme (by about 12dB) and secondly, as the
resonance increases, the resonant frequency migrates upwards, but
never makes it to the cutoff frequency (which does not occur in the
Moog Ladder). Like the Moog Ladder it also self oscillates. At the
point of self-oscillation, the poles (and therefore the resonant peak)
will have drifted up
to fc/sqrt(2)."

I've checked the translation a couple times now and I *think* it is
correct.  (It was a little tricky to convert from the use of filter
objects in the C++ code to the inline version in the Csound UDO code.
It sounds about the same as the version in the WPDiodeLadder chugin
provided with Chuck using k=17, though I have not done an exact 1:1
test yet.)

Cheers!
steven

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here



--
_____________________________________________
Dr. Richard Boulanger
Professor of Electronic Production and Design
Professional Writing and Music Technology Division
Berklee College of Music
______________________________________________
President of Boulanger Labs - http://boulangerlabs.com
Author & Editor of The Csound Book - http://mitpress.mit.edu/books/csound-book
Author & Editor of The Audio Programming Book - http://mitpress.mit.edu/books/audio-programming-book
______________________________________________
about: http://www.boulangerlabs.com/about/richardboulanger/
about: http://www.csounds.com/community/developers/dr-richard-boulanger/
music: http://www.csounds.com/community/developers/dr-richard-boulanger/dr-richard-boulanger-music/

______________________________________________
email: rboulanger@berklee.edu
facebook: https://www.facebook.com/richard.boulanger.58
Csound mailing list Csound@listserv.heanet.ie https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to https://github.com/csound/csound/issues Discussions of bugs and features can be posted here

Date2016-11-17 23:01
FromRichard
SubjectRe: Diode Ladder Filter
Is this a silicon or germanium diode emulation?

Richard


On 17/11/16 17:59, Steven Yi wrote:
> Hi All,
>
> I've done a UDO translation of Will Pirkle's Diode Ladder filter, available at:
>
> https://github.com/kunstmusik/libsyi/blob/master/diode.udo
> https://github.com/kunstmusik/libsyi/blob/master/tests/diode.csd
>
> Pirkle describes the filter and derivation in:
>
> http://www.willpirkle.com/Downloads/AN-6DiodeLadderFilter.pdf
>
>  From the document:
>
> "Background
>
> The Diode Ladder Filter first appeared in the EMS VCS3 Monophonic
> Synth designed by David Cockerell in 1969. It is (more famously)
> incorporated in the Roland TB-303 BassLine monophonic bass synth from
> 1982. It is based on the Moog Ladder Filter (see App Note 4) but
> incorporates multiple feedback paths between sections. The effect of
> the feedback paths on the signal is two-fold: like the Moog Ladder, it
> reduces overall filter gain as the resonance increases but the
> reduction is more extreme (by about 12dB) and secondly, as the
> resonance increases, the resonant frequency migrates upwards, but
> never makes it to the cutoff frequency (which does not occur in the
> Moog Ladder). Like the Moog Ladder it also self oscillates. At the
> point of self-oscillation, the poles (and therefore the resonant peak)
> will have drifted up
> to fc/sqrt(2)."
>
> I've checked the translation a couple times now and I *think* it is
> correct.  (It was a little tricky to convert from the use of filter
> objects in the C++ code to the inline version in the Csound UDO code.
> It sounds about the same as the version in the WPDiodeLadder chugin
> provided with Chuck using k=17, though I have not done an exact 1:1
> test yet.)
>
> Cheers!
> steven
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>          https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-11-17 23:20
FromSteven Yi
SubjectRe: Diode Ladder Filter
Thanks all, glad this is useful.  I'm really enjoying these filters a
great deal.  Very much looking forward to your performance Dr. B!

On Thu, Nov 17, 2016 at 5:48 PM, Dr. Richard Boulanger
 wrote:
> Awesome!  Great UDO.  Great emulation.  And really exciting and inspiring
> .csd.
> A new way to make a step sequencer.  Cool.  I will try to use it live in my
> piece at the conference.
>
> -dB
>
> On Thu, Nov 17, 2016 at 11:59 AM, Steven Yi  wrote:
>>
>> Hi All,
>>
>> I've done a UDO translation of Will Pirkle's Diode Ladder filter,
>> available at:
>>
>> https://github.com/kunstmusik/libsyi/blob/master/diode.udo
>> https://github.com/kunstmusik/libsyi/blob/master/tests/diode.csd
>>
>> Pirkle describes the filter and derivation in:
>>
>> http://www.willpirkle.com/Downloads/AN-6DiodeLadderFilter.pdf
>>
>> From the document:
>>
>> "Background
>>
>> The Diode Ladder Filter first appeared in the EMS VCS3 Monophonic
>> Synth designed by David Cockerell in 1969. It is (more famously)
>> incorporated in the Roland TB-303 BassLine monophonic bass synth from
>> 1982. It is based on the Moog Ladder Filter (see App Note 4) but
>> incorporates multiple feedback paths between sections. The effect of
>> the feedback paths on the signal is two-fold: like the Moog Ladder, it
>> reduces overall filter gain as the resonance increases but the
>> reduction is more extreme (by about 12dB) and secondly, as the
>> resonance increases, the resonant frequency migrates upwards, but
>> never makes it to the cutoff frequency (which does not occur in the
>> Moog Ladder). Like the Moog Ladder it also self oscillates. At the
>> point of self-oscillation, the poles (and therefore the resonant peak)
>> will have drifted up
>> to fc/sqrt(2)."
>>
>> I've checked the translation a couple times now and I *think* it is
>> correct.  (It was a little tricky to convert from the use of filter
>> objects in the C++ code to the inline version in the Csound UDO code.
>> It sounds about the same as the version in the WPDiodeLadder chugin
>> provided with Chuck using k=17, though I have not done an exact 1:1
>> test yet.)
>>
>> Cheers!
>> steven
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>         https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
>
>
>
> --
> _____________________________________________
> Dr. Richard Boulanger
> Professor of Electronic Production and Design
> Professional Writing and Music Technology Division
> Berklee College of Music
> ______________________________________________
> President of Boulanger Labs - http://boulangerlabs.com
> Author & Editor of The Csound Book -
> http://mitpress.mit.edu/books/csound-book
> Author & Editor of The Audio Programming Book -
> http://mitpress.mit.edu/books/audio-programming-book
> ______________________________________________
> about: http://www.boulangerlabs.com/about/richardboulanger/
> about: http://www.csounds.com/community/developers/dr-richard-boulanger/
> music:
> http://www.csounds.com/community/developers/dr-richard-boulanger/dr-richard-boulanger-music/
> ______________________________________________
> email: rboulanger@berklee.edu
> facebook: https://www.facebook.com/richard.boulanger.58
> Csound mailing list Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND Send bugs reports to
> https://github.com/csound/csound/issues Discussions of bugs and features can
> be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here

Date2016-11-17 23:29
FromSteven Yi
SubjectRe: Diode Ladder Filter
The first thing that came to mind was:

Bridgekeeper: What... is the air-speed velocity of an unladen swallow?
King Arthur: What do you mean? An African or European swallow?
Bridgekeeper: Huh? I... I don't know that.
[he is thrown over]

:)

But more seriously, I couldn't tell you. I don't think the model takes
such things into account, as far as I've read through.  (Though,
there's a lot of this I don't quite grasp yet; my math fails me often,
but I'm happy enough to get the desired sound and move on at this
point.)



On Thu, Nov 17, 2016 at 6:01 PM, Richard  wrote:
> Is this a silicon or germanium diode emulation?
>
> Richard
>
>
>
> On 17/11/16 17:59, Steven Yi wrote:
>>
>> Hi All,
>>
>> I've done a UDO translation of Will Pirkle's Diode Ladder filter,
>> available at:
>>
>> https://github.com/kunstmusik/libsyi/blob/master/diode.udo
>> https://github.com/kunstmusik/libsyi/blob/master/tests/diode.csd
>>
>> Pirkle describes the filter and derivation in:
>>
>> http://www.willpirkle.com/Downloads/AN-6DiodeLadderFilter.pdf
>>
>>  From the document:
>>
>> "Background
>>
>> The Diode Ladder Filter first appeared in the EMS VCS3 Monophonic
>> Synth designed by David Cockerell in 1969. It is (more famously)
>> incorporated in the Roland TB-303 BassLine monophonic bass synth from
>> 1982. It is based on the Moog Ladder Filter (see App Note 4) but
>> incorporates multiple feedback paths between sections. The effect of
>> the feedback paths on the signal is two-fold: like the Moog Ladder, it
>> reduces overall filter gain as the resonance increases but the
>> reduction is more extreme (by about 12dB) and secondly, as the
>> resonance increases, the resonant frequency migrates upwards, but
>> never makes it to the cutoff frequency (which does not occur in the
>> Moog Ladder). Like the Moog Ladder it also self oscillates. At the
>> point of self-oscillation, the poles (and therefore the resonant peak)
>> will have drifted up
>> to fc/sqrt(2)."
>>
>> I've checked the translation a couple times now and I *think* it is
>> correct.  (It was a little tricky to convert from the use of filter
>> objects in the C++ code to the inline version in the Csound UDO code.
>> It sounds about the same as the version in the WPDiodeLadder chugin
>> provided with Chuck using k=17, though I have not done an exact 1:1
>> test yet.)
>>
>> Cheers!
>> steven
>>
>> Csound mailing list
>> Csound@listserv.heanet.ie
>> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
>> Send bugs reports to
>>          https://github.com/csound/csound/issues
>> Discussions of bugs and features can be posted here
>
>
> Csound mailing list
> Csound@listserv.heanet.ie
> https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
> Send bugs reports to
>        https://github.com/csound/csound/issues
> Discussions of bugs and features can be posted here

Csound mailing list
Csound@listserv.heanet.ie
https://listserv.heanet.ie/cgi-bin/wa?A0=CSOUND
Send bugs reports to
        https://github.com/csound/csound/issues
Discussions of bugs and features can be posted here