14 de junio de 2020

Programas simuladores del movimiento de los planetas con PROCESSING

En esta época de confinamiento, a mi clase de TIC 1º BAC D le había propuesto el aprendizaje del programa PROCESSING, un entorno de programación orientado al desarrollo de animaciones y gráficos.

Entre los programas propuestos se me ocurrió un simulador del movimiento de traslación de la Tierra en torno al Sol, y, como complicación, además la Luna en torno a la Tierra.

Estos programas no son relativamente difíciles de llevar a cabo. Simplemente se hace que un objeto (un círculo o una imagen) sigan una trayectoria circular respecto de un punto central (que sería el Sol, moviéndose la Tierra) o respecto a un punto móvil (la Luna respecto de la Tierra).

Mis alumnos se han decantado por otro tipo de programas, alguno de los cuales también proponía, pero yo, entre otras cosas, me he dedicado a hacerlos por si tenía que enseñárselos a ellos o a otras clases otros años.

Lo cierto es que tenía una espina clavada en este tema. En la carrera estudié, en la asignatura de Mecánica (rama de la Física), el problema de los dos cuerpos. Este problema calcula la trayectoria de dos masas en el espacio conocidas sus velocidades y posiciones iniciales, siguiendo la ecuación de la fuerza gravitatoria de Newton, y demostrando las leyes de Kepler del movimiento planetario. En su momento, aparte de la teoría y un montón de problemas, recuerdo como un fracaso una práctica de laboratorio que consistía en medir parámetros de una órbita simulada con un programa que creo recordar estaba en BASIC o PASCAL corriendo en un Conmmodore 64 o parecido.

Así que me he propuesto hacer un programa que reproduzca, fielmente, el problema de los dos cuerpos. Y que lo resuelva para el caso del Sol con los planetas interiores (Mercurio, Venus, Tierra y Marte). Para hacerlo, no sólo he tenido que repasar dicho problema, sino también algunos conceptos matemáticos que tenía oxidados, como el teorema del coseno aplicado a la geometría esférica.

Para lograrlo, hay que conocer los parámetros orbitales de cada planeta, que son básicamente posiciones angulares respecto del plano de la eclíptica (el plano que forman el Sol y la Tierra) y datos referente a su órbita. En concreto, semieje mayor de la elipse (a), excentricidad (e), inclinación de la órbita (i), longitud del nodo ascendente (Omega), argumento del perihelio (w) y época de paso por el perihelio (Tau).

El resultado son dos simulaciones que podéis encontrar en la web del IES Seritium: https://www.seritium.es/sissolar/ y https://www.seritium.es/sisTierraLuna/

Podéis encontrar los programas y más información en: https://github.com/agrgal/sistemaSolar

Además, os dejo unos enlaces a contenidos teóricos del problema.
  1. http://www.sc.ehu.es/sbweb/fisica3/celeste/ecuacion/ecuacion.html 
  2. http://www.sc.ehu.es/sbweb/fisica3/celeste/orbitas/orbitas.html 
  3. http://www.sc.ehu.es/sbweb/fisica/dinamica/con_mlineal/m_lineal/mlineal.htm#Sistema%20formado%20por%20dos%20estrellas%20en%20%C3%B3rbita%20circular.



2 comentarios:

  1. Cordial Saludo.
    Es posible que presente el codigo en python.

    ResponderEliminar
  2. Cordial Saludo.
    Por favor el codigo pero en python de: Sistema Solar - planetas interiores

    ResponderEliminar