[sdiy] S-plane visualization software

Rob B cyborgzero at home.com
Sun Feb 24 06:02:47 CET 2002


You can do it fairly easy with Maple..

IIRC, here at Purdue they have a preset that does it.. I'll post it if
I run across it again.

Rob

----- Original Message -----
From: "Oren B. Leavitt" <oleavitt at ix.netcom.com>
To: <synth-diy at dropmix.xs4all.nl>
Sent: Saturday, February 23, 2002 11:27 PM
Subject: Re: [sdiy] S-plane visualization software


> Thanks Magnus,
>
> It's a start...I'll investigate further...
> I'm new to the list, although I've been into building analog synths
for about twenty
> years.
>
> The easy way would be to punch in some numbers and view the results
as XY graphs or
> polar plots. Most of the few programs out there that do just that.
>
> I guess the challenge here is to add the ability to manipulate
elements on a graphic
> plot (poles, zeros) and see other parts (the real time axis) change,
and show a new
> transfer function.
> There might be more sophisticated, and probably expen$ive, programs
out there that
> have that feature...But it would be fun, in DIY spirit, to implement
a program to do
> this..I like the idea!
>
> Oren
>
> PS - Nice ASCII art!
>
> Magnus Danielson wrote:
>
> > From: "Oren B. Leavitt" <oleavitt at ix.netcom.com>
> > Subject: Re: [sdiy] S-plane visualization software
> > Date: Sat, 23 Feb 2002 17:40:11 -0800
> >
> > > Hello,
> >
> > Hi Gren,
> >
> > > As a programmer by trade, I have been trying to think of ways to
put that lazy
> > > PC to work in a synth-DIY-useful way, too.
> > >
> > > I like the idea of an interactive filter designer - I just might
write an app if
> > > I find some spare time.
> > >
> > > Where can I get some backgrounders on the math and theory
involved?
> >
> > Well, why not on the Synth-DIY? ;O)
> >
> > > I will need examples, equations, and graphs, etc... to get an
idea.
> >
> > Plenty of those around...
> >
> > > I am not up to snuff on s-plane filter math...I think I
mis-Laplaced my
> > > head...;-)
> >
> > Tip: Do not place your poles on the right half-plane if you want
> > stability ;O)
> >
> > OK.
> >
> > If you have a transfer function H(s) then we talk about its
amplitude
> > responce to be |H(s)| and we usually let s = jw for stable
> > frequencies, thus the amplitude responce becomes |H(jw)|.
> >
> > The phase responce is arg(H(jw)|.
> >
> > Since H(s) is really built up of a number of poles and zeroes we
can
> > write it
> >
> >                                      ---
> >           (s-z )(s-z )...(s-z )      | | s-z
> >               1     2        m        i     i
> > H(s) = H  --------------------- = H  ---------
> >         0 (s-p )(s-p )...(s-p )    0 ---
> >               1     2        n       | | s-p
> >                                       i     i
> >
> > Using this the amplitude responce becomes
> >
> >                                            ---
> >              |jw-z ||jw-z |...|jw-z |      | | |jw-p |
> >                   1      2         m        i       i
> > |H(jw)| = H  ------------------------ = H  -----------
> >            0 |jw-p ||jw-p |...|jw-p |    0 ---
> >                   1      2         n       | | |jw-p |
> >                                             i       i
> >
> > since
> >              _______________
> >           2 / 2           2 |
> > |jw-p | = \/ a  + (w - b )
> >      i        i         i
> >
> > and similarly for z's we get by assuming:
> >
> > z  = g  + id
> >  i    i     i
> >
> > p  = a  + ib
> >  i    i     i
> >                    __________________
> >                   / ---  2         2 |
> >                  /  | | g  + (w-d )
> >                 /    i   i       i
> > |H(jw)| = H \  /    ----------------
> >            0 \/     ---  2         2
> >                     | | a  + (w-b )
> >                      i   i       i
> >
> > where as the phase responce becomes
> >
> >          ---        d - w    ---         b - w
> >          \           i       \            i
> > phi(w) =  >  arctan ----- -   >   arctan -----
> >          /            g      /             a
> >          ---           i     ---            i
> >           i                   i
> >
> > The phase delay is given as
> >
> >             phi(w)
> > tau (w) = - ------
> >    p          w
> >
> > and the group delay is given as
> >
> >          d phi(w)
> > D(w) = - --------
> >             dw
> >
> > that is, the derivate of phase.
> >
> > Don't forget that w is allways 2*pi*f and pi is about 3.14159 ;O)
> >
> > Do you need much more math works?
> >
> > You migth need a few examples... right. Butterworth filters have
all
> > their poles evenly spread out on a circle with the center at the
origo
> > and naturally no poles on the right side half. For an odd number
of
> > poles one lies on the real axis. Let me know if you don't work
that
> > math out on yourself...
> >
> > Cheers,
> > Magnus - happy to revisit the land of linear filtering ;O)
>
> --
> Oren Leavitt
> oleavitt at ix.netcom.com
>
>




More information about the Synth-diy mailing list