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

Learn moreOpportunities for recent engineering grads.

Apply Today
Asked by moonman on 13 Nov 2011

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)

*No products are associated with this question.*

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]; zplane(B,A)

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).

Answer by moonman on 13 Nov 2011

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

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)

## 2 Comments

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/21114#comment_45913

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 ?

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/21114#comment_45916

It is z raise to power -1

yes 1/z...

H(z) contaiins all z

G(z) contains all z(inverse power)