MATLAB: Transfer function. Find poles in acending order

controlpolestheorytransfer functionzeros

How can I get poles of a Transfer Function and Sort the vectors in ascending order of (s^6 + 143 s^5 + 6819 s^4 + 120387 s^3 + 696290 s^2 + 3.391e06 s + 476000)?

Best Answer

Try this:
syms s
den = (s^6 + 143*s^5 + 6819*s^4 + 120387*s^3 + 696290*s^2 + 3.391e06*s + 476000);
poles = vpasolve(den);
They already appear to be sorted in ascending order with respect to the real parts. If you want them in descending order, use the flip function.
poles =
-55.994625353263379460602048336928
-54.987920440582536469742681794163
-26.533159970548847284575637748224
-0.1445559684504513733910828813702
- 2.6698691335773927058442746196575 + 5.7600060617923712555731350098613i
- 2.6698691335773927058442746196575 - 5.7600060617923712555731350098613i
.