MathGroup Archive 2004

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Bilinear Transforms

  • To: mathgroup at
  • Subject: [mg50762] Re: Bilinear Transforms
  • From: "Steve Luttrell" <steve_usenet at>
  • Date: Sun, 19 Sep 2004 21:39:18 -0400 (EDT)
  • References: <cijen5$hmb$>
  • Sender: owner-wri-mathgroup at

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.


Steve Luttrell

"Chris Williams" <chrisw at> wrote in message 
news:cijen5$hmb$1 at
> 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