[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [escepticos] ecuacion de tercer grado, raices reales
He estado revisando el metodo (usando como fuente el "Numerical Recipes in
C", de Press, Flannery, Teulosky y Vetterling, Cambridge U.P.)
Usando tu terminologia para la ecuacion, y las definiciones de Q y R:
De cara a la programacion, primero puedes comprobar si Q^3 - R^2 >= 0. Si es
asi, la ecuacion tiene 3 raices reales.
Entonces, sea
Theta= arccos(R/(Q^3/2))
Con ello las tres raices son:
x1= -2*Q^1/2*cos(Theta/3) - a/3
x2= -2*Q^1/2*cos((Theta+2*Pi)/3) - a/3
x3= -2*Q^1/2*cos((Theta+4*Pi)/3) - a/3
donde Pi es obviamente Pi (la ecuacion aparece en el tratado "De
enmendatione" de François Viète, de 16159
(como ves, se dan un aire a las que proponias en el caso de determinante
negativo, salvo porque introducen un restando que es posiblemente la causa
de que te dieran soluciones erroneas)..
En el caso que lo anterior no valga, es decir, que R^2-Q^3>0, la ecuacion
cubica solo tiene una raiz real, dada por:
x1=-SGN(R) * { [(R^2-Q^3)^1/2 + MOD(R)]^1/3 + Q/[(R^2-Q^3)^1/2 +
MOD(R)]^1/3 } - a/3
Estas soluciones proporcionan buen resultado siempre que los coeficientes de
la ecuacion no sean demasiado parecidos. En ese caso, es mejor usar un
Newton-Raphson para encontrar las raices del polinomio.
Espero que te sea de ayuda...
javier armentia
-----Original Message-----
De: carlitos <180807 en cienz.unizar.es>
Para: snark en ccc.uba.ar <snark en ccc.uba.ar>; escepticos en CCDIS.dis.ulpgc.es
<escepticos en CCDIS.dis.ulpgc.es>
Fecha: lunes 15 de junio de 1998 16:34
Asunto: [escepticos] ecuacion de tercer grado, raices reales
Hola, hola.
Necesito resolver la ecuación de tercer grado con coeficientes reales
x^3 + a·x^2 + b·x + c = 0
Según el libro de fórmulas de Spiegel editado por McGraw-Hill que algunos
conocereis, definiendo
Q = ( 3·b - a^2 )
R = ( 9·a·b - 27·c - 2·a^3 ) / 54
D = Q^3 + R^2
S = ( R + D^(1/2) )^(1/3)
T = ( R - D^(1/2) )^(1/3)
podemos escribir las soluciones
S + T - a/3
-(S+T)/2 - a/3 + i 3^(1/2) (S-T) / 2
-(S+T)/2 - a/3 + i 3^(1/2) (S-T) / 2
Estas soluciones son correctas.
Dice que cuando el determinante D es negativo las soluciones son reales y
pueden escribirse
2 (-Q)^(1/2) cos (teta/3)
2 (-Q)^(1/2) cos (teta/3+120)
2 (-Q)^(1/2) cos (teta/3+240)
donde cos(teta) = -R / (-Q^3)^(1/2)
Esta solución es incorrecta, pero me interesa encontrar una solución de esta
forma para evitar tener que incluir numeros complejos en el calculo (es para
un
programa).
He buscado en unos cuantos libros, en uno hacia referencia a que existía una
solución trigonométrica pero no la daba. Con lo poco que les costaba
copiarla...
Saludos, Carlos Ungil