¿Dónde puedo encontrar un conjunto de datos de las condiciones iniciales de nuestro sistema solar?

Como sugiere el título, necesito un conjunto de datos de nuestro sistema solar. Similar a este http://bima.astro.umd.edu/nemo/archive/#iau25 , pero más específicamente, los datos de Dubinsky Milky Way-Andromeda.

Estoy creando una simulación de n-cuerpos para la escuela y parece que no puedo encontrar ninguna condición inicial de partículas que pueda usar para simular nuestro sistema solar en el software que estoy desarrollando. Necesito posiciones iniciales, velocidad y masa.

¿Alguna idea de dónde podría encontrar esto?

Respuestas (4)

El generador de efemérides de Horizons puede proporcionarle la posición y los vectores de velocidad de un planeta en un momento específico.

Este es un conjunto de opciones posibles:

ingrese la descripción de la imagen aquí

Al hacer clic en Generar efemérides en esa página, obtendrá vectores de posición y velocidad:

ingrese la descripción de la imagen aquí

Por encima de los vectores de posición y velocidad están la fecha juliana así como la fecha más convencional.

Wikipedia puede dar las masas del sol y los planetas.

Probablemente se haya mudado hace mucho tiempo, pero, solo como referencia, las condiciones iniciales que usa HORIZONS se mencionan ("header.431_572") en ftp://ssd.jpl.nasa.gov/pub/eph/planets/Linux/ README.txt pero el único lugar donde pude encontrarlos en "forma de tabla" es en mi propio repositorio de git:

https://github.com/barrycarter/bcapps/blob/master/ASTRO/header.431_572

Los valores se explican en http://ilrs.gsfc.nasa.gov/docs/2014/196C.pdf a partir de la página 39, "VI. Condiciones iniciales y constantes", especialmente en las tablas que comienzan con la Tabla 4 en la página 47 y terminando con la Tabla 13 en la página 74.

He escrito scripts para configurar las condiciones iniciales y resolver numéricamente las ecuaciones diferenciales usando Mathematica, por lo que lo siguiente puede ser útil:

https://github.com/barrycarter/bcapps/blob/master/ASTRO/README

https://github.com/barrycarter/bcapps/blob/master/ASTRO/bc-header-values.pl

https://github.com/barrycarter/bcapps/blob/master/ASTRO/bc-integrate.m

Cuando reduzco el tamaño de paso lo suficiente (el tamaño de paso predeterminado de Mathematica es demasiado grande), mis resultados coinciden con los de HORIZONTES:

https://github.com/barrycarter/bcapps/blob/master/ASTRO/bc-integrate-compare.m

Pude obtener los vectores orbitales cartesianos para todos los cuerpos principales de HORIZON solo en la época J2000. Podría extender la cobertura hacia adelante a través del tiempo. Es fácil obtener una sobrecarga de datos al hacer esto. Mi simulación está modelada usando solo las Leyes de la Gravitación y el Movimiento. Esto da resultados sorprendentemente cercanos a los publicados. Ejecutar el sistema solar hacia atrás (invirtiendo los vectores de velocidad) me ha dado los vectores iniciales hasta 1900. Esto es todo lo que necesitaba y los resultados fueron lo suficientemente cercanos para mis propósitos. Todavía tengo los archivos CSV.

También he tenido todo tipo de problemas con la interfaz de Horizons. Por ejemplo, cambiar la fecha no tuvo efecto en el valor de los vectores. es decir: todas las fechas de inicio especificadas tienen los mismos valores. Últimamente, no he podido duplicar esta hazaña. Obviamente, hay algunos problemas serios con esta interfaz, especialmente últimamente.

Sé que los datos que obtuve fueron correctos porque se correlacionan perfectamente con los eventos publicados, por ejemplo: el tránsito reciente de Mercurio.

Yo también sigo buscando este tipo de datos.

¿En qué idioma estás escribiendo esta simulación? ¿Es 2D o 3D? ¿Solo necesita posiciones y velocidades para los planetas de nuestro sistema solar?

Hice exactamente esto (simulé el sistema solar en Fortran) y no necesitaba posiciones iniciales exactas, todo lo que necesitaba eran radios iniciales (en AU desde el Sol/centro de masa) y velocidades iniciales. Usa un generador de números aleatorios para distribuir los planetas en lugares aleatorios a lo largo de sus órbitas. En Fortran, esto se veía así:

CALL RANDOM_NUMBER(randNum)
degrees = 2*3.141592653
theta(1:15) = degrees*randNum(1:15)

Y ahí tengo una matriz de 15 posiciones radiales aleatorias. Puede obtener las velocidades iniciales de los planetas de nuestro sistema solar de cualquier recurso confiable.

¿Esta solución no supondría que los planetas tienen órbitas circulares?
Sí, lo hace, desafortunadamente. Sin embargo, afortunadamente para nosotros, es una suposición razonable. ¿Qué planetas estás intentando simular? Ayudaría un poco más si supiéramos más sobre los parámetros y objetivos iniciales de su proyecto.
Bueno, primero estoy haciendo esto en C# usando OpenCL y OpenGL. Estoy usando el algoritmo ingenuo O (n ^ 2) ya que fue el más fácil de implementar en OpenCL. Al principio traté de simular la colisión de la Vía Láctea y Andrómeda, pero resultó ser muy lenta, así que ahora solo intento simular nuestro sistema solar en 2D.
Bien, entonces... C# es mucho menos adecuado para este tipo de computación científica que algo como C/C++/Fortran. ¿Para qué estás usando OpenCL/GL? Simular el sistema solar es mucho más fácil que la colisión de miles de millones de estrellas, sí. Para empezar, a menos que realmente te interese, puedes ignorar a Mercurio (no afecta a nada más). ¿Está simulando esto para tratar de ver cómo reacciona a la inestabilidad o algún otro objetivo final?
Bueno, estoy más familiarizado con C# que con Fortran, y estoy usando OpenGL para la visualización y OpenCL para el paralelismo. Mi objetivo final es visualizar las órbitas de los planetas alrededor del sol.
Ahh, bueno, eso tiene sentido. En realidad, no he visualizado los resultados de mi simulación (los resultados para mí fueron un archivo CSV enorme), así que me temo que no puedo ayudarlo mucho con eso. No parece que esté buscando una precisión inmensa, por lo que mi respuesta con respecto a las posiciones iniciales funcionará bien para usted.