Hola a todos, antes que nada gracias por visitarme por estos lares, hoy les mostrare una herramienta alternativa a Ansys Fluent/CFX para levara a cabo simulaciones CFD. Se llama OpenFoam, y es una herramienta para Simulación computacional que funciona sobre Ubuntu.
Yo personalmente para agilizar el proceso recomiendo que instales la versión CAElinux (http://caelinux.com/CMS/) la cual puede ser descargada del siguiente torrent, el cual corresponde a la versión que creo es mejor para trabajar con OpenFoam:
https://drive.google.com/file/d/0B-mr7ocqo5IFSnZYbFJ2QnNBcEU/view?usp=sharing
CAElinux es una versión del software Linux, la diferencia con el que se descarga de la página de Ubuntu Linux es que CAE Linux trae preinstalado todo el software que se necesita para hacer ingeniería asistida por computador, de ahí sus siglas (Computer Aided Engineering).
Se ve algo así el ambiente gráfico una vez instalado:
Bueno si ya instalaron CAE Linux entonces es hora de comenzar, en mis anteriores posts comente que es CFD, en este caso trabajaremos nuestra primera simulación CFD sobre la plataforma Ubuntu con el software OpenFoam. Espero a futuro mostrarles algo en fluent que es más sencillo, pero tiene la desventaja de una licencia exageradamente costosa, por tal motivo comenzaré con OpenFoam que es software libre.
La simulación que haremos es la primera que se hace cuando uno está aprendiendo OpenFoam, consiste en un cuadro 2D lleno con agua, y la pared superior se mueve hacia un lado con una velocidad de 1 m/s. el cuadro tiene dimensiones de 0.1 m de lado, corresponde al caso llamado "cavity" y es algo así:
Para comenzar lo que debemos hacer es generar una carpeta de trabajo, con el fin de agilizar nuestros desarrollos CFD, ya que OpenFoam nos brinda esta opción, en este caso debemos crear las siguientes carpetas y subcarpetas: “Nombre de Usuario”/OpenFOAM/“Nombre de Usuario”-2.0.1(que es la versión de OpenFOAM que estemos utilizando)/run
Para guiarte mejor de acuerdo a tu equipo, abre la terminal de OpenFoam de la siguiente forma:
Se abrirá la ventana de la terminal, en la cual teclea el comando “run”, pero recuerda que debe ser en la terminal de OpenFoam no en otra. Y te saldrá un error diciendo que la dirección no se encuentra, esta es la dirección de las carpetas que debes crear:
Ahora debes copiar los tutoriales de OpenFoam en la carpeta “run”, estos tutoriales se encuentran en la siguiente ubicación: FileSystems/Opt/
Simplemente la copiamos en la carpeta “run” que creamos anteriormente:
Cabe recordar que OpenFoam se maneja en buena parte desde la terminal de Ubuntu, por este motivo te recomiendo repasar los comandos básicos de navegación en carpetas. ( en particular cd y ls).
Bueno ahora si a simular, lo primero que haremos es abrir la terminal de OpenFoam, tecleamos el comando “run”, esta vez deberá entrar en esta sin mostrar ningún error. Luego tecleamos el comando “ls”, el cual nos permitirá ver lo que hay dentro de la carpeta, en este caso otra carpeta con el nombre “tutoriales”, así:
Tecleamos ahora le comando: “cd tutoriales” para entrar en esa carpeta así:
Con el comando “ls” podemos ver que contiene la carpeta tutoriales:
Vemos que hay varias carpetas, cada carpeta corresponde a un tipo de sistema. Estos tipos de sistemas son fluidos de varios tipos, compresibles o incompresibles, turbulentos o no, etc, en este caso nuestro sistema corresponde a un fluido incompresible laminar, por esta razón debemos ir a la carpeta “incompressible”. Para ellos tecleamos “cd incompressible”.
Damos “ls” para ver que hay dentro de esa carpeta:
Ahora bien, estas son más subcarpetas, las cuales corresponden a los solvers que maneja OpenFoam, para el caso de flujos incompresibles tenemos los que se ven en la pantalla, el nuestro para el caso del cuadro con la pared superior móvil es icoFoam, así que entramos en la carpeta de este solver tecleando en la terminal el comando: “cd icoFoam”, cuidado con las mayúsculas, ya que el software es muy sensible a estas cosas.
Ahora dentro de IcoFoam damos “ls” para ver qué casos tenemos, el nuestro se llama “cavity, así que entramos en esa carpeta con el comando “cd cavity”.
Con “ls” podemos ver las carpetas que componen todo tipo de simulación en OpenFoam (0, Constant, system), en próximos posts explicare el detalle de cada una en diferentes casos en este momento solo nos interesa saber que deben aparecer estas 3 al menos.
También podemos ir a verlas desde el explorador de archivos, pero no podremos ejecutar el software de simulación si no es desde la terminal. De todas formas a modo exploratorio ahí esta:
Bueno viene lo emocionante, vamos a generar la malla, como es un tutorial ya los datos para la generación de la malla están en las carpetas del caso “cavity” así que lo único que debemos hacer es ejecutar el comando de OpenFoam que toma esta información y genera la malla 3D, así que tecleamos, estando en la carpeta cavity, el siguiente comando “blockMesh”:
Si todo salio bien deberá salir algo así:
Para ver cómo quedó la malla, tecleamos el comando “paraFoam”, este abre un programa llamado ParaView que es para pre y pos procesamiento en CFD ( en mis otros post explico que es pre y pos procesamiento), en este caso nos servirá para visualizar cualitativamente la malla:
Se abre el software, ten un poco de paciencia:
Para ver la malla, simplemente le damos donde dice “apply” y arriba en la cinta de opciones le Seleccionamos en el menú desplegable “Wireframe”.
Y ahí tenemos nuestra malla. Ahora podemos cerrar la ventana de ParaView, no pasa nada.
Volvemos a la terminal ya con nuestra malla vamos a correr el solver, para ello tecleamos el nombre del solver que si recuerdan era icoFoam, en este orden de ideas no debemos hacer más que teclear: “icoFoam”.
Al terminar la simulación deberá aparecer algo así:
Para ver los resultados utilizamos nuevamente nuestro programa ParaView, tecleando “paraFoam”, este software deberá funcionar sin problema, ya que viene preinstalado también con el CAElunix.
Esperamos a que se abra el programa, y damos en ”apply” igual que la vez anterior.
Ahora vamos a ver la velocidad para ello en el menú desplegable seleccionamos el campo de velocidad denotado por la letra “u” como se ve a continuación:
En este momento estamos viendo el primer instante del fenómeno simulado, para poder ver el desarrollo del fenómeno a lo largo del tiempo establecido de la simulación debemos darle play jejeje, esto lo hacemos de la siguiente forma:
Y vemos la velocidad de la siguiente forma:
Ahora puedes seleccionar la presión seleccionando la letra “p” en vez de la letra “u”, la diferencia entre las dos p’s y las dos u’s que aparecen es que las que se ven más suavisadas corresponden a los valores de la variable en los nodos de la malla con los espacios intermedios interpolados y suavizados, mientras que los que se ven como pixelados, son los resultados cuando los miramos en el medio de los elementos de la malla.
Ahondaremos más sobre estos temas menudos y técnicos en futuros posts, espero que les haya gustado, saludos.

Yo personalmente para agilizar el proceso recomiendo que instales la versión CAElinux (http://caelinux.com/CMS/) la cual puede ser descargada del siguiente torrent, el cual corresponde a la versión que creo es mejor para trabajar con OpenFoam:
https://drive.google.com/file/d/0B-mr7ocqo5IFSnZYbFJ2QnNBcEU/view?usp=sharing
CAElinux es una versión del software Linux, la diferencia con el que se descarga de la página de Ubuntu Linux es que CAE Linux trae preinstalado todo el software que se necesita para hacer ingeniería asistida por computador, de ahí sus siglas (Computer Aided Engineering).
Se ve algo así el ambiente gráfico una vez instalado:
Bueno si ya instalaron CAE Linux entonces es hora de comenzar, en mis anteriores posts comente que es CFD, en este caso trabajaremos nuestra primera simulación CFD sobre la plataforma Ubuntu con el software OpenFoam. Espero a futuro mostrarles algo en fluent que es más sencillo, pero tiene la desventaja de una licencia exageradamente costosa, por tal motivo comenzaré con OpenFoam que es software libre.
La simulación que haremos es la primera que se hace cuando uno está aprendiendo OpenFoam, consiste en un cuadro 2D lleno con agua, y la pared superior se mueve hacia un lado con una velocidad de 1 m/s. el cuadro tiene dimensiones de 0.1 m de lado, corresponde al caso llamado "cavity" y es algo así:
Para comenzar lo que debemos hacer es generar una carpeta de trabajo, con el fin de agilizar nuestros desarrollos CFD, ya que OpenFoam nos brinda esta opción, en este caso debemos crear las siguientes carpetas y subcarpetas: “Nombre de Usuario”/OpenFOAM/“Nombre de Usuario”-2.0.1(que es la versión de OpenFOAM que estemos utilizando)/run
Para guiarte mejor de acuerdo a tu equipo, abre la terminal de OpenFoam de la siguiente forma:
Se abrirá la ventana de la terminal, en la cual teclea el comando “run”, pero recuerda que debe ser en la terminal de OpenFoam no en otra. Y te saldrá un error diciendo que la dirección no se encuentra, esta es la dirección de las carpetas que debes crear:
Ahora debes copiar los tutoriales de OpenFoam en la carpeta “run”, estos tutoriales se encuentran en la siguiente ubicación: FileSystems/Opt/
Simplemente la copiamos en la carpeta “run” que creamos anteriormente:
Cabe recordar que OpenFoam se maneja en buena parte desde la terminal de Ubuntu, por este motivo te recomiendo repasar los comandos básicos de navegación en carpetas. ( en particular cd y ls).
Bueno ahora si a simular, lo primero que haremos es abrir la terminal de OpenFoam, tecleamos el comando “run”, esta vez deberá entrar en esta sin mostrar ningún error. Luego tecleamos el comando “ls”, el cual nos permitirá ver lo que hay dentro de la carpeta, en este caso otra carpeta con el nombre “tutoriales”, así:
Tecleamos ahora le comando: “cd tutoriales” para entrar en esa carpeta así:
Con el comando “ls” podemos ver que contiene la carpeta tutoriales:
Vemos que hay varias carpetas, cada carpeta corresponde a un tipo de sistema. Estos tipos de sistemas son fluidos de varios tipos, compresibles o incompresibles, turbulentos o no, etc, en este caso nuestro sistema corresponde a un fluido incompresible laminar, por esta razón debemos ir a la carpeta “incompressible”. Para ellos tecleamos “cd incompressible”.
Damos “ls” para ver que hay dentro de esa carpeta:
Ahora bien, estas son más subcarpetas, las cuales corresponden a los solvers que maneja OpenFoam, para el caso de flujos incompresibles tenemos los que se ven en la pantalla, el nuestro para el caso del cuadro con la pared superior móvil es icoFoam, así que entramos en la carpeta de este solver tecleando en la terminal el comando: “cd icoFoam”, cuidado con las mayúsculas, ya que el software es muy sensible a estas cosas.
Ahora dentro de IcoFoam damos “ls” para ver qué casos tenemos, el nuestro se llama “cavity, así que entramos en esa carpeta con el comando “cd cavity”.
Con “ls” podemos ver las carpetas que componen todo tipo de simulación en OpenFoam (0, Constant, system), en próximos posts explicare el detalle de cada una en diferentes casos en este momento solo nos interesa saber que deben aparecer estas 3 al menos.
También podemos ir a verlas desde el explorador de archivos, pero no podremos ejecutar el software de simulación si no es desde la terminal. De todas formas a modo exploratorio ahí esta:
Bueno viene lo emocionante, vamos a generar la malla, como es un tutorial ya los datos para la generación de la malla están en las carpetas del caso “cavity” así que lo único que debemos hacer es ejecutar el comando de OpenFoam que toma esta información y genera la malla 3D, así que tecleamos, estando en la carpeta cavity, el siguiente comando “blockMesh”:
Si todo salio bien deberá salir algo así:
Para ver cómo quedó la malla, tecleamos el comando “paraFoam”, este abre un programa llamado ParaView que es para pre y pos procesamiento en CFD ( en mis otros post explico que es pre y pos procesamiento), en este caso nos servirá para visualizar cualitativamente la malla:
Se abre el software, ten un poco de paciencia:
Para ver la malla, simplemente le damos donde dice “apply” y arriba en la cinta de opciones le Seleccionamos en el menú desplegable “Wireframe”.
Y ahí tenemos nuestra malla. Ahora podemos cerrar la ventana de ParaView, no pasa nada.
Volvemos a la terminal ya con nuestra malla vamos a correr el solver, para ello tecleamos el nombre del solver que si recuerdan era icoFoam, en este orden de ideas no debemos hacer más que teclear: “icoFoam”.
Al terminar la simulación deberá aparecer algo así:
Para ver los resultados utilizamos nuevamente nuestro programa ParaView, tecleando “paraFoam”, este software deberá funcionar sin problema, ya que viene preinstalado también con el CAElunix.
Esperamos a que se abra el programa, y damos en ”apply” igual que la vez anterior.
Ahora vamos a ver la velocidad para ello en el menú desplegable seleccionamos el campo de velocidad denotado por la letra “u” como se ve a continuación:
En este momento estamos viendo el primer instante del fenómeno simulado, para poder ver el desarrollo del fenómeno a lo largo del tiempo establecido de la simulación debemos darle play jejeje, esto lo hacemos de la siguiente forma:
Y vemos la velocidad de la siguiente forma:
Ahora puedes seleccionar la presión seleccionando la letra “p” en vez de la letra “u”, la diferencia entre las dos p’s y las dos u’s que aparecen es que las que se ven más suavisadas corresponden a los valores de la variable en los nodos de la malla con los espacios intermedios interpolados y suavizados, mientras que los que se ven como pixelados, son los resultados cuando los miramos en el medio de los elementos de la malla.
Ahondaremos más sobre estos temas menudos y técnicos en futuros posts, espero que les haya gustado, saludos.
