Why is my higher order TF model is giving some unstable roots?
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
MathWorks Support Team
am 20 Aug. 2019
Beantwortet: MathWorks Support Team
am 27 Jan. 2020
I have a transfer function that is the summation of a number of other second order transfer functions. MATLAB is not computing the poles and zeros of this transfer function correctly.
xx=xx7+xx2+xx5+xx6+xx3+xx8+xx10+xx9+xx1+xx4;
Where xx is a TF model.
Akzeptierte Antwort
MathWorks Support Team
am 20 Aug. 2019
I suspect this is due to computing higher order TF models. It is generally not a good idea to compute with high-order TF models, as explained in
Here xx is obtained by adding a bunch of second-order transfer functions to obtain a 20th order TF model with huge coefficients:
xx=xx7+xx2+xx5+xx6+xx3+xx8+xx10+xx9+xx1+xx4;
When we compute the roots of the denominator, some come up unstable. It's because the clustering of these roots, together with the loss of accuracy when aggregating roots into denominator coefficients, conspire to push some of the roots across the axis.
Instead, I suggest you to build a SS model using:
xx=ss(xx7)+xx2+xx5+xx6+xx3+xx8+xx10+xx9+xx1+xx4;
Now POLE(XX) gives all stable poles with low damping.
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Classical Control Design finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!