plot inverse z transform

9 vues (au cours des 30 derniers jours)
Francisco Araujo
Francisco Araujo le 1 Mai 2016
I want to plot the sequence described by the inverse transform of the following Pulse Transfer Function
G(z) = (0.6321*z^-1)/(1-1.3679*z^-1+0.3679*z^-2)
writing the code
syms z k
G = (0.6321*z^-1)/(1-1.3679*z^-1+0.3679*z^-2)
g = iztrans(G, z, k)
k = linspace(0,14,15);
stem(g,k)
or even
syms z k
G = (0.6321*z^-1)/(1-1.3679*z^-1+0.3679*z^-2)
g = iztrans(G, z, k)
stem(g)
But there is the following error:
DOUBLE cannot convert the input expression into a double array.
If the input expression contains a symbolic variable, use VPA.
Error in
stem(g)
What is the problem?

Réponses (2)

Walter Roberson
Walter Roberson le 1 Mai 2016
stem() does not understand symbolic expressions. You need to evaluate to get numeric expressions.
gn = double( subs(g, sym('k'), k) );
stem(gn, k)

Priyadharsini B
Priyadharsini B le 1 Déc 2022
syms z
f=z/((z-1)^2)*((z+2)^2)
iztrans(f)

Catégories

En savoir plus sur Symbolic Math Toolbox dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by