I briefly looked at your code, and saw that you have complex numbers as transfer function coefficients. Some of them are designated as not free to change. I did not do any more investigation after that, but System Identification Toolbox only works with real-valued transfer function coefficients, so I would recommend starting with that - making sure all the coefficients are real-valued.
tfest Model Structure and Constraints
5 次查看(过去 30 天)
显示 更早的评论
I have been using tfest to estimate a transfer function to fit time series data which I have attached to this posting, data.mat. I provide an initial guess for the polynomial coefficients that define both the ZEROS & POLES of the system. I then attempt to restrict which coefficients can or cannot be FREE for tfest to manipulate. Unfortunately, it seems that MATLAB ignores my restrictions. However, after iterating a second time the constraints seem to be honored and the coefficients are recomputed to yield somewhat decent results.
Since the iteration seemed to yield different estimates on the coefficients I included an iterative FOR loop, lines 16 - 23 in my routine to be sure convergence is obtained. However, if I remove lines 20 & 21 from the loop convergence is not obtained & the results are WRONG. You can see the change or NO change in the coefficients with each iteration by the workspace variable chekiteration.
Can anyone explain this behavior? I have an idea, but it is PURE speculation since I do not know the inner mechanisms of tfest.
Appreciate any insight.
0 个评论
回答(1 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Transfer Function Models 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!