MATLAB: Do i get a different pzmap if i use idtf or ss representation of the same system

MATLABpzmapstate-spaceSystem Identification Toolboxtransfer function

Hello,
I noticed a behaviour i cannot explain.
idtf, idpoly, ss, from what i understood, is just a matter of writing or convention to describe a system. Because they describe the same system, they should have the same poles and zeros, therefore the same pzmap.
I have a continuous SISO model. If i do pzmap of the ss, i get one pole of multiplicity N, the order of my system, and N zeros as well.
if i do pzmap of the idtf representing the same system, i get N poles and N zeros. Zeros do not match perfectly but are quite close.
Does anyone has an explanation?SSvsIDTF.jpg
Thanks in advance for your help

Best Answer

I assume you are doing something like this:
G = idtf(num,den)
M=tf(num,den)
N=ss(G)
Now you expect G ,M and N to be identical and have same pzmap since they are basically the same system. However there may be small differences due to numerical computation accuracy issues if your system is of high order.
See the section "Recommended Working Representation" here: