Order of roots obtained from function roots
12 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Dear all,
I have a funny problem. I have a third-degree polynomial f(s1) which depends on a variable 'm'. When I vary 'm', at some points, the ROOTS function returns me a different order of roots. For example,
when m=217:
s1 =
2.241355481895662 - 1.756029299682315i
1.921143944919372 + 1.773701622048629i
0.215633777118811 - 0.917762110838706i
when m=218;
s1 =
1.918712404828970 + 1.767930620926665i
2.241124388076128 - 1.749637415502876i
0.222483229595857 - 0.896179899600968i
So, do you know how to solve that problem? Thanks Best
0 Commenti
Risposta accettata
John D'Errico
il 14 Giu 2018
Roots does not assure any specific order of the returned roots, nor should it rationally do so.
Feel free to sort them in any order you desire. However, you need to recognize there is no natural ordering of a set of complex numbers. Should they be sorted in terms of increasing real part? Imaginary part? Magnitude? Angle in the complex plane?
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Shifting and Sorting Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!