Filter löschen
Filter löschen

Why do I receive an error when I run this code?

2 Ansichten (letzte 30 Tage)
sadel
sadel am 9 Jun. 2011
Why do I receive an error when I run this code?
sys=tf([1],[1 1],'InputDelay',2)
sysd=c2d(sys,0.5)
[num,den]=tfdata(sysd)
num=num2str(num{:})
den=num2str(den{:})
num=poly2sym(num,z)
den=poly2sym(den,z)
num=char(num)
den=char(den)

Akzeptierte Antwort

Paulo Silva
Paulo Silva am 9 Jun. 2011
Bad use of the poly2sym function, you give a string for the first argument but the function expects one array.
Also the z should be like this 'z'
doc poly2sym
Just a tip: num{:} gives you one array, that array can be used by poly2sym
sys=tf([1],[1 1],'InputDelay',2)
sysd=c2d(sys,0.5)
[num,den]=tfdata(sysd)
num=vpa(poly2sym(num{:},'z'),4)
den=vpa(poly2sym(den{:},'z'),4)
nums=char(num)
dens=char(den)
There were some errors, I had to edit the answer several times but I think that now it's all working.
  5 Kommentare
Paulo Silva
Paulo Silva am 9 Jun. 2011
ok I fixed the code again, no more big and precise values, happy now?
sadel
sadel am 9 Jun. 2011
hahaha yes, thank you very much!!!!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Julián Francisco
Julián Francisco am 9 Jun. 2011
My Matlab program says that you have not defined the variable z.

Kategorien

Mehr zu Interactive Control and Callbacks finden Sie in Help Center und File Exchange

Tags

Noch keine Tags eingegeben.

Community Treasure Hunt

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

Start Hunting!

Translated by