Resultado del Lattice-bolztmann en tiempo real, siguientes paradas.

Ayer terminé el código lattice que escribo a ratos. La parte del ratón me ha traído de cabeza ¡!
Los resultados no son malos teniendo en cuenta que el procesador empleado es bastante lento… lo que veis es la salida del programa, sin acelerar.
Ahora empieza lo interesante, teniendo una base sólida se puede empezar a construir.
Cosas por hacer:
  1. Optimizar un poco el código. Cosas obvias, bucles, acceso a memoria, replantear algunas partes del código para reducir bucles, etc. También estoy programando en Fortran -sí, Fortran- algunas de las funciones más intensivas sólo por ver la diferencia de rendimiento.
  2. Inyección de humo, tinta, partículas. Esto va a ser divertido.
  3. Puesto que no encuentro alternativa rápida a OpenGL que me permita visualizar en tiempo real los datos (una de las que he considerado es pyqtgraph, pero se vuele pesada para el número de puntos que tengo en mente) creo que voy a emplear CUDA y hacer que la gráfica se encargue de ellos (habrá que ver si no hay un cuello de botella en las transferencias a memoria para que todo sea en tiempo real.
  4. Validar las condiciones de frontera. No sin esfuerzo he tenido acceso a algunos papers y pretendo validar las condiciones para los casos más comunes, cavity y flujo en un conducto.
  5. Hacer algunas comprobaciones para determinar si se cumple correctamente la conservación de la masa. La BC de la salida no se basan como en el CFD tradicional en la presión para poder estabilizar la solución, al menos no directamente, por lo que hay que tener un especial cuidado en que la masa se conserve. Hasta ahora he leído sobre condiciones que determinan un número pseudo-aleatorio para la probabilidad de salida de las partículas de la malla. Tengo curiosidad por ver si realmente funcionan.
  6. Jugar con la turbulencia. Esto lo tendré que tomar con calma. Hay muchas aproximaciones diferentes al problema y no tengo todavía bastante información, sin embargo creo que empezaré por los planteamientos hechos sobre la teoría de Smagorinsky. Sobre el papel es la más sencilla ya que sólo requiere información local para evaluar los tensores viscosos…
  7. Teniendo acceso a una modesta tarjeta para jugar con CUDA, ¿quién se iba a resistir a volver a las andadas?
Esta entrada fue publicada en Aerodinamica, C/C++, Lattice, OpenGL. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s