Matlab extract coefficient from z transform function

8 vues (au cours des 30 derniers jours)
David
David le 10 Mai 2014
Commenté : Star Strider le 10 Mai 2014
Hi I have a z transform function 3/z + 5/z^2 + 6/z^3 + 1
How would I extract the coefficients from this equation? I have tried using coeffs and it says it is not a polynomial.
I would like the answer to come out as [3 5 6 1]
The symbolic z variable is declared as syms z

Réponse acceptée

Star Strider
Star Strider le 10 Mai 2014
Modifié(e) : Star Strider le 10 Mai 2014
Use the sym2poly function, although here it’s necesary to do an intermediate step:
syms z
fz = 3/z + 5/z^2 + 6/z^3 + 1
[fzn, fzd] = numden(fz)
fzc = sym2poly(fzn)
fzc = circshift(fzc, [0 -1])
produces:
fzc =
3 5 6 1
  2 commentaires
David
David le 10 Mai 2014
Thank you so much for your input. It was exactly what I was looking for.
Star Strider
Star Strider le 10 Mai 2014
My pleasure!
The sym3poly function would work with a ‘normal’ polynomial, but the symbolic terms in the denominator require numden and then circshift.

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by