Dudas con resultados cálculos de alcance MRUR
Me creé una aplicación a la cual le introduzco los datos y me dice donde se encontrarán dos objetos con MRUR al alcance. Mi aplicación hace uso de un bucle de fuerza bruta y va comparando la posición de ambos objetos cada milisegundo y queda así:
MRUR al alcance:
A---->B---->Xf
Introduce la posición inicial de A: 0
Introduce la velocidad de A: 100
Introduce la aceleración de A: 5
Introduce la posición inicial de B: 120
Introduce la velocidad de B: 20
Introduce la aceleración de B: 1
El objeto 'A' da alcance a 'B' a los 1.5610 segundos aproximadamente.
En ese tiempo:
'A' parte con una velocidad de 100.0000 m/s.
'B' parte con una velocidad de 20.0000 m/s.
'A' recorre una distancia de 150.0082 metros.
'B' recorre una distancia de 30.0016 metros.
'A' llevaba una velocidad de 92.1950 metros/s^2.
'B' llevaba una velocidad de 18.4390 metros/s^2.
Para comprobar que tan bueno es el resultado, intento resolverlo a mano y hago todo esto:
Aplico esta formula a ambos:
Xf = X0 + V0t + (0.5a * t^2)
Y quedan así:
XfA= 0 + 100t + (0.5 * -5 * t^2) = 100t - 2.5t^2
XfB = 120 + 20t + (0.5 * -1 * t^2) = 120 + 20t -0.5t^2
Las igualo:
100t - 2.5t^2 = 120 + 20t - 0.5t^2
Las paso todas a un lado para igualar a 0:
-120 + 80t -2t^2 = 0
Como el valor de t^2 es negativo multiplico todo por -1:
120 - 80t + 2t^2 = 0
Aplico la formula para cuadráticas:
(-(-80) +/- raiz_cuadrada( (-80)^2 - (4 * 2 * (-120) ) ) ) / (2 * 2)
(80 +/- raiz_cuadrada(6400 + 960) ) / 4
(80 +/- raiz_cuadrada(7360) ) / 4
(80 + 85,7904423581) / 4 = 41,4476105894
(80 - 85,7904423581) / 4 = -1,4476105895
Como pueden ver, no coincide el resultado del programa con los que calculo a mano.
¿Estoy haciendo algo mal en mis cálculos manuales? Es que no se si es un error del programa o es un error mío en los cálculos manuales.