En el presente tutorial se utilizará OpenFOAM para la simulación de un caso hipotético, este caso constará de una malla dinámica, la cual rotará sobre su propio eje y modificará los campos de velocidad y presión en la zona de estudio, para ello se realizarán configuraciones adicionales que vienen dentro de los solucionadores de OpenFOAM pero que se deben configurar.
Acerca del solucionador
OpenFOAM es un paquete de software libre, usado ampliamente por muchas áreas de la ingeniería y ciencia, posee una extensa biblioteca de solucionadores los cuales cumplen la función de discretizar las ecuaciones de Navier-Stokes.
El presente modelo usa diferentes librerías adicionales las cuales le agregan características al modelo, estas librerías son propias de OpenFOAM y se acoplan según lo que necesitemos.
El solucionador base se denomina pimpleDyMFoam, el cual es una implementación del solucionador de pimpleFoam que permite mallas dinámicas. Como pimpleFoam, el solucionador es transitorio, lo que permite pasos de tiempo relativamente grandes gracias al algoritmo híbrido PISO-SIMPLE (PIMPLE).
El algoritmo PIMPLE es una combinación de PISO(Pressure Implicit with Splitting of Operator) y de SIMPLE (Semi-Implicit Method for Pressure-Linked Equations). Estos algoritmos son iterativos pero PISO y PIMPLE son transientes mientras que SIMPLE es usado para estados estacionarios.
La mejor forma de entender este algoritmo es pensado que PIMPLE es el solucionador SIMPLE para cada salto de tiempo, donde correctores externos son los iteradores y una vez cubiertos pasarán al siguiente tiempo hasta que la solución este completa, originando así en PIMPLE mayor estabilidad, especialmente cuando se enfrente a mayores saltos de tiempo en el cual se quiera preservar el numero de Courant bajo valores normales o la naturaleza del problema es inestable.
El numero de correctores externos definen cuantas iteraciones exteriores desarrollar, en otras palabras cuantas veces el sistema de ecuaciones será desarrollado antes de que se mueva al siguiente salto de tiempo, sin consideración de que la solución este cubierta para ese salto de tiempo. Este numero no significa que correrá las equivalentes iteraciones, esto únicamente hará de que itere hasta que se cubra el salto de tiempo, siendo el criterio para la convergencia el valor absoluto de tolerancia, esto causa mayor estabilidad cuando la solución sea complicada. Para OpenFOAM cuando el número por defecto es 2 pero se recomienda correr en un rango entre 50 – 1000 iteraciones
Características del escenario
El presente escenario simulado corresponde a un túnel de ventilación que contiene una hélice que gira sobre su propio eje, al realizar esta actividad modifica los campos de velocidad y presión establecidos en el escenario, esto de acuerdo al movimiento, pudiendo así visualizar la interacción de la grilla dinámica con el solucionador base.
Condiciones Iniciales del modelo
La simulación se realiza con el solucionador pimpleDyMFoam, para lo cual se establecen las condiciones de borde iniciales con un archivo base de extensión .UNV el cual entregará una región en forma de prisma rectangular, posteriormente se contará con 2 archivos de extensión .STL, los cuales serán introducidos mediante SnappyHexMesh, produciendo una grilla estructurada en los exteriores de esta geometría y produciendo así la forma necesaria para el caso de estudio.
La simulación tiene una longitud de 10 segundos los cuales están siendo desarrollados con saltos de tiempo equivalentes a 0.0001 segundos y con intervalos de escritura equivalente a 0.1. la velocidad de flujo estará dominado por 2 “inlets” los cuales tienen velocidades correspondientes a 0.08 y 0.65 en dirección de eje z positivo.
Para lograr el movimiento se necesita del archivo “dynamicMeshDict”, el cual especifica las zonas de las celdas, la función de rotación y los coeficientes de rotación que se implementarán.
Consideraciones
Esta simulación corresponde a una simulación compleja y que requiere bastante tiempo computacional, es recomendable correr la simulación en un entorno Linux y correrla en paralelo. OpenFOAM tiene bien implementado y documentado el movimiento de las mallas dinámicas de este modo, se pueden agregar otros tipos de movimientos que son complejos y necesitan mucho tiempo y recursos para desarrollarse.