# [Maxima] bilinear transform

Barton Willis willisb at unk.edu
Tue Mar 20 08:27:20 CDT 2007

```Maybe you need to extract the numerator and denominator using
the functions 'ratnumer' and 'ratdenon'. After that, you can
divide each by q; thus:

(%i3) (q + 1/x)/(q - 1/x);
(%o3) (1/x+q)/(q-1/x)
(%i4) [ratnumer(%)/q, ratdenom(%)/q];
(%o4) [(q*x+1)/q,(q*x-1)/q]

Barton

-----maxima-bounces at math.utexas.edu wrote: -----

>To: maxima at math.utexas.edu
>From: Robert Bielik
>Sent by: maxima-bounces at math.utexas.edu
>Date: 03/20/2007 02:59AM
>Subject: [Maxima] bilinear transform
>
>I'm trying to use Maxima to aid in "digitizing" an old 4 pole LP filter by
>taking its s-domain transfer
>function and trying to go to z-domain via bilinear transformation.
>
>However, I'm not having to great a success with Maxima in following the
>steps of:
>http://www.earlevel.com/Digital%20Audio/Bilinear.html
>
>which I use to get a handle on things, mainly when it comes to dividing
>nominator and denominator with Q.
>I've gotten to the z transfer function but when I try to multiply the
>expression with (1/Q) / (1/Q) I don't
>get the result I want. Probably me not understanding how to use the
>functions.
>