Simulación de N-cuerpos

format_list_bulleted Contenido keyboard_arrow_down
ImprimirCitar
An N- simulación corporal de la formación cosmológica de un racimo de galaxias en un universo en expansión

En física y astronomía, una simulación de N cuerpos es una simulación de un sistema dinámico de partículas, generalmente bajo la influencia de fuerzas físicas, como la gravedad (consulte el problema de n cuerpos para otras aplicaciones). Las simulaciones de N cuerpos son herramientas ampliamente utilizadas en astrofísica, desde la investigación de la dinámica de sistemas de pocos cuerpos como el sistema Tierra-Luna-Sol hasta la comprensión de la evolución de la estructura a gran escala del universo. En cosmología física, las simulaciones de N cuerpos se utilizan para estudiar procesos de formación de estructuras no lineales, como filamentos de galaxias y halos de galaxias, a partir de la influencia de la materia oscura. Las simulaciones directas de N cuerpos se utilizan para estudiar la evolución dinámica de cúmulos estelares.

Naturaleza de las partículas

Las "partículas" tratadas por la simulación pueden o no corresponder a objetos físicos que son de naturaleza particulada. Por ejemplo, una simulación de N cuerpos de un cúmulo de estrellas podría tener una partícula por estrella, por lo que cada partícula tiene algún significado físico. Por otro lado, una simulación de una nube de gas no puede permitirse el lujo de tener una partícula por cada átomo o molécula de gas, ya que esto requeriría del orden de 1023 partículas por cada mol de material (véase la constante de Avogadro), por lo que una única "partícula" representaría una cantidad mucho mayor de gas (que a menudo se implementa utilizando hidrodinámica de partículas suavizadas). Esta cantidad no necesita tener ningún significado físico, pero debe elegirse como un compromiso entre la precisión y los requisitos informáticos manejables.

simulación de materia oscura

La materia oscura desempeña un papel importante en la formación de las galaxias. La evolución temporal de la densidad f (en el espacio de fases) de las partículas de materia oscura se puede describir mediante la ecuación de Boltzmann sin colisiones.

En la ecuación, es la velocidad, y ⋅ es el potencial gravitacional dado por la Ecuación de Poisson. Estas dos ecuaciones acopladas se resuelven en un Universo de fondo en expansión, que se rige por las ecuaciones Friedmann, después de determinar las condiciones iniciales de partículas de materia oscura. El método convencional empleado para inicializar posiciones y velocidades de partículas de materia oscura implica mover partículas dentro de una celosa cartesiana uniforme o una configuración de partículas similares a vidrio. Esto se hace utilizando una aproximación de teoría lineal o una teoría de perturbación de bajo orden.

gravitacional directa simulaciones del cuerpo

simulación del cuerpo N de 400 objetos con parámetros cercanos a los planetas del Sistema Solar

En las simulaciones gravitacionales directas de N cuerpos, las ecuaciones de movimiento de un sistema de N partículas bajo la influencia de sus fuerzas gravitacionales mutuas se integran numéricamente sin ninguna aproximación simplificadora. Estos cálculos se utilizan en situaciones en las que las interacciones entre objetos individuales, como estrellas o planetas, son importantes para la evolución del sistema.

La primera gravitación directa N- simulaciones corporales fueron realizadas por Erik Holmberg en el Observatorio Lund en 1941, determinando las fuerzas entre estrellas en encontrar galaxias a través de la equivalencia matemática entre la propagación de la luz y la interacción gravitacional: poniendo bombillas en las posiciones de las estrellas y midiendo los flujos de luz direccional en las posiciones de las estrellas por una célula fotográfica, las ecuaciones de movimiento pueden integrarse con esfuerzo. Las primeras simulaciones puramente calculadas fueron hechas por Sebastian von Hoerner en el Rechen-Institut de Astronomisches en Heidelberg, Alemania. Sverre Aarseth en la Universidad de Cambridge (Reino Unido) ha dedicado toda su vida científica al desarrollo de una serie de N- códigos corporales para aplicaciones astrofísicas que utilizan pasos de tiempo adaptables (hierarcales), un esquema vecino Ahmad-Cohen y regularización de encuentros cercanos. La regularización es un truco matemático para eliminar la singularidad en la ley Newtoniana de la gravedad para dos partículas que se acercan mutuamente arbitrariamente. Los códigos de Sverre Aarseth se utilizan para estudiar la dinámica de los grupos estelares, los sistemas planetarios y los núcleos galácticos.

Simulaciones de relatividad general

Muchas simulaciones son lo suficientemente grandes como para que los efectos de la relatividad general en el establecimiento de una cosmología de Friedmann-Lemaitre-Robertson-Walker sean significativos. Esto se incorpora en la simulación como una medida evolutiva de la distancia (o factor de escala) en un sistema de coordenadas comóviles, lo que hace que las partículas se desaceleren en coordenadas comóviles (así como debido al desplazamiento al rojo de su energía física). Sin embargo, las contribuciones de la relatividad general y la velocidad finita de la gravedad pueden ignorarse de otra manera, ya que las escalas de tiempo dinámicas típicas son largas en comparación con el tiempo de cruce de la luz para la simulación, y la curvatura del espacio-tiempo inducida por las partículas y las velocidades de las partículas son pequeñas. Las condiciones de contorno de estas simulaciones cosmológicas suelen ser periódicas (o toroidales), de modo que un borde del volumen de simulación coincide con el borde opuesto.

Optimizaciones de cálculo

Las simulaciones de N cuerpos son simples en principio, porque implican simplemente la integración de las 6N ecuaciones diferenciales ordinarias que definen los movimientos de partículas en la gravedad newtoniana. En la práctica, el número N de partículas involucradas es generalmente muy grande (las simulaciones típicas incluyen muchos millones, la simulación Millennium incluía diez mil millones) y el número de interacciones partícula-partícula que se necesitan calcular aumenta en el orden de N2, por lo que la integración directa de las ecuaciones diferenciales puede ser prohibitivamente costosa en términos computacionales. Por lo tanto, se utilizan comúnmente una serie de mejoras.

La integración numérica se realiza generalmente en pasos de tiempo pequeños utilizando un método como la integración de salto de rana. Sin embargo, toda integración numérica conduce a errores. Los pasos más pequeños dan menos errores pero se ejecutan más lentamente. La integración de salto de rana es aproximadamente de segundo orden en el paso de tiempo; otros integradores, como los métodos de Runge-Kutta, pueden tener una precisión de cuarto orden o mucho mayor.

Uno de los refinamientos más simples es que cada partícula lleva consigo su propia variable de paso de tiempo, de modo que las partículas con tiempos dinámicos muy diferentes no tienen que evolucionar todas hacia adelante al ritmo de la que tiene el tiempo más corto.

Existen dos esquemas de aproximación básicos para reducir el tiempo computacional de dichas simulaciones. Estos pueden reducir la complejidad computacional a O(N log N) o mejor, con pérdida de precisión.

Métodos de árbol

En los métodos de árboles, como la simulación de Barnes-Hut, se suele utilizar un octree para dividir el volumen en celdas cúbicas y solo es necesario tratar individualmente las interacciones entre partículas de celdas cercanas; las partículas de celdas distantes se pueden tratar colectivamente como una única partícula grande centrada en el centro de masa de la celda distante (o como una expansión multipolar de orden bajo). Esto puede reducir drásticamente la cantidad de interacciones entre pares de partículas que se deben calcular. Para evitar que la simulación se vea inundada por el cálculo de interacciones entre partículas, las celdas se deben refinar a celdas más pequeñas en partes más densas de la simulación que contengan muchas partículas por celda. Para las simulaciones en las que las partículas no están distribuidas de manera uniforme, los métodos de descomposición de pares bien separados de Callahan y Kosaraju producen un tiempo O(n log n) óptimo por iteración con dimensión fija.

Método de malla de partículas

Otra posibilidad es el método de malla de partículas, en el que el espacio se discretiza en una malla y, a los efectos de calcular el potencial gravitacional, se supone que las partículas se dividen entre los vértices 2x2 circundantes de la malla. La energía potencial Φ se puede encontrar con la ecuación de Poisson.

Donde G es la constante de Newton y es la densidad (número de partículas en los puntos de malla). La rápida transformación Fourier puede resolver esto eficientemente yendo al dominio de frecuencia donde la ecuación Poisson tiene la forma simple

Donde es el número de onda comoving y los sombreros denote Fourier transforma. Desde , el campo gravitacional ahora se puede encontrar multiplicando por y computar la inversa transformación Fourier (o computar la transformación inversa y luego utilizar otro método). Dado que este método está limitado por el tamaño de la malla, en la práctica una malla más pequeña o alguna otra técnica (como combinar con un árbol o algoritmo de partículas simples) se utiliza para calcular las fuerzas de pequeña escala. A veces se utiliza una malla adaptativa, en la que las células de malla son mucho más pequeñas en las regiones más densas de la simulación.

Optimizaciones especiales

Se utilizan varios algoritmos de perturbación gravitacional diferentes para obtener estimaciones bastante precisas de la trayectoria de los objetos en el Sistema Solar.

La gente suele decidir poner un satélite en una órbita congelada. La trayectoria de un satélite que orbita cerca de la Tierra se puede modelar con precisión partiendo de la órbita elíptica de dos cuerpos alrededor del centro de la Tierra y añadiendo pequeñas correcciones debido a la achatación de la Tierra, la atracción gravitatoria del Sol y la Luna, la resistencia atmosférica, etc. Es posible encontrar una órbita congelada sin calcular la trayectoria real del satélite.

La trayectoria de un planeta pequeño, un cometa o una nave espacial de largo alcance se puede modelar con precisión a partir de la órbita elíptica de dos cuerpos alrededor del Sol y agregando pequeñas correcciones a partir de la atracción gravitatoria de los planetas más grandes en sus órbitas conocidas.

Algunas características de las trayectorias a largo plazo de un sistema de partículas se pueden calcular directamente. La trayectoria real de cualquier partícula en particular no necesita calcularse como un paso intermedio. Dichas características incluyen la estabilidad de Lyapunov, el tiempo de Lyapunov, varias mediciones de la teoría ergódica, etc.

Sistemas de dos partículas

Aunque en las simulaciones típicas hay millones o miles de millones de partículas, normalmente corresponden a una partícula real con una masa muy grande, normalmente 109 masas solares. Esto puede introducir problemas con las interacciones de corto alcance entre las partículas, como la formación de sistemas binarios de dos partículas. Como las partículas están pensadas para representar grandes cantidades de partículas de materia oscura o grupos de estrellas, estos sistemas binarios no son físicos. Para evitarlo, se utiliza una ley de fuerza newtoniana suavizada, que no diverge como el radio del cuadrado inverso en distancias cortas. La mayoría de las simulaciones implementan esto de forma bastante natural al ejecutar las simulaciones en celdas de tamaño finito. Es importante implementar el procedimiento de discretización de tal forma que las partículas siempre ejerzan una fuerza de desaparición sobre sí mismas.

Suacción

El suavizado es un truco numérico utilizado en las técnicas de N-cuerpos para evitar divergencias numéricas cuando una partícula se acerca demasiado a otra (y la fuerza tiende al infinito). Esto se obtiene modificando el potencial gravitatorio regularizado de cada partícula como

(más de 1/r) donde es el parámetro de suavidad. El valor del parámetro de suavizado debe establecerse lo suficientemente pequeño como para mantener las simulaciones realistas.

Resultados de simulaciones del cuerpo N

Las simulaciones de N cuerpos arrojan resultados sobre la distribución de materia oscura a gran escala y la estructura de los halos de materia oscura. Según las simulaciones de materia oscura fría, la distribución general de materia oscura a gran escala no es completamente uniforme. En cambio, muestra una estructura que se asemeja a una red, compuesta de huecos, paredes, filamentos y halos. Además, las simulaciones muestran que la relación entre la concentración de halos y factores como la masa, el espectro de fluctuación inicial y los parámetros cosmológicos está vinculada al tiempo real de formación de los halos. En particular, los halos con menor masa tienden a formarse antes y, como resultado, tienen mayores concentraciones debido a la mayor densidad del Universo en el momento de su formación. Se ha descubierto que las formas de los halos se desvían de ser perfectamente esféricas. Por lo general, los halos se alargan y se vuelven cada vez más alargados hacia sus centros. Sin embargo, las interacciones entre la materia oscura y los bariones afectarían a la estructura interna de los halos de materia oscura. Se necesitan simulaciones que modelen tanto la materia oscura como los bariones para estudiar estructuras a pequeña escala.

Incorporación de baryones, leptones y fotones en simulaciones

Muchas simulaciones simulan únicamente materia oscura fría y, por lo tanto, incluyen únicamente la fuerza gravitatoria. La incorporación de bariones, leptones y fotones en las simulaciones aumenta drásticamente su complejidad y, a menudo, es necesario realizar simplificaciones radicales de la física subyacente. Sin embargo, se trata de un área extremadamente importante y muchas simulaciones modernas están tratando de comprender los procesos que ocurren durante la formación de galaxias que podrían explicar el sesgo galáctico.

Computacional complejidad

Reif y Tate demuestran que si el problema de alcanzabilidad de n-cuerpos se define de la siguiente manera: dados n cuerpos que satisfacen una ley de potencial electrostático fija, determinar si un cuerpo alcanza una bola de destino en un límite de tiempo dado donde requerimos una precisión de poli(n) bits y el tiempo objetivo es poli(n) está en PSPACE.

Por otra parte, si la pregunta es si el cuerpo finalmente llega a la bola de destino, el problema es complejo para PSPACE. Estos límites se basan en límites de complejidad similares obtenidos para el trazado de rayos.

Ejemplos

Boilerplate común Código

La implementación más simple de simulaciones del cuerpo N donde es una propagación ingenua de los cuerpos orbitantes; ingenuo implicando que las únicas fuerzas que actúan en los cuerpos orbitales es la fuerza gravitacional que ejercen sobre el otro. En lenguajes de programación orientados a objetos, como C++, algún código de caldera es útil para establecer las estructuras matemáticas fundamentales, así como los contenedores de datos necesarios para la propagación; a saber, vectores estatales, y por lo tanto vectores, y algún objeto fundamental que contenga estos datos, así como la masa de un cuerpo orbitante. Este método también es aplicable a otros tipos de simulaciones del cuerpo N; una simulación de masas de puntos con cargas utilizaría un método similar, sin embargo la fuerza sería debido a atracción o repulsión por interacción de campos eléctricos. Independientemente, la aceleración de la partícula es un resultado de vectores de fuerza resumidos, divididos por la masa de la partícula:

Un ejemplo de un método programáticamente estable y escalable para contener datos cinemáticos de una partícula es el uso de matrices de longitud fija, que en código optimizado permite una fácil asignación de memoria y predicción de recursos consumidos; como se ve en el siguiente código C++:

struct Vector3{} doble e[3] = {} 0 }; Vector3() {} ~Vector3() {} inline Vector3()doble E0, doble e1, doble e2) {} esto- No.e[0] = E0; esto- No.e[1] = e1; esto- No.e[2] = e2; }};struct Entidad orbital{} doble e[7] = {} 0 }; Entidad orbital() {} ~Entidad orbital() {} inline Entidad orbital()doble E0, doble e1, doble e2, doble e3, doble e4, doble e5, doble e6) {} esto- No.e[0] = E0; esto- No.e[1] = e1; esto- No.e[2] = e2; esto- No.e[3] = e3; esto- No.e[4] = e4; esto- No.e[5] = e5; esto- No.e[6] = e6; }};

Tenga en cuenta que OrbitalEntity contiene suficiente espacio para un vector de estado, donde:

  • , la proyección del vector de posición de objetos en el espacio cartesiano
  • , la proyección del vector de posición de objetos en el espacio cartesiano
  • , la proyección del vector de posición de objetos en el espacio cartesiano
  • , la proyección del vector de velocidad de objetos en el espacio cartesiano
  • , la proyección del vector de velocidad de objetos en el espacio cartesiano
  • , la proyección del vector de velocidad de objetos en el espacio cartesiano

Además, OrbitalEntity contiene suficiente espacio para un valor de masa.

Iniciación de parámetros de simulación

Comúnmente, las simulaciones del cuerpo N serán sistemas basados en algún tipo de ecuaciones de movimiento; de estos, la mayoría dependerá de alguna configuración inicial para "seguir" la simulación. En sistemas como los que dependen de algún potencial gravitacional o eléctrico, la fuerza en una entidad de simulación es independiente en su velocidad. Por lo tanto, para la semilla Fuerzas de la simulación, sólo se necesitan posiciones iniciales, pero esto no permitirá la propagación- las velocidades iniciales son necesarias. Considere un planeta orbitando una estrella- no tiene movimiento, pero está sujeto a atracción gravitacional a su estrella anfitriona. A medida que avanza el tiempo, y el tiempo pasos se añaden, se acumulará velocidad según su aceleración. Por un instante dado en el tiempo, , la aceleración resultante de un cuerpo debido a sus masas vecinas es independiente de su velocidad, sin embargo, por el paso del tiempo , el cambio resultante en la posición es significativamente diferente debido a la dependencia inherente de la propagación de la velocidad. En los mecanismos básicos de propagación, como el método de euler simple que se utiliza a continuación, la posición de un objeto en sólo depende de su velocidad a , ya que el cambio de posición se calcula a través

Sin aceleración, es estática, sin embargo, desde la perspectiva de un observador que sólo ve posición, tomará dos pasos para ver un cambio de velocidad.

Se puede lograr una simulación similar a la del sistema solar tomando las distancias promedio de masas puntuales equivalentes a planetas desde una estrella central. Para simplificar el código, se utilizará un enfoque no riguroso basado en semiejes mayores y velocidades medias. Se debe reservar espacio de memoria para estos cuerpos antes de configurarlos; para permitir la escalabilidad, se puede utilizar un comando malloc:

Entidad orbital* orbital_entidades = malloc()tamaño()Entidad orbital) * ()9 + N_ASTEROIDS));orbital_entidades[0] = {} 0,0,0,0,0,0, 0,0,0,0,0,0, 1.989e30 }; // una estrella similar al solorbital_entidades[1] = {} 57.909e9,0,0,0,0, 0,0,47.36e3,0,0, 0,3011e24 }; // un planeta similar al mercurioorbital_entidades[2] = {} 108.209e9,0,0,0,0, 0,0,35.02e3,0,0, 4.8675e24 }; // un planeta similar al venusorbital_entidades[3] = {} 149.596e9,0,0,0,0, 0,0,29.78e3,0,0, 5.9724e24 }; // un planeta similar a la tierraorbital_entidades[4] = {} 227.923e9,0,0,0,0, 0,0,24.07e3,0,0, 0.64171e24 }; // un planeta similar a Marteorbital_entidades[5] = {} 778.570e9,0,0,0,0, 0,0,13e3,0,0, 1898.19e24 }; // un planeta similar a Júpiterorbital_entidades[6] = {} 1433.529e9,0,0,0,0, 0,0,9.68e3,0,0, 568.34e24 }; // un planeta similar al saturnorbital_entidades[7] = {} 2872.463e9,0,0,0,0, 0,0,6.80e3,0,0, 86.813e24 }; // un planeta similar al Uranoorbital_entidades[8] = {} 4495.060e9,0,0,0,0, 0,0,5.43e3,0,0, 102.413e24 }; // un planeta similar al neptuno

Donde N_ASTEROIDS es una variable que permanecerá a 0 temporalmente, pero permite la futura inclusión de un número significativo de asteroides, a discreción de los usuarios. Un paso crítico para la configuración de simulaciones es establecer los rangos de tiempo de la simulación, a , así como el paso del tiempo incremental que progresará la simulación hacia adelante:

doble T_0 = 0;doble t = T_0;doble  = 86400;doble t_end = 86400 * 365 * 10; // aproximadamente una década en segundosdoble BIG_G = 6.67e-11; // constante gravitacional

Las posiciones y velocidades establecidas anteriormente se interpretan correctas para .

El alcance de una simulación sería lógicamente para el período en que .

Propagación

Una simulación completa puede constar de cientos, miles, millones, miles de millones o, a veces, billones de pasos de tiempo. En el nivel elemental, cada paso de tiempo (para simulaciones con partículas que se mueven debido a fuerzas ejercidas sobre ellas) implica

  • calculando las fuerzas en cada cuerpo
  • calcular las aceleraciones de cada cuerpo ()
  • calculando las velocidades de cada cuerpo (
  • calcular la nueva posición de cada cuerpo (

Lo anterior se puede implementar simplemente con un lazo que continúa mientras existe en el rango mencionado:

mientras ()t c) t_end){} para ()size_t m1_idx = 0; m1_idx c) 9 + N_ASTEROIDS; m1_idx++) {}  Vector3 a_g = {} 0,0,0 }; para ()size_t m2_idx = 0; m2_idx c) 9 + N_ASTEROIDS; m2_idx++) {} si ()m2_idx ! m1_idx) {} Vector3 r_vector; r_vector.e[0] = orbital_entidades[m1_idx].e[0] - orbital_entidades[m2_idx].e[0]; r_vector.e[1] = orbital_entidades[m1_idx].e[1] - orbital_entidades[m2_idx].e[1]; r_vector.e[2] = orbital_entidades[m1_idx].e[2] - orbital_entidades[m2_idx].e[2]; doble r_mag = Sqrt() r_vector.e[0] * r_vector.e[0] + r_vector.e[1] * r_vector.e[1] + r_vector.e[2] * r_vector.e[2]); doble aceleración = -1.0 * BIG_G * ()orbital_entidades[m2_idx].e[6]) / pow()r_mag, 2.0); Vector3 r_unit_vector = {} r_vector.e[0] / r_mag, r_vector.e[1] / r_mag, r_vector.e[2] / r_mag }; a_g.e[0] += aceleración * r_unit_vector.e[0]; a_g.e[1] += aceleración * r_unit_vector.e[1]; a_g.e[2] += aceleración * r_unit_vector.e[2]; } } orbital_entidades[m1_idx].e[3] += a_g.e[0] * ; orbital_entidades[m1_idx].e[4] += a_g.e[1] * ; orbital_entidades[m1_idx].e[5] += a_g.e[2] * ; } para ()size_t entity_idx = 0; entity_idx c) 9 + N_ASTEROIDS; entity_idx++) {} orbital_entidades[entity_idx].e[0] += orbital_entidades[entity_idx].e[3] * ; orbital_entidades[entity_idx].e[1] += orbital_entidades[entity_idx].e[4] * ; orbital_entidades[entity_idx].e[2] += orbital_entidades[entity_idx].e[5] * ; }  t += ;}

Al centrarnos en los cuatro planetas rocosos interiores de la simulación, las trayectorias resultantes de la propagación anterior se muestran a continuación:

Véase también

  • Millennium Run – simulación informática del universo
  • Estructura a gran escala del cosmos – Todo el espacio observable de la Tierra en el presente
  • GADGET – Software informático para simulaciones cosmológicas
  • Formación Galaxy y evolución
  • Unidades naturales – Unidades de medición basadas en constantes físicas universales
  • Virgo Consortium
  • Simulación Barnes-Hut – algoritmo de aproximación para el problema del cuerpo
  • Simulación cosmológica Bolshoi – simulación computarizada del universo

Referencias

  1. ^ Trenti, Michele; Hut, Piet (2008). "N-body simulations (gravitational)". Scholarpedia. 3 (5): 3930. Código:2008SchpJ...3.3930T doi:10.4249/scholarpedia.3930.
  2. ^ C.M.Baugh; E.Gaztañaga; G. Efstathiou (1995). "Una comparación de la evolución de campos de densidad en teoría de perturbaciones y simulaciones numéricas - II. Análisis de cuentas en celdas". Avisos mensuales de la Royal Astronomical Society. arXiv:astro-ph/9408057. doi:10.1093/mnras/274.4.1049. eISSN 1365-2966.
  3. ^ Jenkins, Adrian (21 de abril de 2010). "Second-order Lagrangian perturbation theory initial conditions for resimulations". Avisos mensuales de la Royal Astronomical Society. 403 (4): 1859-1872. arXiv:0910.0258. Bibcode:2010 MNRAS.403.1859J. doi:10.1111/j.1365-2966.2010.16259.x. eISSN 1365-2966. ISSN 0035-8711.
  4. ^ Holmberg, Erik (1941). "En las Tendencias de Rastreo entre las Nebulosas. II. un Estudio de Encuentros entre Modelos de Laboratorio de Sistemas Estelares por un Nuevo Procedimiento de Integración". The Astrophysical Journal. 94 (3): 385-395. Bibcode:1941ApJ....94..385H. doi:10.1086/144344.
  5. ^ Navarro, Julio F.; Frenk, Carlos S.; White, Simon D. M. (diciembre de 1997). "A Universal Density Profile from Hierarchical Clustering". The Astrophysical Journal. 490 (2): 493–508. arXiv:astro-ph/9611107. Bibcode:1997ApJ...490..493N. doi:10.1086/304888. eISSN 1538-4357. ISSN 0004-637X.
  6. ^ John H. Reif; Stephen R. Tate (1993). "La complejidad de la simulación del cuerpo". Automata, Idiomas y Programación. Lecture Notes in Computer Science. pp. 162–176. CiteSeerX 10.1.1.38.6242.

Más lectura

  • von Hoerner, Sebastian (1960). "Die numerische Integration des n-Körper-Problemes für Sternhaufen. I". Zeitschrift für Astrophysik (en alemán). 50: 184. Bibcode:1960ZA....50..184V.
  • von Hoerner, Sebastian (1963). "Die numerische Integration des n-Körper-Problemes für Sternhaufen. II". Zeitschrift für Astrophysik (en alemán). 57: 47. Bibcode:1963ZA....57...47V.
  • Aarseth, Sverre J. (2003). Gravitacional N- el cuerpo simula: Herramientas y algoritmos. Cambridge University Press. ISBN 978-0-521-12153-8.
  • Bertschinger, Edmund (1998). "Simulaciones de formación de estructuras en el universo". Annual Review of Astronomy and Astrophysics. 36 (1): 599–654. Código:1998ARA plagaA..36..599B. doi:10.1146/annurev.astro.36.1.599.
  • Binney, James; Tremaine, Scott (1987). Dinámica Galáctica. Princeton University Press. ISBN 978-0-691-08445-9.
  • Callahan, Paul B.; Kosaraju, Sambasiva Rao (1992). "Una descomposición de conjuntos de puntos multidimensionales con aplicaciones a k-asrest-neighbors and n-body potential fields (preliminary version)". STOC '92: Proc. ACM Symp. Teoría de Computación. ACM..
Más resultados...
Tamaño del texto:
  • Copiar
  • Editar
  • Resumir
undoredo
format_boldformat_italicformat_underlinedstrikethrough_ssuperscriptsubscriptlink
save