DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

58
1 DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS EN EL MÉTODO DE LATTICE BOLTZMANN PARA LA SIMULACIÓN DEL FENÓMENO DE CAVITACIÓN. Autor: Héctor Darío Bracamonte Micán 201111731 Asesor: Andrés González Mancera-Ph.D. Universidad de Los andes Departamento de Ingeniería Mecánica Bogotá, Colombia 2015

Transcript of DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

Page 1: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

1

DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS EN EL

MÉTODO DE LATTICE BOLTZMANN PARA LA SIMULACIÓN DEL FENÓMENO

DE CAVITACIÓN.

Autor:

Héctor Darío Bracamonte Micán

201111731

Asesor:

Andrés González Mancera-Ph.D.

Universidad de Los andes

Departamento de Ingeniería Mecánica

Bogotá, Colombia

2015

Page 2: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

2

AGRADECIMIENTOS

Le agradezco a mi familia por todo el apoyo que me brindaron y a mis amigos y

profesor asesor porque me corrigieron y retroalimentaron a lo largo del proceso.

Page 3: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

3

TABLA DE CONTENIDO

1. RESUMEN ............................................................................................................ 4

2. INTRODUCCIÓN .................................................................................................. 5

3. OBJETIVOS ......................................................................................................... 9

3.1 GENERAL ................................................................................................................ 9

3.2 ESPECÍFICOS ......................................................................................................... 9

4. MARCO TEORICO ............................................................................................. 10

4.1 CAVITACIÓN .............................................................................................................. 10

4.2 CAVITACIÓN EN LÍQUIDO PURO Y CAVITACIÓN CON NUCLEACIÓN. ............. 12

4.3 LATTICE GAS AUTOMATA ...................................................................................... 14

4.4 MÉTODO DE LATTICE BOLTZMANN ..................................................................... 16 4.4.1 ECUACIÓN DE BOLTZMANN .................................................................................................. 16 4.4.2 OPERADOR DE COLISIÓN BGK ............................................................................................ 20 4.4.3 MODELO D2Q9 .......................................................................................................................... 20 4.4.4 VISCOSIDAD CINEMÁTICA ..................................................................................................... 22 4.4.5 SINGLE-COMPONENT MULTIPHASE ................................................................................... 23 4.4.6 CONDICIONES DE FRONTERA .............................................................................................. 27

4.4.6.1 Condición de Frontera “Bounce-Back” ............................................................................. 27 4.4.6.2 Condición de Frontera Periódica....................................................................................... 28

4.4.7 UNIDADES DE LATTICE ........................................................................................................... 29

5. MODELOS Y METODOLOGÍA DE SIMULACIÓN ........................................... 32

5.1 MODELO HOMOGÉNEO ........................................................................................... 32

5.2 MODELO HETEROGÉNEO ....................................................................................... 32

5.3 METODOLOGÍA ......................................................................................................... 33

6. RESULTADOS ................................................................................................... 34

6.1 SEGREGACIÓN .................................................................................................... 34

6.2 LIQUIDO A TENSIÓN ........................................................................................... 36

6.3 FLUJO EN VENTURI. ........................................................................................... 39

7. CONCLUSIONES ............................................................................................... 42

8. REFERENCIAS ........................................................................................................ 44

9. ANEXOS ............................................................................................................. 46

9.1 SEGREGACIÓN ............................................................................................................... 46

9.2 LIQUIDO A TENSIÓN ...................................................................................................... 49

9.3 FLUJO EN VENTURI. .................................................................................................. 53

Page 4: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

4

1. RESUMEN

Éste proyecto muestra los resultados, procedimientos e implementaciones del

método de Lattice Boltzmann para la simulación de cavitación por medio del

lenguaje de programación de C++ con base en la librería Palabos. El trabajo se

centró en el modelo D2Q9, el cual describe la propagación e interacción entre las

partículas en 2 dimensiones con 9 posibles direcciones de movimiento, incluyendo

una que hace referencia a la posición de reposo. Además, para la implementación

de cambio de fase se empleó el modelo de “Single Component Multiphase” (SCMP)

que permite la interacción de una fase líquida y una fase de vapor.

Como resultado de este proyecto, se puede observar la generación de una segunda

fase tras la exposición de un aumento de tensión en un líquido puro. Además, cómo

varía el origen y desarrollo de la cavitación dependiendo del radio de la burbuja y

de las condiciones de densidad y presión del medio al que es sometido. Finalmente,

cómo se desarrolla la cavitación tras el paso de un obstáculo con núcleos de vapor

pre-existentes.

El producto final de este trabajo es una biblioteca documentada con los códigos

empleados para volver a reproducir los resultados obtenidos, las imágenes

obtenidas al ejecutar el código y las bibliotecas utilizadas de C++ que se ejecutan

por medio de compiladores.

Page 5: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

5

2. INTRODUCCIÓN

El estudio de los fluidos, en la actualidad, es muy importante ya que proporciona

herramientas para el desarrollo de nuevas tecnologías que permiten incrementar la

calidad de vida de las sociedades. Gracias a los avances tecnológicos, existen

elementos computacionales, como las herramientas proporcionadas por la

Dinámica Computacional de Fluidos (CFD), que ayudan a un mayor entendimiento

y predicción de los comportamientos de los fluidos. Estas herramientas informáticas

son muy valoradas a nivel industrial y académico ya que permiten la simulación de

fluidos obteniendo resultados similares a los experimentales y, de esa forma, se

reducen costos al no ser necesaria la compra de los equipos y maquinaria para

hacer el estudio del caso físicamente. Adicionalmente, permiten analizar diversos

fenómenos físicos que ocurren durante la interacción del fluido con su entorno,

como el fenómeno denominado cavitación. Éste fenómeno generalmente es un

obstáculo a nivel industrial porque erosiona partes del material de la maquinaria con

que entra en contacto, disminuye la eficiencia de la máquina, deteriora el

mecanismo y causa ruido provocando vibraciones y oscilación en el sistema. Sin

embargo, nuevas tendencias tecnológicas están empezando a emplear la cavitación

a su favor ya que se puede obtener una gran cantidad de energía de este fenómeno.

Toca tener en cuenta que la cavitación es algo que no siempre se puede evitar, pero

si se puede controlar. Por tal razón, es importante tener herramientas de fácil

alcance, como las herramientas computacionales, que permitan obtener un mejor

control y entendimiento de este fenómeno.

Primero que todo, se tiene que tener claro qué es la cavitación. Éste fenómeno es

el proceso de formación de una fase gaseosa, en forma de burbujas, dentro de una

fase líquida. Eso ocurre por una reducción de presión que genera una disminución

del punto de ebullición del líquido tal que llega a fase gaseosa a una temperatura

constante. Ese gas queda atrapado en burbujas dentro de la fase líquida, que al

colapsar, provocan ondas de choque de alta presión en el fluido erosionando el

Page 6: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

6

material que entre en contacto con éstas. Adicionalmente, existen dos escenarios

que pueden causar esa reducción de presión. El primero se presenta por un fluido

en movimiento, el cual se denomina cavitación hidrodinámica. Mientras que el

segundo, se presenta cuando un fluido esta estático y entra en contacto con un

campo acústico, lo que genera una oscilación de la presión dentro del reservorio del

líquido; se denomina cavitación acústica.

Hoy en día, los estudios computacionales de los fluidos, específicamente de la

cavitación, han sido relevantes por el desarrollo de métodos y solucionadores

computacionales. Varios modelos de CFD para flujos que modelan cavitación se

basan en supuestos semi-empíricos de formas de cavitación y flujos de líquidos

alrededor de cuerpos con cavitación. Dentro de CFD, existen varios grupos de

métodos para el análisis de turbulencia, que proporcionan formas para el estudio de

la cavitación, entre los cuales está Reynolds-Averaged Navier–Stokes (RANS) [1].

Adicionalmente, hay que tener presente que existen nuevos métodos que se han

estado desarrollando en el campo de los fluidos pero que todavía no son tan

populares, como el Método de Lattice-Boltzmann (LBM).

El método de RANS es muy importante en aplicaciones científicas e industriales.

Éste método es uno de los más populares al momento de tratarse de solucionar

problemas de fluidos, específicamente en problemas de turbulencia, ya que permite

dar una solución aproximada de la ecuación de Navier-Stokes a nivel macroscópico

por medio de la discretización del problema mediante diversos métodos, como los

“Big Three” (Finite Volume Method, Finite Difference Method, Finite Element

Method) y se especializa en flujos turbulentos. RANS permite una rápida solución

computacional de flujos y patrones de dispersión del fluido incluso en medios

complejos. Sin embargo, los solucionadores de RANS generalmente no son lo

suficientemente precisos [1] para fenómenos tales como la cavitación, suelen tener

Page 7: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

7

problemas con geometrías complejas y requieren de un gran costo computacional

para simular amplios dominios computacionales

Por otro lado, el método de Lattice Boltzmann es una herramienta numérica que

emplea la ecuación de Boltzmann, análoga a la ecuación de Navier-Stokes, pero

éste analiza los fenómenos desde las interacciones entre partículas a nivel

mesoscópico, cuyas ecuaciones son discretizadas por medio de métodos

numéricos tradicionales como el método de diferencias finitas. El LBM al solucionar

el sistema a nivel mesoscópico emplea funciones de probabilidad que describen la

distribución de las partículas, ese término es denominado distribución de partícula

única (single particle distribution). Es importante aclara que éste método es

relativamente nuevo y en cuanto a problemas relacionados con cavitación, no se

han realizado muchos trabajos. El trabajo más destacado ha sido realizado por

Michael Sukop y Daniel Or [2], quienes simularon con el LBM cavitación en un

líquido puro sujeto a tención y la evolución de cavitación a partir de una burbuja

preexistente. La ventaja de este método radica en que es de fácil implementación,

asimismo logra representar fenómenos físicos macroscópicos complejos

simplificando modelos cinéticos al incorporar la física de proceso mesoscópicos, de

tal forma que las propiedades promedio macroscópicas obedecen las ecuaciones

macroscópicas deseadas, por lo que no tiene que solucionar la ecuación de Navier-

Stokes directamente. Además, es computacionalmente más eficiente, la orientación

en la malla computacional tiene poca influencia en la solución ya que es un modelo

isotrópico de segundo orden [3] y permite estudiar desde flujos multi-fásicos hasta

reacciones químicas del fluido con sus alrededores. Sin embargo, la desventaja de

este método es que está limitado a flujos con poco grado de compresibilidad y no

hay mucho desarrollo en el ámbito del modelamiento de problemas que involucran

cavitación.

Al comparar los métodos expuestos, se concluye que el método de Lattice

Boltzmann es una buena opción para trabajar con la cavitación ya que presenta

Page 8: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

8

enfoque interesante para abordar la simulación de fluidos, como el análisis de la

interacción entre partículas para la solución de las ecuaciones de Navier-Stokes, y

hasta el día de hoy, es uno de los métodos que mejor representa la dinámica de

fluidos multi-fásicos. Adicionalmente, en comparación con el método de RANS, el

LBM presenta mayor potencial de desarrollo que los otros métodos, puede manejar

geometrías complejas y presenta menor costo computacional.

En ese orden de ideas, el principal objetivo de este trabajo radica en plantear y

modelar la cavitación de un fluido por medio de la implementación del método de

Lattice Boltzmann. Por medio de este trabajo, además de brindar una forma poco

convencional de modelar la cavitación, busca generar las bases necesarias para

que se pueda emplear este documento como guía para seguir desarrollando este

método. En este trabajo se enfocará en geometrías sencillas en 2-D. El

procedimiento a seguir consiste en la realización del código y posteriormente se

realizará la adecuada documentación para que sea utilizado como base para

posteriores trabajos.

Page 9: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

9

3. OBJETIVOS

3.1 GENERAL

• Desarrollar algoritmos computacionales basados en el Método de Lattice

Boltzmann para simular el fenómeno de cavitación.

3.2 ESPECÍFICOS

• Comprender teórica y matemática de la cavitación con el fin de entender el

fenómeno para identificar la dinámica de fluidos involucrada en el problema.

• Comprender el método de Lattice Boltzmann con el fin de identificar

parámetros necesarios del método para su aplicación.

• Implementar algoritmos computacionales empleando LBM, para modelar

cavitación en 2 dimensiones y comparar resultados obtenidos en trabajos

previos.

• Documentar el trabajo realizado para que otros usuarios puedan emplear el

código desarrollado en futuras aplicaciones.

Page 10: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

10

4. MARCO TEORICO

4.1 CAVITACIÓN

La cavitación resulta un fenómeno poco deseable en la industria ya que produce

ciertos efectos negativos como: erosión, desgaste, ruido, vibraciones y reducción

de la eficiencia en la máquina. Sin embargo, existen nuevas tendencias tecnológicas

que buscan inducir la cavitación para propósitos específicos como: calentar agua,

reducir el coeficiente de arrastre para alcanzar muy altas velocidades gracias a la

super-cavitación y en la industria biomédica se están realizando investigaciones

para emplear la cavitación como un método para combatir el cáncer por medio de

la inducción de la cavitación por ultrasonido [2].

La cavitación es un fenómeno que envuelve la aparición de una segunda fase en

forma de vapor dentro de un fluido inicialmente en fase líquida, a una temperatura

constante, por la presencia de zonas de presión menores a la presión de vapor (𝑃𝑣).

Esas zonas de presión baja, tensionan el líquido hasta que ocurre un cambio de

fase y aparece la fase gaseosa en cavidades dentro del líquido. Estas cavidades

implosionan cuando pasan a una zona de mayor presión alcanzando una

temperatura de varios miles de kelvin y una presión de miles de atmósferas en el

punto del colapso [2]. En la Ilustración 1 se logra observar la diferencia entre la

ebullición (presión constante y aumenta la temperatura) y la cavitación (temperatura

constante y disminuye la presión) que son los dos procesos por los que un líquido

cambia a fase gaseosa. Además, para la cavitación existe un “retraso térmico” (𝑇𝑓 −

𝑇𝑓′) el cual consiste en que la cavitación se da a una temperatura un poco menor

(𝑇𝑓′) a la temperatura ambiente (𝑇𝑓) dada por la transferencia de calor necesaria para

la vaporización [3].

Page 11: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

11

Ilustración 1. Diagrama de fase Cavitación y Ebullición [3]

En el contexto de la cavitación, existen dos escenarios generales en donde éste

fenómeno es generado. El primer escenario ocurre cuando la cavitación se origina

en un líquido estático por medio de la fluctuación de un campo de presiones

llegando hasta una presión tan baja que produce el cambio de fase. La fluctuación

de ese campo es inducida por ondas superficiales. Este escenario se denomina

cavitación acústica. Por otro lado, en el segundo escenario, la cavitación sucede

cuando el líquido está en movimiento y éste pasa por una zona de baja presión

inducida por una geometría o condiciones por las zonas en donde el líquido esté

transitando. Este escenario es denominado cavitación hidrodinámica [3].

Page 12: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

12

4.2 CAVITACIÓN EN LÍQUIDO PURO Y CAVITACIÓN CON NUCLEACIÓN.

La cavitación puede generarse en un líquido puro (líquido homogéneo sin

impurezas) y en un líquido con burbujas preexistentes (líquido con nucleación

previa). Cuando el fenómeno ocurre en un líquido homogéneo, la densidad del fluido

va a seguir la ecuación de estado (EOS) con base en la presión que esté sometido.

El líquido, al llegar al punto espinodal, que es punto mínimo de la concavidad de la

EOS, la densidad se vuelve inestable y el sistema va a tender a cambiar de fase

hasta que se estabilice en una fase de vapor. La Ilustración 2 muestra la EOS y el

punto espinodal. Por otro lado, la cavitación en un líquido homogéneo resulta ser

más difícil de encontrarse físicamente debido a que el líquido, al estar en contacto

con imperfecciones entre las superficies y gases disueltos, genera burbujas, lo que

reduce la magnitud de la presión necesaria para que haya cambio de fase.

Ilustración 2. EOS del Agua Mostrando el Punto Espinodal para Cavitación de Líquido Puro [4]

Por otro lado, la cavitación con nucleación presenta burbujas preexistentes que

permiten disminuir la energía necesaria para que el líquido cambie de fase

requiriendo un menor cambio de presión. En 2D, la energía necesaria para la

creación de una burbuja es la suma de la energía interfacial (depende de la tensión

Page 13: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

13

superficial 𝜎 y del radio 𝑟 de la burbuja) y el trabajo que realiza la presión negativa

(esta presión ∆𝑃 es relativa a la presión de vapor) del medio sobre el área de la

burbuja. La Ecuación 1 muestra la relación mencionada anteriormente.

∆𝐸 = 2𝜋𝜎 + 𝜋𝑟2∆𝑃

Ecuación 1. Energía Necesaria para la Creación de una Burbuja.

Adicionalmente, para que la burbuja preexistente en el líquido sea una semilla de

cavitación debe superar una energía máxima ∆𝐸𝑚𝑎𝑥 y un radio crítico 𝑟∗, cuyas

relaciones con la tensión superficial y el cambio de presión están dadas por la

Ecuación 2 y la Ecuación 3. Si el radio inicial de la burbuja es menor al radio crítico, la

burbuja se condensará, por lo que no originará cavitación. Por el contrario, si el radio

es superior al radio crítico, la burbuja, en este caso, si será una semilla de cavitación.

En la Ilustración 3 puede observarse la relación entre la energía y el radio, así como

sus valores máximos para que una burbuja sea una semilla de cavitación para

diferentes presiones iniciales.

𝑟∗ = −𝜎

∆𝑃

Ecuación 2. Radio Crítico

∆𝐸𝑚𝑎𝑥 = −𝜋𝜎2

∆𝑃

Ecuación 3. Energía Máxima

Page 14: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

14

Ilustración 3. Barrera Energética para Diferentes Presiones Iniciales del Líquido [4].

4.3 LATTICE GAS AUTOMATA

Lattice Gas Automata (LGA) es el precursor del método de Lattice Boltzmann, el

cual trata con un grupo de partículas ubicadas en nodos de una Lattice a nivel

microscópico. La Lattice es un arreglo de formas, como un rectángulo, triángulo o

hexágono; en el caso de dos dimensiones. La Ilustración 4 muestra una Lattice

cuadrada.

Ilustración 4. Lattice cuadrada que relaciona la partícula P con las partículas aledañas. Modelo HPP (Hardy,

Pomeau y Pazzis)

Page 15: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

15

Las partículas, en la Lattice, colisionan y se propagan, en cada iteración, con

partículas aledañas conservando masa y momentum. A cada dirección propuesta

por el modelo que vincula a la partícula con los nodos cercanos, se le asigna una

velocidad. Las partículas, al momento de una colisión, cambian sus velocidades

conservando el momentum total en un nodo. Posteriormente, las partículas se

propagan de acuerdo a la nueva velocidad en la dirección respectiva. Estos

modelos, como el modelo HPP en la Ilustración 4 (el nombre de éste modelo fue

otorgado con base en las personas que propusieron el modelo), fueron propuestos

en 1973 por Hardy, Pomeau y Pazzis; para recuperar la física macroscópica

propuesta por la ecuación de Navier-Stokes, pero no tuvieron éxito [5].

En 1986 propusieron un modelo triangular llamado FHP (Frisch, Hasslacher and

Pomeau) el cual proporciona la suficiente simetría [6], para asegurar que la Lattice

se conservara isotrópica con la conservación de masa y momentum. El modelo

empleado puede observarse en la Ilustración 5 [5].

Ilustración 5. Lattice triangular con simetría hexagonal. Modelo FHP (Frisch, Hasslacher and Pomeau)

El modelo del LGA es un modelo que basa su planteamiento ecuación cinética,

Ecuación 4, en donde 𝑛𝑎 es una condición booleana (cierto o falso) en una dirección

𝑎 impuesta por el modelo con cierta velocidad 𝑒𝑎 y ∆𝑎 es una función de colisión [5].

Page 16: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

16

𝑛𝑎(𝑥 + 𝑒𝑎∆𝑡, 𝑡 + ∆𝑡) = 𝑛𝑎(𝑥, 𝑡) + ∆𝑎

Ecuación 4. Ecuación cinética

En este modelo las propiedades macroscópicas de densidad y momentum son

calculadas con la sumatoria de las propiedades microscópicas de la siguiente

manera:

𝜌(𝑥, 𝑡) = ∑ 𝑛𝑎

𝑎

(𝑥, 𝑡)

Ecuación 5. Densidad Macroscópica

𝜌(𝑥, 𝑡)𝑢(𝑥, 𝑡) = ∑ 𝑒𝑎𝑛𝑎

𝑎

(𝑥, 𝑡)

Ecuación 6. Momentum macroscópico

Sin embargo, las simulaciones generadas con los modelos de LGA eran ruidosas

por su naturaleza booleana. Además, los procesos numéricos involucraban

probabilidades, lo que reduce la eficiencia del LGA. Lo anterior llevó al nacimiento

del LBM [7].

4.4 MÉTODO DE LATTICE BOLTZMANN

4.4.1 ECUACIÓN DE BOLTZMANN

En 1988 [8], se generaron los primeros modelos del método de Lattice Boltzmann

(LBM) en donde reemplazaron el parámetro booleano 𝑛𝑎 por funciones de

distribución Maxwell-Boltzmann 𝑓𝑎 que resolvieron el problema que presentaba el

Page 17: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

17

LGA pero seguían presentando algunos problemas del LGA como la carencia de la

invariancia Galileana. Aquellos errores que venían del LGA fueron resueltos en

modelos más resientes del LBM [9]. En este método, ya no se trabaja con una

partícula, sino que se trabaja con un conjunto de estas, por lo tanto ya no trabaja a

nivel microscópico, sino que trabaja a nivel mesoscópico. Las ecuaciones del LGA

se reescriben de la siguiente manera:

𝑓𝑎(𝑥 + 𝑒𝑎∆𝑡, 𝑡 + ∆𝑡) = 𝑓𝑎(𝑥, 𝑡) + Ω(𝑓)

Ecuación 7. Ecuación de Boltzmann

𝜌 = ∑ 𝑓𝑎

𝑎

Ecuación 8. Densidad Macroscópica en LBM

𝑢 =1

𝜌∑ 𝑓𝑎𝑒𝑎

𝑎

Ecuación 9. Velocidad Macroscópica en LBM.

En la Ecuación 7, el término 𝑓𝑎(𝑥 + 𝑒𝑎∆𝑡, 𝑡 + ∆𝑡) = 𝑓𝑎(𝑥, 𝑡) es la parte de

propagación. Mientras que el término Ω(𝑓) hace referencia a la función de colisión

que se resolverá de diversas maneras dependiendo del modelo que se utilice [10].

Para lograr comprender el LBM es necesario entender las funciones de distribución

propuestas por el método [11] [12]. Las funciones de distribución 𝑓(𝑒𝑎) son descritas

como una cantidad 𝑁 de partículas de gas en una zona, con cierta velocidad en

dirección x entre 𝑒𝑥 y 𝑒𝑥 + 𝑑𝑒𝑥 correspondiente a 𝑁𝑓1(𝑒𝑥)𝑑𝑒𝑥 y la fracción de

partículas sería 𝑓1(𝑒𝑥)𝑑𝑒𝑥. La función de distribución 𝑓1 hace referencia a la función

en un solo componente del vector de velocidad y la suma de todas las fracciones

de partículas debe ser igual a 1.

Page 18: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

18

∫ 𝑓1(𝑒𝑥)𝑑𝑒𝑥 = 1∞

−∞

Ecuación 10. Suma Fracciones un Componente de Velocidad

Al analizar un sistema en tres dimensiones, se tiene una magnitud de velocidad que

corresponde a:

𝑒2 = 𝑒𝑥2 + 𝑒𝑦

2 + 𝑒𝑧2

Ecuación 11. Magnitud de Velocidad

Ahora, se toma en cuenta la probabilidad de velocidad entre las direcciones 𝑒𝑥 y

𝑒𝑥 + 𝑑𝑒𝑥, 𝑒𝑦 y 𝑒𝑦 + 𝑑𝑒𝑦, 𝑒𝑧 y 𝑒𝑧 + 𝑑𝑒𝑧.

𝑁𝑓1(𝑒𝑥)𝑑𝑒𝑥𝑓1(𝑒𝑦)𝑑𝑒𝑦𝑓1(𝑒𝑧)𝑑𝑒𝑧 = 𝑁𝑓1(𝑒𝑥)𝑓1(𝑒𝑦)𝑓1(𝑒𝑧)𝑑𝑒𝑥𝑑𝑒𝑦𝑑𝑒𝑧

Ecuación 12. Probabilidad en Todas las Direcciones

Como cualquier dirección es tan buena como las otras, la función de distribución

solo dependerá del total de velocidad de la partícula. Con base en lo anterior,

Maxwell propuso lo siguiente:

𝑓1(𝑒𝑥)𝑓1(𝑒𝑦)𝑓1(𝑒𝑧) = 𝐹𝑒

Ecuación 13. Función de Distribución con base en la Velocidad Total de la Partícula.

En donde F es una función desconocida. Maxwell emplea la siguiente función de

distribución con base en un argumento de simetría:

𝑓1(𝑒𝑥) = 𝐴𝑒𝑥𝑝−𝐵𝑒𝑥2

Ecuación 14. Función de distribución en una Dirección.

Para encontrar la función de distribución de la esfera propuesta por las velocidades

𝑒𝑥, 𝑒𝑦, 𝑒𝑧 en la Ecuación 11, se tiene en cuenta el área superficial, que en este caso

corresponde a 4𝜋𝑒2. Finalmente, la función de distribución de velocidad es:

𝑓(𝑒)𝑑𝑒 = 4𝜋𝑒2𝐴3𝑒𝑥𝑝−𝐵𝑒2𝑑𝑒

Page 19: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

19

Ecuación 15. Función de distribución de Velocidad

Ahora la suma de las fracciones cambia de la siguiente forma:

∫ 𝑓(𝑒)𝑑𝑒 = 1∞

0

Ecuación 16. Suma Fracciones total

Al resolver la integral anterior, se obtiene que 𝐴 = √𝐵/𝜋 . Posteriormente, se

despeja el valor B empleando la ecuación de la energía cinética promedio por

partícula, en donde 𝑚 es la masa de la partícula.

1

2𝑚𝑒2

= ∫

1

2𝑚𝑒2𝑓(𝑒)𝑑𝑒

0

=3𝑚

4𝐵

Ecuación 17. Energía Cinética Promedio por Partícula

Después, se sustituye el valor para la energía cinética promedio en términos de

temperatura del gas (1

2𝑚𝑒2

=3

2𝑘𝑇 ) y se encuentra el valor de B:

𝐵 =𝑚

2𝑘𝑇

Ecuación 18. Constante B en términos de la Temperatura del Gas

Finalmente, se obtiene que la función de distribución:

𝑓(𝑒) = 4𝜋 (𝑚

2𝜋𝑘𝑇)

32

𝑒2𝑒𝑥𝑝−𝑚𝑒2

2𝑘𝑇

Ecuación 19. Función de Distribución.

Ésta función, indica los rangos y mayores probabilidades que tiene una partícula

que vaya a una velocidad aleatoria limitada por los límites de ésta función.

Page 20: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

20

4.4.2 OPERADOR DE COLISIÓN BGK

Existen tipos diferentes de operadores de colisión que reemplazan la función de

colisión. El operador más sencillo, propuesto por Bhatnagar, Gross y Krook (BGK)

[13], sustituye la función de colisión por un término que contiene un tiempo de

relajación 𝜏 y una función de distribución de equilibrio 𝑓𝑒𝑞. El tiempo de relajación

representa el tiempo que la colisión toma para volver al equilibrio [4].

Ω(𝑓) = −𝑓 − 𝑓𝑒𝑞

𝜏

Ecuación 20. Operador de Colisión BGK

La ecuación de LB empleando un operador de colisión, como el propuesto en el

BGK, queda expresado de la siguiente manera:

𝑓𝑎(𝑥 + 𝑒𝑎∆𝑡, 𝑡 + ∆𝑡) = 𝑓𝑎(𝑥, 𝑡) −𝑓 − 𝑓𝑒𝑞

𝜏

Ecuación 21. Ecuación de Lattice Boltzmann con BGK

Es importante tener en cuenta que el operador BGK es uno de los modelos más

simples que permitió aumentar la eficiencia del método con respecto al LGA. Sin

embargo, presenta problemas de estabilidad y límites relacionados con la

viscosidad empleada. Por lo tanto, dependiendo de los parámetros de la simulación,

resulta mejor emplear otro operador de colisión como el MRT (Multi-Realxation

Time) que proporciona rangos más amplios de operación de las viscosidades y

mayor estabilidad que el operador BGK [14].

4.4.3 MODELO D2Q9

Page 21: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

21

El nombre de este modelo hace referencia a 2 dimensiones (2D) con 9 posibles

direcciones de movimiento de la partícula. Este modelo simplifica el planteamiento

original del método de Boltzmann al reducir el número de las posibles posiciones de

una partícula en el espacio y momentum microscópico. De igual forma, el tiempo es

discretizado en forma de pasos de tiempo.

El modelo plantea velocidades y pesos microscópicos específicos en cada una de

las nueve direcciones propuestas por el modelo en una Lattice cuadrada. La

Ilustración 6 muestra el bosquejo que sigue el modelo D2Q9.

Ilustración 6. Modelo D2Q9. Las convenciones usadas son: a (x,y); en donde a es el número de la posición, (x,y) la

coordenada de la posición. 𝑒𝑎 es la velocidad en esa dirección. 1 lu hace referencia a una unidad de Lattice.

El término 𝑒𝑎 hace referencia a la velocidad microscópica discretizada, 𝑎 es la

posición que va desde 0 hasta 8, en donde 0 corresponde a la partícula en reposo.

Además, la función de equilibrio 𝑓𝑒𝑞 expuesta en la Ecuación 20 es representada en

la Ecuación 22 para cada posición propuesta por el modelo D2Q9 [15]. En ésta, 𝑤𝑎

Page 22: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

22

es un peso referente a la posición, en donde si 𝑎 = 0 el peso será de 4/9, si 𝑎 =

1,2,3,4 el peso será de 1/9 y si 𝑎 = 5,6,7,8 el peso será de 1/9. 𝑢 Es la velocidad

macroscópica y 𝑐 es la velocidad del sonido en la Lattice [10].

𝑓𝑎𝑒𝑞(𝑋) = 𝑤𝑎𝜌(𝑋) [1 + 3

𝑒𝑎𝑢

𝑐2+

9

2

(𝑒𝑎𝑢)2

𝑐4−

3

2

𝑢2

𝑐2]

Ecuación 22. Función de Distribución de Equilibrio.

Finalmente, se recalca que el modelo no emplea unidades reales sino unidades de

Lattice. Estas unidades pueden ser relacionadas con unidades reales realizando

operaciones matemáticas sencillas, las cuales serán explicadas en el numeral 5.4.7.

4.4.4 VISCOSIDAD CINEMÁTICA

La ecuación de Lattice Boltzmann para el modelo D2Q9 en un flujo incompresible

lleva a la ecuación de Navier-Stokes. Con base en esto, la viscosidad cinemática

está relacionada con el tiempo de relajación de la siguiente manera [15]:

𝜈 = 𝑐𝑠2 (𝜏 −

1

2) 𝛿𝑡

Ecuación 23. Viscosidad Cinemática

En donde 𝐶𝑠 es la velocidad del sonido en la Lattice cuyo valor corresponde a 1

√3

(𝐶𝑠 =1

√3) y 𝛿𝑡 hace referencia a el paso de tiempo. Hay que tener presente que a

medida que el valor 𝜏 es más cercano a 1/2 se empiezan a presentar problemas

numéricos [4]. El valor más seguro de 𝜏 es de 1 lo cual permite obtener una

viscosidad cinemática de 1

6𝑙𝑢2𝑡𝑠−1 .

Page 23: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

23

4.4.5 SINGLE-COMPONENT MULTIPHASE

El termino multifase indica un fenómeno que afecta al fluido provocando que éste

se separe en fases diferentes por medio de cambios de presión, geometría,

temperatura, etc. El LBM le resulta más sencillo simular cambios de fase que varios

software convencionales CFD gracias a la mecánica estadística y termodinámica

que contiene este método de fondo.

Existen varios modelos que permiten simular cambios de fase. Uno de los más

conocidos es el modelo de Shan-Chen el cual plantea la interacción entre las

densidades de las partículas más cercanas por medio de fuerzas atractivas de largo

rango [16]. Estas fuerzas permiten identificar la interacción entre las fases existentes

en el fluido.

La fuerza de atracción 𝐹 según el modelo D2Q9 es de la siguiente manera:

𝐹(𝑋, 𝑡) = −𝐺𝜓(𝑋, 𝑡) ∑ 𝑤𝑎𝜓(𝑋 + 𝑒𝑎∆𝑡, 𝑡)𝑒𝑎

8

𝑎=1

Ecuación 24. Fuerza de Atracción D2Q9

En donde 𝐺 es una fuerza de interacción que está relacionada con la energía

necesaria para el cambio de fase, 𝑤𝑎 es el peso del modelo de LBM y 𝜓 es un

potencial de interacción que se va a ajustar a la ecuación de estado.

Page 24: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

24

Cuando 𝐺 es negativo, la fuerza es considerada como una fuerza de atracción. La

velocidad se ve afectada por la adición de la fuerza y realiza un cambio ∆𝑢, como

se muestra en la Ecuación 25, que afecta a la velocidad de equilibrio como se expresa

en la Ecuación 26. La velocidad de equilibrio es la que es usada para calcular la las

funciones de distribución de equilibrio.

∆𝑢 =𝜏𝐹

𝜌

Ecuación 25. Cambio de la velocidad por la fuerza

𝑢𝑒𝑞 = 𝑢 + ∆𝑢

Ecuación 26. Cambio realizado en la velocidad para calcular la función de distribución de equilibrio.

Finalmente, la velocidad macroscópica 𝑈 se le incorpora la fuerza atractiva como

una fuerza de cuerpo [16].

𝑈(𝑋, 𝑡) = 𝑢(𝑋, 𝑡)𝜌 +1

2𝐹

Ecuación 27. Velocidad Macroscópica afectada por la Fuerza de Atracción

Al incorporar el término de fuerza en la ecuación de estado isotérmica, ésta se

expresa de la siguiente manera [4]:

𝑃 = 𝜌𝑅𝑇 +𝐺𝑅𝑇

2[𝜓(𝜌)]2

Ecuación 28. Ecuación de Estado en Unidades de Lattice

En el modelo de Single-component Multiphase (SCMP), se utiliza 𝑅𝑇 = 1/3, lo que

simplifica la ecuación de estado.

Page 25: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

25

𝑃 =𝜌

3+

𝐺

6[𝜓(𝜌)]2

Ecuación 29. Ecuación de Estado Simplificada en Unidades de Lattice.

La ecuación de estado varía dependiendo del potencial de interacción que se

seleccione. En este caso se escogió el potencial de interacción de Shan-Chen.

𝜓(𝜌) = 𝜓0𝑒(

−𝜌0𝜌

)

Ecuación 30. Potencial de Interacción de Shan-Chen (masa efectiva).

El potencial de interacción hace que la ecuación de estado sea de carácter no lineal,

lo que permite dos fases coexistan después de superar un valor crítico. En la Ecuación

30 los parámetros 𝜓0 y 𝜌0 son constantes arbitrarias que se seleccionaron con base

en el trabajo realizado por Michael Sukop y Dani Or en el 2005 [10]. El valor de estas

constantes es 𝜓0 = 4 y 𝜌0 = 200 𝑚𝑢 𝑙𝑢−2.

Gráfica 1. Presión contra Densidad en Unidades de Lattice.

-50

0

50

100

150

200

250

300

0 200 400 600 800 1000 1200

Pre

sió

n [

mu

ts^

-2]

Densidad [mu lu^-2]

Presión Vs Densidad

G=-48

G=-72

G=-92.4

G=-120

G=-160

Page 26: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

26

Cuando 𝐺 es menor que un valor crítico 𝐺𝑐 ( 𝐺𝑐 = −92.4 para éste caso), la función

se vuelve no monótona y hay cambio de fase cuyas densidades del sistema siguen

la ecuación de estado planteada en la Ecuación 29. Cuando el valor inicial de la

densidad del sistema analizado se encuentra dentro de la región inestable, el fluido

tenderá a estabilizarse en los límites estables de líquido y de vapor. En la Ilustración

7 puede observarse un diagrama de fase que bosqueja las curvas de la ecuación

de estado con respecto a la presión y el volumen específico (1/𝜌).

Ilustración 7. Diagrama de Fase Isotérmico Presión Vs Volumen Específico (1/𝜌)

Page 27: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

27

4.4.6 CONDICIONES DE FRONTERA

Las condiciones de frontera (BC) en el LBM presentan dificultades ya que no existe

una intuición física de la función de distribución de velocidades en las fronteras

porque normalmente se tiene información macroscópica en las fronteras del

sistema. Sin embargo, varios autores han propuesto condiciones de frontera

microscópicas adaptando las condiciones macroscópicas. Las BC son muy

importantes ya que de éstas depende la precisión numérica y la estabilidad [17].

4.4.6.1 Condición de Frontera “Bounce-Back”

La condición de Bounce-Back plantea la interacción entre nodos líquidos y nodos

sólidos. Por lo tanto, cuando las funciones de distribución se encuentran con un

nodo sólido, éstas son reflejadas o “rebotan” de nuevo en el dominio. Con base en

lo anterior, existen dos formas en cómo se reflejan las distribuciones. La primera

forma se denomina “Full-Way Bounce-Back” y el segundo “Half-Way Bounce Back”

[18].

En el Full-Way Bounce-Back, no hay colisión en los nodos sólidos, pero en aquellos

nodos, la dirección de las funciones de distribución se invierte y se propaga en la

dirección opuesta si realizar el paso de colisión. En la segunda forma, las funciones

de distribución, que durante el paso de propagación dejarían el dominio, son

retenidas en el nodo y son copiadas en la dirección opuesta efectuando el paso de

colisión. Puede decirse que en el Half-Way Bounce-Back, el paso de propagación

se ve afectado por la colisión realizada en el nodo de la frontera, mientras que en el

Full-Way Bounce-Back, mantiene la misma propagación pero modifica el paso de

colisión [17].

Page 28: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

28

Ilustración 8. Funciones de Distribución en Bounce-Back

4.4.6.2 Condición de Frontera Periódica

En la condición de frontera periódica se propone que lo que sale de una frontera

será lo mismo que lo que entre en la frontera opuesta. En 2D puede imaginarse un

rectángulo, que al indicarle condición de frontera periódica en la dirección horizontal,

las fronteras de la izquierda y de la derecha se van a unir, permitiendo que el

dominio sea continuo. Puede observarse en la Ilustración 9 un boceto de cómo se

podría representar el dominio descrito anteriormente.

Page 29: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

29

Ilustración 9. Condición de Frontera Periódica [4].

4.4.7 UNIDADES DE LATTICE

Los parámetros físicos se transforman en unidades de Lattice por medio de

relacionar los parámetros de espacio y tiempo discretizados (paso te tiempo y

espaciamiento de la malla) [18]. A continuación se muestra cómo pasar las unidades

reales a unidades de Lattice. Primero, se supone que el sistema analizado es un

flujo a través de un tubo en 2D con un diámetro de 50cm y el ancho del tubo es igual

al diámetro (𝐿 = 50𝑐𝑚). Ese tubo tendrá 101 nodos en la dirección X y Y (𝑁𝑥 = 𝑁𝑦 =

1001 ) y el espacio entre los nodos será de 𝛿𝑦𝐿 = 𝛿𝑥𝐿 = 1 𝑙𝑢, por lo tando la longitud

en unidades de Lattice será de 1000 𝑙𝑢. De ahora en adelante, los subíndices F

serán para referirse a unidades físicas, mientras que los subíndices L se emplearán

para referirse a unidades de Lattice. Con base en lo anterior, la relación entre las

unidades físicas y de Lattice de longitud es la siguiente:

𝛿𝑦𝐹 =𝐿𝐹

𝐿𝐿=

𝑙𝑜𝑔𝑖𝑡𝑢𝑑 𝑒𝑛 𝑢𝑛𝑖𝑑𝑎𝑑𝑒𝑠 𝑓í𝑠𝑖𝑐𝑎𝑠 [𝑚]

𝑙𝑜𝑛𝑔𝑖𝑡𝑢𝑑 𝑒𝑛 𝑢𝑛𝑖𝑑𝑎𝑑𝑒𝑠 𝑑𝑒 𝐿𝑎𝑡𝑡𝑖𝑐𝑒 [𝑙𝑢]

Page 30: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

30

Con los datos mencionados se obtiene la siguiente relación:

𝛿𝑥𝐹 =𝐿𝐹

𝐿𝐿=

0.5

1000= 5 ∗ 10−4

𝑚

𝑙𝑢

Ahora, se encontrará la viscosidad cinemática en unidades de Lattice con la Ecuación

23 (𝜈 = 𝑐𝑠2 (𝜏 −

1

2) 𝛿𝑡). Para esto se supondrá un valor de 𝜏 = 1 y el paso de tiempo

será 𝛿𝑡 = 1 𝑡𝑠.

𝑣𝐿 =1

3∗ (1 − 0.5) ∗ 1 = 0.1667

𝑙𝑢2

𝑡𝑠

La relación de la viscosidad cinemática en unidades de Lattice y la viscosidad en

unidades físicas es de la siguiente manera:

𝑣𝐿

𝛿𝑥𝐹2

𝛿𝑡𝐹= 𝑣𝐹

La viscosidad cinemática del fluido puede despejarse con el número de Reynolds.

Para esto se supone que el flujo del líquido dentro de la tubería tiene una velocidad

horizontal 𝑈𝐹 = 0.5𝑚

𝑠 y un número de Reynolds de 200.

𝑅𝑒 =𝐷𝑖á𝑚𝑒𝑡𝑟𝑜 ∗ 𝑈𝐹

𝑣𝐹

𝑣𝐹 =𝐷𝑖á𝑚𝑒𝑡𝑟𝑜 ∗ 𝑈𝐹

𝑅𝑒=

0.5 ∗ 0.5

200= 1.25 ∗ 10−3

𝑚2

𝑠

Ahora se halla el paso de tiempo físico:

𝛿𝑡𝐹 = 𝑣𝐿

𝛿𝑥𝐹2

𝑣𝐹= 3.334 ∗ 10−5 𝑠

La relación para encontrar la velocidad a la entrada en unidades de Lattice es la

siguiente:

Page 31: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

31

𝑈𝐿 = 𝑈𝐹 ∗𝛿𝑡𝐹

𝛿𝑥𝐹= 0.03334

𝑙𝑢

𝑡𝑠

Las unidades de Lattice empleadas para la densidad son 𝑚𝑢/𝑙𝑢2 y para la presión

𝑚𝑢/𝑡𝑠2. La unidad 𝑚𝑢 hace referencia a la unidad de masa en Lattice. La densidad

en unidades de Lattice es seleccionada con base en una densidad de referencia [5].

𝜌𝐹 = 𝜌𝑟𝑒𝑓 ∗ 𝜌𝐿

Finalmente, se verifica el número de Reynolds y el numero Mach.

𝑅𝑒𝐿 =𝑈𝐿 ∗ 𝐷𝑖á𝑚𝑒𝑡𝑟𝑜𝐿

𝑣𝑙=

0.03334 ∗ 1000

0.1667= 200

𝑀𝑎𝐿 =𝑈𝐿

(𝐶𝑠)𝐿= 0.03334 ∗ √3 = 0.05775

De lo anterior se puede notar que la transformada a unidades de Lattice estuvo bien

realizada debido a que el número de Reynolds es el mismo cuando es despejado

con las unidades de Lattice y las unidades normales. Por otro lado, el número de

Mach debe ser mucho menor que 1( 𝑀𝑎𝐿 ≪ 1) ya que si el valor del número de

Mach es muy cercano a 1 la simulación se vuelve inestable. Para reducir el número

de Mach puede aumentarse el número de nodo de la malla a lo ancho de la tubería

o disminuir el parámetro de relajación hasta un número cercano y mayor a ½ para

que la viscosidad cinemática en Lattice no sea cero [5].

Page 32: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

32

5. MODELOS Y METODOLOGÍA DE SIMULACIÓN

5.1 MODELO HOMOGÉNEO

Los modelos homogéneos permiten una técnica simple para flujos multifásicos.

Estos modelos proponen promedios adecuados de las propiedades del dominio de

simulación. En el fluido mesclado, que contiene las fases de vapor (en forma de

burbujas) y líquido, se trata como un pseudofluido que obedece la ecuación del flujo

de único componente (single-component). Para estos modelos han implementado

aproximaciones isentrópicas lo que consigue expresar el estado termodinámico de

la ecuación de estado en términos de las densidades de los estados del fluido [19].

Estos modelos homogéneos son efectivos para sistemas grandes y para resolver

escalas espaciales pequeñas, lo que implica que la distancia entre las burbujas no

es necesaria. Además, los modelos homogéneos son lo suficientemente precisos

para simular gran variedad de procesos. Sin embargo, no logran capturar todas las

características de flujos complejos y puede presentar discrepancias con los

resultados experimentales [20].

5.2 MODELO HETEROGÉNEO

El modelo heterogéneo utiliza simulación numérica directa con base en técnicas

desarrolladas para flujos de superficie libre y emplean método que rastrean la

interacción entre las interfaces. Estos métodos son bastante precisos y son

limitados únicamente por errores numéricos. Estos métodos permiten calcular

arrastre, tensión superficial y fuerzas viscosas. La ventaja del modelo heterogéneo

frente al modelo homogéneo radica en que el homogéneo no es capaz de resolver

estructuras de ondas finas y perturbaciones superficiales pequeñas [20].

Page 33: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

33

Finalmente, cabe aclarar que el método de Lattice Boltzmann emplea un modelo de

tipo homogéneo.

5.3 METODOLOGÍA

Para las simulaciones se empleó la librería “Palabos”. Esta librería es un marco para

propósitos generales de la dinámica computacional de fluidos que emplea como

base el método de Lattice Bolzmann. El lenguaje de programación que se emplea

es C++. Es necesario un compilador para poder abrir la librería y correr las

simulaciones [21], para este trabajo se empleó el compilador del software

CODEBLOCKS.

El código de los resultados entregados está disponible en Anexos con una

explicación del código.

Page 34: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

34

6. RESULTADOS

6.1 SEGREGACIÓN

Este resultado simula la aparición de una segunda fase líquida dentro de una fase

gaseosa. La malla empleada fue de 200x200 𝑙𝑢2y la condición de frontera asignada,

en todos los extremos de la simulación, fue periódica. Además, los parámetros del

SCMP se escogieron con base en trabajo de Sukop y Dani Or [10] [4], dichos valores

corresponden a: 𝜌𝑜 = 200, 𝜓0 = 4 y 𝐺 = −120. Adicionalmente se utiliza un valor de

𝜏 = 1.

Esta simulación se inicializa con un término que indica una condición aleatoria de

densidades para que pueda observarse el cambio de fase. El valor inicial de la

densidad fue de 𝜌𝑜 = 200 𝑚𝑢 𝑙𝑢−2, el cual se le sumó el parámetro aleatorio de la

siguiente manera:

𝜌 = 𝜌𝑜 +𝑁𝑢𝑚𝑒𝑟𝑜𝐴𝑙𝑒𝑎𝑡𝑜𝑟𝑖𝑜

𝑀á𝑥𝑖𝑚𝑜 𝑁𝑢𝑚𝑒𝑟𝑜 𝐴𝑙𝑒𝑎𝑡𝑜𝑟𝑖𝑜∗ 𝐶

De lo anterior, 𝐶 representa el valor de una constante que puede tomar cualquier

valor real sin ningún significado físico. Por otro lado, la división entre el número

aleatorio y el máximo número aleatorio, implica que el parámetro aleatorio que se le

está asignando a la función de densidad, para inicializar el problema, puede

observarse como un porcentaje desde 0 hasta 100% del valor de la constante que

se le establezca. La magnitud de la constante escogida, va a influir en el tiempo de

duración para que la simulación reduzca su área superficial hasta que termine en

una sola burbuja.

Page 35: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

35

Se halló que, al incrementar el valor de la constante, el tiempo que le tomaba la

simulación, para que el dominio convergiera en una sola burbuja, se reducía. Por

ejemplo, para un valor de la constante de 1, el resultado se demora

aproximadamente 86000 ts. Por consiguiente, para lograr un tiempo de simulación

similar al de los resultados obtenidos por Sukop y Dani, se puede incrementar el

valor de la constante hasta un valor de 40. Para ese último valor, el tiempo de

simulación fue muy cercano al del trabajo de referencia. En la Ilustración 10 se

observan imágenes de la simulación obtenida en diferentes pasos de tiempo,

mientras que en la Ilustración 11 se muestra el resultado de Sukop y Dani Or.

Ilustración 10. Los resultados obtenidos con constante de 40, corresponden a los tiempos: 0, 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600 ts.

Page 36: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

36

Ilustración 11. Los resultados obtenidos de Sukop, corresponden a los tiempos: 0, 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600 ts [4].

En resumidas cuentas, entre mayor sea el valor de la constante del valor aleatorio

más rápida va a ser la simulación ya que van a haber más partículas de líquido

(color rojo) que de vapor (color azul), por lo que el líquido no se desplazará tanto

para minimizar su área superficial.

Se logra observar en esta simulación la condensación y evaporación de varias

burbujas, además se logra ver una tendencia del sistema a minimizar su área

superficial en consecuencia a la minimización de la energía libre [4].

6.2 LIQUIDO A TENSIÓN

En este resultado se simuló cavitación en un líquido puro por medio de someter al

dominio a tensión. Los parámetros del SCMP se mantienen iguales (𝜌0 = 200, 𝜓0 =

4 y 𝐺 = −120) con un dominio de 200x200 𝑙𝑢2 y se utiliza un 𝜏 = 1.

Se asignaron condiciones de frontera periódicas en las fronteras verticales

(izquierda y derecha), mientras que en las fronteras horizontales (arriba y abajo) se

utilizaron fronteras con velocidad hacia afuera del dominio para que generara

Page 37: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

37

tensión en el líquido y se diera cambio de fase. La velocidad asignada fue de 𝑣 =

0.05 𝑙𝑢 𝑡𝑠−1 en la dirección-Y hacia afuera del domino. Se obtuvo el siguiente

resultado:

Ilustración 12. Resultado obtenido de la Simulación de Cavitación Homogénea. Color rojo es líquido y el color azul es el vapor.

Los resultados obtenidos se compararon con los resultados que obtuvieron Dani y

Sukop [4] y se logró identificar que el comportamiento de las densidades no fue

exactamente el mismo, debido a que en la simulación que se realizó, no se logró

asignar adecuadamente la densidad en las condiciones de frontera superior e

inferior del dominio. La razón por la que so se consiguió implementar la densidad

de líquido en las condiciones de frontera mencionadas, se debe a que se

implementó la condición de velocidad en los nodos frontera superior e inferior que

se encontraban dentro del dominio, el inconveniente que presentó fue que impedía

asignarle otra densidad en esos nodos. Una posible solución al problema es asignar

la condición de velocidad como una frontera externa del dominio para que todo el

fluido mantenga la misma densidad y se logren los mismos resultados que obtuvo

Sukop. Aunque la solución propuesta no se logró implementar por el tiempo limitado

que se tuvo, con los resultados obtenidos se puede apreciar que la densidad en

ambos resultados se estabiliza en valores cercanos.

Page 38: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

38

Ilustración 13. Resultado de Sukop y Dani Or en donde muestra el comportamiento de la densidad en la simulación de cavitación en líquido puro [10].

Ilustración 14. Resultados obtenidos que muestran el comportamiento de la densidad en cada paso de tiempo.

Se puede observar que las densidades en ambos casos se estabilizan en valores

cercanos. El valor de la densidad del gas y del líquido estable, en la simulación

0

100

200

300

400

500

600

700

0 2000 4000 6000 8000 10000 12000

Den

sid

ad [

mu

lu^

-2]

Time Step

Page 39: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

39

realizada, es de 521 y 79 𝑚𝑢 𝑙𝑢−2 respectivamente. Mientras que el valor de en la

simulación realizada por Sukop y Dani Or, los valores fueron de 524 y 85 𝑚𝑢 𝑙𝑢−2.

6.3 FLUJO EN VENTURI.

Finalmente, se simuló la cavitación hidrodinámica en un tubo de Venturi. Para esto

se asignaron los siguientes parámetros: 𝜌0 = 200, 𝜓0 = 4, 𝜏 = 1 y 𝐺 = −120; con

un dominio de 1600x100 𝑙𝑢2.

Con respecto a las condiciones de frontera, se estableció condición de frontera

periódica en las fronteras: derecha e izquierda, mientras que el resto de fronteras

corresponde al tubo (sólido), por lo tanto son condiciones de Bounce-Back.

Adicionalmente, en la frontera de la izquierda se agregó una condición de velocidad

hacia la derecha, para que el flujo se mantenga en movimiento.

Se realizaron dos simulaciones con dos diferentes velocidades en la entrada

(frontera de la izquierda), la primera no generó cavitación, pero la segunda se logra

apreciar el cambio de fase.

La primera velocidad implementada fue de 0.5 𝑙𝑢 𝑡𝑠−1 y se simuló por un tiempo de

20000 ts. Esa velocidad no generó cambio de fase. Puede observarse en las

siguientes ilustraciones.

Page 40: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

40

Ilustración 15. Densidad de la Simulación de Venturi sin Cavitación

Ilustración 16. Velocidad de la Simulación de Venturi sin Cavitación

De la Ilustración 15 y Ilustración 16, se logra observar que la densidad del líquido no

baja de 500, lo que quiere decir que se mantiene en fase líquida. Además, debido a

que no se presentó turbulencia, la simulación no presentó problemas de

convergencia y tanto la densidad como la velocidad se lograron estabilizar después

de aproximadamente 12000 iteraciones.

Por otro lado, se incrementó la velocidad de la entrada a 0.7 𝑙𝑢 𝑡𝑠−1. En este caso,

ya se logra observar una densidad que es equivalente a la densidad del vapor

obtenida en la simulación de cavitación en líquido puro.

Page 41: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

41

Ilustración 17. Densidad de la Simulación de Venturi Con Cavitación

Ilustración 18. Ampliación de Escala Ilustración 17

Ilustración 19. Velocidad de la Simulación de Venturi Con Cavitación

De la Ilustración 18, puede observarse que, para esa velocidad, empieza a existir una

fase de vapor a la salida del cuello del Venturi. Sin embargo, esta simulación ya

empieza a presentar niveles considerables de turbulencia en el fluido, por lo que la

simulación diverge después de 11000 ts y no alcanza a estabilizarse la simulación.

Una solución a este inconveniente es emplear otro operador de colisión que no sea

el BGK. Una buena opción es implementar el modelo que proporciona el MRT

(multiple-relaxation-time), el cual ya no presenta un parámetro de relajación, sino

que presenta una matriz diagonalizable de parámetros de relajación lo que

proporciona mayor estabilidad con flujos turbulentos [22]. La solución no se logró

implementar por el limitado tiempo con el que se contaba.

Page 42: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

42

7. CONCLUSIONES

Los modelos empleados para las simulaciones fueron el modelo D2Q9 para simular

el flujo en 2 dimensiones, el modelo BGK para la función de colisión y el modelo

SCMP para simular el cambio de fase. Además, se comprendió el método de Lattice

Boltzmann, por medio del estudio de varios artículos y trabajos realizados años

atrás, que exponen la evolución y derivación del método, condiciones de frontera,

modelos de colisión, modelos para simulación de flujos multifásicos y modelos para

representar las direcciones y velocidades de las partículas.

Las simulaciones se realizaron con base en la librería de Palabos, cuyo lenguaje de

programación es C++. De los tres resultados obtenidos se logra concluir lo siguiente:

En el resultado obtenido por la simulación “Segregación”, ejecutado en un

medio cuadrado con fronteras periódicas, se observa que el método de

Lattice Boltzmann permite simular de una manera no muy complicada los

cambios de fase al iniciar el problema en un valor inestable de la densidad

según la ecuación de estado dada por el modelo escogido. Los resultados

obtenidos concuerdan en gran medida con un trabajo realizado

anteriormente [4]. Es importante tener en cuenta el parámetro de

inicialización aleatorio para la densidad ya que de éste depende el tiempo

que demore la simulación hasta que llegue a la menor área superficial

posible.

El resultado de la simulación de cavitación en un líquido puro sometido a

tensión se realizó con dos fronteras periódicas y dos fronteras con velocidad

hacia afuera del dominio. En éste resultado se logró observar cómo el líquido

cambiaba de fase a medida que pasa el tiempo. Se logró identificar las

densidades estables del líquido y del vapor; lo que coincide con la referencia

comparada [10]. Asimismo, hay que tener cuidado con las condiciones de

Page 43: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

43

frontera asignadas al problema debido a que tienen un gran impacto en la

simulación y con respecto a la librería que se empleó, pueden haber

complicaciones al momento de asignarlas.

El resultado del flujo de líquido a través del Venturi se realizó con dos

fronteras periódicas, una condición de velocidad a la entrada del tubo de

Venturi y condición de Bounce-Back para los nodos sólidos. En éste, se logró

realizar dos flujos, en el cual, en uno de éstos se consigue observar una fase

de vapor. Por otro lado, es de gran importancia saber el régimen del flujo que

se está manejando ya que dependiendo del modelo de colisión que se esté

manejando el sistema puede divergir. En el caso de la simulación realizada

con cavitación, es una buena alternativa emplear el modelo MRT para evitar

que no diverga.

Para finalizar, se puede afirmar que el método de Lattice Boltzmann es un método

que posee muchas alternativas de desarrollo para el futuro y vale la pena seguir

trabajando con éste.

Page 44: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

44

8. REFERENCIAS

[1] E. Amromin, "Development and Validation of Computational Fluid Dynamics Models for

Initial Stages of Cavitation," ASME, 2014.

[2] D. Liuzzi, Two-Phase Cavitation Modelling, Rome: UNIVERSITY OF ROME - LA SAPIENZA -,

2012.

[3] . J.-P. Franc and . J.-M. Michel, Fundamentals of Cavitation, Netherlands: Springer, 2005.

[4] M. Sukop and D. Thorne, Jr, Lattice Boltzmann modelling An Introduction for Geoscientists

and Engineers, Berlin: Springer, 2006.

[5] N. R. Koosukuntla, "Towards Development of a Multiphase Simulation Model Using Lattice

Boltzmann Method (LBM)," The University of Toledo, Toledo, 2011.

[6] U. Frisch, B. Hasslacher and Y. Pomeau, "Lattice-Gas Automata for the Navier-Stokes

Equation," Physical Review Letters, 1986, pp. 1505-1508.

[7] J. G. Zhou, "Lattice Boltzmann Methods for Shallow Water Flows," United Kingdom, Springer,

2013, pp. 1-4.

[8] G. R. McNamara and G. Zanetti , "Use of the Boltzmann Equation to Simulate Lattice-Gas

Automata," PHYSICAL REVIEW LETTERS, 1988, pp. 2332-2335.

[9] D. A. Wolf-Gladrow, "Lattice-Gas Cellular Automata and Lattice Boltzmann Models - An

Introduction," Springer, 2005.

[10] M. Sukop and D. Or, "Lattice Boltzmann method for homogeneous and heterogeneous

cavitation," Connecticut, 2005.

[11] [Online]. Available: http://galileo.phys.virginia.edu/classes/252/kinetic_theory.html.

[12] A. A. Mohamad, "Lattice Boltzmann Method Fundamentals and Engineering Applications,"

Springer, 2011.

[13] S. Chen and G. Doolen, "LATTICE BOLTZMANN METHOD FOR FLUID FLOWS," Annual Review

of Fluid Mechanics, pp. 329-360.

[14] A. KUZMIN and A. MOHAMAD, "MULTI-RELAXATION TIME LATTICE BOLTZMANN MODEL,"

Calgary, World Scientific Publishing Company, 2008, pp. 875-901.

[15] D. Yu, R. Mei, L.-S. Luo and W. Shyy, "Viscous flow computations with the method of lattice

Boltzmann equation," PERGAMON, 2003.

Page 45: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

45

[16] A. L. Kupershtokh, D. A. Medvedev and D. I. Karpov, "On equations of state in a lattice

Boltzmann method," Computers and Mathematics with Applications, 2009.

[17] [Online]. Available: http://wiki.palabos.org/models:bc.

[18] E. Amromin, "Development and Validation of Computational Fluid Dynamics Models for

Initial Stages of Cavitation," Federal Way, WA.

[19] R. Samulyak and Y. Prykarpatskyy, "Richtmyer–Meshkov instability in liquid metal flows:

influence of cavitation and magnetic fields," ELSEVIER, USA, 2004.

[20] R. Samulyak, Y. Prykarpatskyy, T. Lu, J. Glimm, Z. Xu and M.-N. Kim, "Comparison of

heterogeneous and homogenized numerical models of cavitation".

[21] "Palabos," [Online]. Available:

http://www.palabos.org/documentation/userguide/introduction.html#what-is-palabos.

[22] [Online]. Available: http://wiki.palabos.org/models:lbmodels.

[23] D. J. Bespalko, "Validation of the Lattice Boltzmann Method for Direct Numerical Simulation

of Wall-Bounded Turbulent Flows," Ontario, 2011.

Page 46: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

46

9. ANEXOS

9.1 SEGREGACIÓN

De la línea 2 a la línea 13 se importan las librerías que se van a emplear, se asigna

la carpeta en donde se van a guardar las imágenes de la simulación y se define el

descriptor que se va a usar.

Page 47: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

47

De la línea 18 a la línea 63 se crea una clase para definir las condiciones iniciales

del problema empleando una función rand (aleatoria) que permitirá originar

densidades iniciales diferentes en el dominio de simulación para que haya cambio

de fase.

De la línea 67 a la 75 se crea una clase que inicializa las condiciones iniciales.

De la línea 88 a la 93 se crea una clase que permite crear imágenes de tipo VTK.

Page 48: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

48

Finalmente de la línea 96 a la 163 se crea la clase main que ejecuta las clases

anteriores. De la línea 102 a la 112 se definen los parámetros de la simulación. En

las líneas 114 y 115 se define el modelo de colisión que se va a emplear. En la línea

117 se define las condiciones de frontera periódica para todas las fronteras. En las

Page 49: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

49

líneas 120 y 121 se establece un tipo de frontera en dos dimensiones. De la línea

124 a la 130 se especifica el modelo de cambio de fase SCMP Shan-Chen. En la

línea 132 se ejecutan las condiciones iniciales. Finalmente, de la línea 135 a la 160

se crea el output (lo que entrega) la simulación en cada paso de tiempo, como por

ejemplo las imágenes, el valor de las densidades máximo y mínimo de la simulación

en el paso de tiempo actual, entre otros.

9.2 LIQUIDO A TENSIÓN

De la línea 1 a la línea 12 se importan las librerías necesarias para el desarrollo del

código, se asigna la carpeta en donde se van a guardar las imágenes de la

simulación y se define el descriptor que se va a usar.

Page 50: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

50

De la línea 17 a la línea 62 se crea una clase para definir las condiciones iniciales

del problema definiendo una densidad inicial que cumpla con la fase líquida

correspondiente al modelo de cambio de fase utilizado. Lo anterior permitirá originar

una densidad de fase líquida homogénea en el dominio (sin fases de vapor dentro

del líquido).

Page 51: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

51

De la línea 66 a la 91 se definen las ubicaciones de las fronteras, se impone una

velocidad de salida en las fronteras superior e inferior y se inicializa las condiciones

iniciales.

De la línea 94 a la 99 se crea una clase que permite crear imágenes de tipo VTK

que mostrarán la densidad en el dominio de la simulación.

Page 52: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

52

Por último, de la línea 102 a la 173 se crea la clase main que ejecuta las clases

anteriores. De la línea 109 a la 119 se definen los parámetros de la simulación. En

las líneas 121 y 122 se define el modelo de colisión que se va a emplear. En las

Page 53: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

53

líneas 125 y 126 se define las condiciones de frontera periódica para las fronteras

ubicadas en la izquierda y en la derecha. En las líneas 128 y 129 se establece un

tipo de frontera en dos dimensiones. De la línea 131 a la 140 se especifica el modelo

de cambio de fase SCMP Shan-Chen. En la línea 142 se ejecutan las condiciones

iniciales. En último lugar, de la línea 145 a la 172 se crea el output (lo que entrega)

la simulación en cada paso de tiempo, como por ejemplo las imágenes, el paso de

tiempo, el valor de las densidades máximo y mínimo de la simulación en el paso de

tiempo actual, entre otros.

9.3 FLUJO EN VENTURI.

De la línea 2 a la línea 19 se importan las librerías que se emplearán para el

desarrollo del código y se define el descriptor que se va a usar.

Page 54: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

54

De la línea 24 a la 46 se define una clase para describir la geometría del obstáculo

que entrará en contacto el fluido.

Page 55: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

55

De la línea 50 a la línea 84 se crea una clase para definir las condiciones iniciales

del problema definiendo una densidad inicial que cumpla con la fase líquida

correspondiente al modelo de cambio de fase utilizado. Lo anterior permitirá originar

una densidad de fase líquida homogénea en el dominio (sin fases de vapor dentro

del líquido).

Page 56: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

56

De la línea 87 a la 120 se definen las ubicaciones de las fronteras, se impone una

velocidad de salida en las fronteras superior e inferior y se inicializa la Lattice.

De la línea 122 a la 139 se crea una clase que permite crear imágenes de tipo

VTK y GIF que mostrarán la densidad y velocidades en el dominio de la

simulación.

Page 57: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

57

Page 58: DESARROLLO DE ALGORITMOS COMPUTACIONALES BASADOS …

58

Por último, de la línea 139 a la 206 se crea la clase main que ejecuta las clases

anteriores. De la línea 145 a la 157 se definen los parámetros de la simulación. En

las líneas 160 y 161 se define el modelo de colisión que se va a emplear. En las

líneas 163 y 164 se establece un tipo de frontera en dos dimensiones. En la línea

166 se incorpora la condición de velocidad a la entrada y el obstáculo. En la línea

164 se define las condiciones de frontera periódica para las fronteras ubicadas en

la izquierda y en la derecha. De la línea 170 a la 171 se inicializa las condiciones

iniciales. De la línea 174 a la 178 se especifica el modelo de cambio de fase SCMP

Shan-Chen. En la línea 180 se inicializa el código. En último lugar, de la línea 182

a la 205 se crea el output (lo que entrega) la simulación en cada paso de tiempo,

como por ejemplo las imágenes (VTK y GIF), el paso de tiempo, el valor de las

densidades máximo y mínimo de la simulación en el paso de tiempo actual, entre

otros.