How can I find transfer function from a difference equation?

39 views (last 30 days)
Hey,,I'm new to matlab.
I have homework says that:- y(n)=0.4142y(n-1)+0.2929x(n)+0.2929x(n-1)
find H(z) ?? Plot the poles and zeros on the z-plan with the unit circle ?
Can Somebody help me ,, Please?? thank You !

Accepted Answer

Shashank Prasanna
Shashank Prasanna on 28 Jun 2013
This is not a MATLAB question.
Here is some theory:
https://ccrma.stanford.edu/~jos/filters/Z_Transform_Difference_Equations.html
You can certainly plug in those coefficients into tf (in the right way) and it will give you the transfer function.
  3 Comments
Shashank Prasanna
Shashank Prasanna on 28 Jun 2013
Please take a look at the documentation page of TF:
You can create the transfer function by passing in the right arguments. I guess that's what the doctor ordered.
Christine Ak
Christine Ak on 28 Jun 2013
Edited: Christine Ak on 28 Jun 2013
Thank You Soo much I think that helps me...... :)

Sign in to comment.

More Answers (2)

D. Mike Daniel
D. Mike Daniel on 10 Oct 2016
I'm not sure I fully understand the equation. I also am not sure how to solve for the transfer function given the differential equation. I do know, however, that once you find the transfer function, you can do something like (just for example):
>> H_z = tf(1, [1 4 6])
H_z =
1
-------------
s^2 + 4 s + 6
Continuous-time transfer function.
>> pzmap(H_z)
Where pzmap plots a graph of the poles (marked with "x"s) and zeros (marked with "o"s). This example has no zeros, but has poles at -2 +/- sqrt(2)*i.

yakub sharif
yakub sharif on 25 Jan 2019
Hey, I have a question If you could help
How can I get the transfer function from the equation: (2*Vm*(s*cos(theta - (2*pi)/3) - w1*sin(theta - (2*pi)/3)))/(3*(s^2 + w1^2)) + (2*Vm*(s*cos(theta + (2*pi)/3) - w1*sin(theta + (2*pi)/3)))/(3*(s^2 + w1^2)) + (2*Vm*(s*cos(theta) - w1*sin(theta)))/(3*(s^2 + w1^2))

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!