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

8

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 , específicamente los datos de la vía láctea andrómeda de Dubinsky.

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?

Gracias.

Isracg
fuente

Respuestas:

3

El generador de efemérides de Horizontes puede proporcionarle los vectores de posición y 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á los 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.

HopDavid
fuente
2

Pude obtener los vectores orbitales cartesianos para todos los cuerpos principales de HORIZON solo en la época J2000. Podría extender la cobertura a través del tiempo. Es fácil obtener una sobrecarga de datos haciendo esto. Mi simulación está modelada usando solo las Leyes de Gravitación y Movimiento. Esto da resultados que son sorprendentemente cercanos a los publicados. Ejecutar el sistema solar hacia atrás (invirtiendo los vectores de velocidad) me ha devuelto los vectores iniciales a 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 horizontes. 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 graves con esta interfaz, especialmente últimamente.

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

Yo también sigo buscando este tipo de datos.

Abe
fuente
1

¿En qué idioma estás escribiendo esta simulación? ¿Es 2D o 3D? ¿Solo necesita posiciones y velocidades para nuestros planetas del 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 UA del Sol / centro de masa) y velocidades iniciales. Use 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 allí tengo una matriz de 15 posiciones radiales aleatorias. Puede obtener velocidades iniciales de los planetas de nuestro sistema solar de cualquier recurso de buena reputación.

IronWaffleMan
fuente
¿No supondría esta solución que los planetas tienen órbitas circulares?
Isracg
Sí, lamentablemente. 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.
IronWaffleMan
Bueno, primero estoy haciendo esto en C # usando OpenCL y OpenGL. Estoy usando el ingenuo algoritmo O (n ^ 2) ya que fue el más fácil de implementar en OpenCL. Al principio traté de simular la colisión entre Milkyway y Andrómeda, pero resultó ser muy lenta, así que ahora solo estoy tratando de simular nuestro sistema solar en 2D.
Isracg
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 importe, puedes ignorar a Mercury (no afecta a nada más). ¿Estás simulando esto para tratar de ver cómo reacciona ante la inestabilidad o algún otro objetivo final?
IronWaffleMan
Bueno, estoy más familiarizado con C # que con Fortran, y estoy usando OpenGL para visualización y OpenCL para paralelismo. Mi objetivo final es visualizar las órbitas de los planetas alrededor del sol.
Isracg
1

Probablemente haya avanzado desde hace mucho tiempo, pero, solo como referencia, se mencionan las condiciones iniciales que utiliza HORIZONTES ("header.431_572") en ftp://ssd.jpl.nasa.gov/pub/eph/planets/Linux/ README.txt pero el único lugar donde podría encontrarlos en "forma de tabla" es en mi propio repositorio 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 guiones 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 estrechamente con los de HORIZONTES:

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

barrycarter
fuente