Hay dos métodos principales para simular la gravedad entre dos objetos individuales (partículas) en estas simulaciones:
1) Cálculo directo de la atracción gravitacional entre cada par de partículas. Esto conduce a N * (N-1) cálculos por paso de tiempo, donde N es el número total de partículas. Si bien este método es el más preciso, si desea simular una gran cantidad de partículas, esto se sale de las manos rápidamente, y su código tardaría bastante tiempo en terminar de ejecutarse. Como se mencionó en User-9479463705020282020, se usa un código de árbol para disminuir esencialmente el número total de cálculos que tiene que hacer en cada paso del tiempo al tratar las partículas lejanas como una masa puntual individual. Esto acelera significativamente su código hasta el punto donde los cálculos por paso de tiempo ahora son del orden N * log (N). Si bien el método descrito en el documento de Barnes & Hut está un poco desactualizado, existen varios códigos que utilizan versiones actualizadas para realizar simulaciones cosmológicas, como PKDGRAV (PKDGRAV Performance Testing). Sentí la necesidad de conectarlo, ya que este es el código que estoy usando actualmente para simular la dinámica de los asteroides.
2) El otro método es usar una cuadrícula (o código de malla). Con los códigos de cuadrícula, usted subdivide su espacio de simulación en una estructura de cuadrícula, y esencialmente calcula la cantidad de masa encontrada dentro de cada una de estas cuadrículas. Luego encontraría la atracción gravitatoria entre cada célula, como se describe sucintamente por Jay Wacker. Esto reduce la cantidad de cálculos que debe realizar por cada paso de tiempo a aproximadamente [math] N_ {cell} * N_ {cell} [/ math]. Por lo tanto, la aceleración que se obtiene es proporcional a su granularidad (los tamaños individuales de cada celda o el número de puntos de cuadrícula). Por lo tanto, desea ser inteligente al elegir el tamaño de cada celda. El uso de métodos como el refinamiento de malla adaptable permite que la arquitectura de su cuadrícula cambie constantemente dependiendo de la concentración relativa de partículas en el espacio (¡es adaptable!), Optimizando así la cantidad de cálculos que tendría que hacer con cada nuevo paso de tiempo.
Los códigos de cuadrícula son particularmente populares entre las personas que desean simular la dinámica del gas junto con la gravedad, ya que tiene que usar ecuaciones continuas para describir las propiedades relevantes del gas (temperatura, presión, gradientes de velocidad, etc.). Por lo tanto, puede asignar estas propiedades a cada celda. en lugar de generar miles de millones de partículas de gas individuales (por supuesto, esto también se puede hacer, y hay métodos para hacer que esto sea eficiente, ver hidrodinámica de partículas suaves (SPH)).
Un código híbrido SPH / mesh popular utilizado por personas que realizan simulaciones de fusiones de galaxias es GADGET . (Simulaciones cosmológicas con GADGET) El video que mostró se generó usando este código.
- ¿Qué elemento es más complicado de modelar químicamente?
- ¿Cuáles son algunas reflexiones originales sobre preguntas en biología moderna que te interesan y cómo las investigarías?
- ¿Cómo puede un motor lograr una eficiencia energética superior al 50% y también cumplir con la Tercera Ley de Newton?
- ¿Qué dice la ciencia acerca de tomar buenas decisiones?
- ¿Alguien puede darme una estructura e información detallada de la célula animal eucariota?