MATLAB Answers


confused abt z and z(-1) in matlab

Asked by moonman
on 13 Nov 2011
Accepted Answer by Naz

Lets suppose i am having one transfer function as

H(z)= 1-2z/(1+3z)

and the other is

G(z) = 1-2z(-1)/ [1+3z(-1)] //Now inverse is used

If i want to take the transfer fucntion in matlab for further pole zero map, how i will tell matlab that it is z in my TF or z(-1)


Is that really z multiplied by negative one? Or is it z raised to the power of negative 1, z^(-1), which is 1/z ?

It is z raise to power -1
yes 1/z...

H(z) contaiins all z

G(z) contains all z(inverse power)



No products are associated with this question.

3 Answers

Answer by Naz
on 13 Nov 2011
 Accepted answer

You can take your H(z) and divide by z. So you will have: z^(-1)-2 / z^(-1)+3. Now you can create two vectors containing zeros and poles:

B=[-2 1];
A=[3 1];

If you have function with (all) negative powers, than the last coefficient is for the most negative power and the first coeff is a constant. In case of all positive coeff. you just inverse the order (constant is last).

  1 Comment

Thanks Naz

Answer by moonman
on 13 Nov 2011

Is there any way i can directly use H(z) for calculations


Not without the symbolic toolbox.

on 13 Nov 2011

I dont really understand what you are trying to do. Please, be more specific.

Answer by moonman
on 13 Nov 2011

I just want to ask that some times we are having transfer function which is expressed in z and some times it is expressed in z(inverse) format

how to handle both I am sure both cannot be handled by one command of matlab like tf is used with z(inverse)

  1 Comment

on 13 Nov 2011

See my answer, I just updated it.

Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!