Este es un solucionador de ecuaciones algebraicas de cuarto orden extremadamente simple y eficiente. He leído muchos artículos relacionados, he probado otras soluciones... Sin embargo, esta solución contiene la mejora algebraica que simplifica significativamente las cosas. En consecuencia, los cálculos numéricos se reducen y, hasta donde puedo ver, ¡funciona extraordinariamente! La teoría y los antecedentes matemáticos se explican en el archivo: teoríamath_eng.docx.
La solución de una ecuación cuártica dada - x^4 + a·x^3 + b·x^2 + c·x + d = 0 - se puede encontrar mediante la función:
solve_quartic(doble a, doble b, doble c, doble d)
Las ecuaciones de cuarto grado pueden tener diferentes tipos de raíces. a) 4 raíces reales b) 2 raíces reales y 2 raíces complejas conjugadas c) 4 raíces complejas (dos pares de raíces complejas conjugadas). Nuestro solve_quartic() devuelve la matriz de cuatro números complejos. Si existen raíces reales, las partes imaginarias de las soluciones correspondientes serán simplemente iguales a 0.
(El archivo main.cpp se proporciona aquí solo para probar y experimentar)