MathGroup Archive 1995

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

Search the Archive

Re: Inverse Z-Transform and/or Long Division

degennar at (Raymond Anthony Ralph DeGennaro II) wrote:

>I have a rather nasty Z-Transform of a transfer function that looks >like:
>             a0 + a1*z^-1 + a2*z^-2
>   H(z) =    ----------------------
>             b0 + b1*z^-1 + b2*z^-2
>Is there an easy way to bring this back into the time domain in either >of these packages?

Try MathSource ( and search for keywords.  For example, MathSource contains the following items relevant to  `Z-Transform':

0200-080: Laplace Transforms 
0205-513: The Window Method for FIR Digital Filter Design 
0206-738: Approximate Inversion of Laplace Transform 
0205-502: The Kaiser Window 
0202-981: Evaluating Powers of (-1) (Technical Note) 
0206-468: List To Array Package 
0204-499: Harmonic Function Theory and Mathematica 
0200-068: Fourier Transforms 
0205-276: An Efficient Implementation of the Patterson-Holdsworth 
	Auditory Filter Bank 
0207-144: The Discrete Periodic Wavelet Transform in 1D 
0203-724: Basic Sets of Polynomial Solutions for the Iterated Laplace and Wave Equations 
0205-041: ExtendGraphics Packages by Tom Wickham-Jones 
0205-401: Geometry in Motion 
0207-324: Mathematica Graphics: Techniques and Applications by Tom
Wickham-Jones, Electronic Supplement 
0201-979: Integration over Polytopes 
0205-052: Notebooks for Partial Differential Equations with Mathematica 
0202-611: COSY-PAK: A Symbolic Control Systems Analysis Package V0.9 
0202-240: Signal Processing Packages and Notebooks Version 2.9.5 

>Alternately, if I could just do a symbolic long division, I would get
>terms in the form:
>   a0 + a1*z^-1 + a2*z^-2 + a3*z^-3 + ...
>which are super-simple to bring into the time-domain.  But I can't seem >to get Matlab to do this (I haven't tried Mathematica, yet).

In Mathematica, after defining
   H[z_] = (a0 + a1*z^-1 + a2*z^-2)/
   		(b0 + b1*z^-1 + b2*z^-2);

     a2   a1
a0 + -- + --
      2   z
     b2   b1
b0 + -- + --
      2   z

you can use Taylor series (about Infinity) to get the expansion you want:

H[z] + O[z,Infinity]^3 // Simplify

                          2                   2
a0   a1 b0 - a0 b1   a2 b0  - a1 b0 b1 + a0 b1  - a0 b0 b2
-- + ------------- + ------------------------------------- + 
b0         2                          3  2
         b0  z                      b0  z
    1 3


  • Prev by Date: Re: Peculiarities of Pi, E, etc.
  • Next by Date: Re: MMA for OS2/Windows front end, Help
  • Previous by thread: Re: Inverse Z-Transform and/or Long Division
  • Next by thread: Re: Inverse Z-Transform and/or Long Division