Re: Bilinear Transforms

• To: mathgroup at smc.vnet.net
• Subject: [mg50762] Re: Bilinear Transforms
• From: "Steve Luttrell" <steve_usenet at _removemefirst_luttrell.org.uk>
• Date: Sun, 19 Sep 2004 21:39:18 -0400 (EDT)
• References: <cijen5\$hmb\$1@smc.vnet.net>
• Sender: owner-wri-mathgroup at wolfram.com

```Try this (not sure whether you are using z or z^(-1) but this doesn't affect
the basic idea below):

Build a little FIR filter
q = Sum[a[i]/z^i,{i,10}]

Warp it.

r = q /. z -> (1 - \[Lambda]/z)/(z^(-1) - \[Lambda])

Gather together as numerator over denominator.

s = Together[r]

Get the coefficients in the numerator.

CoefficientList[Numerator[s],z]

Steve Luttrell

"Chris Williams" <chrisw at tartarus.uwa.edu.au> wrote in message
news:cijen5\$hmb\$1 at smc.vnet.net...
> Hi everyone,
>
> I have an warped FIR filter with order around 1400 - however to unwarp
> this filter configuration for use on my data I need to apply the
> bilinear transform:
>
> u' ->  (z^-1 - lambda)/(1-lambda*z^-1)
>
> So essentially each unit delay becomes an all-pass element.
> I've substituted in the transform into a transfer function expression
> for my filter, and now I want to get the transfer function back into the
> normal form of a fraction of polynomials of z.
>
> I've tried Together[] and Simplify[] without much success. Has anyone
> accomplished something similar - any help would be greatly appreciated ;)
>
> Cheers and thanks,
>
> Chris.
>

```

• Prev by Date: Re: Integratecrashes kernel
• Next by Date: Re: Newbie Plot Question
• Previous by thread: Bilinear Transforms
• Next by thread: Re: Bilinear Transforms