Dies ist ein äußerst einfacher und effizienter Löser für algebraische Gleichungen 4. Ordnung. Ich habe so viele verwandte Artikel gelesen und andere Lösungen getestet ... Diese Lösung enthält jedoch eine algebraische Verbesserung , die die Dinge erheblich vereinfacht. Dadurch werden die numerischen Berechnungen reduziert und die Leistung ist meines Erachtens außerordentlich gut! Die Theorie und der mathematische Hintergrund werden in der Datei theorymath_eng.docx erläutert.
Die Lösung einer gegebenen quartischen Gleichung – x^4 + a·x^3 + b·x^2 + c·x + d = 0 – kann durch die Funktion gefunden werden:
solve_quartic(double a, double b, double c, double d)
Die quartischen Gleichungen können verschiedene Arten von Wurzeln haben. a) 4 reelle Wurzeln b) 2 reelle und 2 komplex-konjugierte Wurzeln c) 4 komplexe Wurzeln (zwei Paare komplex-konjugierter Wurzeln). Unsersolve_quartic () gibt das Array aus vier komplexen Zahlen zurück. Wenn es reelle Wurzeln gibt, sind die Imaginärteile der entsprechenden Lösungen einfach gleich 0.
(Die Datei „main.cpp“ dient hier nur zum Testen und Experimentieren.)