-- Introduction à la méthode de Boltzmann sur Réseau --

TP n°3

Ecoulement autour d'un cylindre Carré

simon.marie@lecnam.net

Groupe :

NOM Prénom des personnes du groupe:

Préambule

Le TP doit être rendu sous la forme d'un Notebook jupyter en respectant la nomenclature suivante:

TP3_Cylindre_GroupeN.ipynb

En remplaçant N par le numéro de votre groupe. Tous les résultats, discussions, analyses, doivent donc être inclus dans le fichier.

Vous pouvez vous familiariser avec les notions de Python utiles pour ce TP dans ce Notebook.

Présentation du TP

On se propose dans se TP de simuler numériquement l'écoulement d'un fluide autour d'un cylindre carré à l'aide d'un code Lattice Boltzmann utilisant le modèle $D2Q9$.

Le modèle D2Q9

Le modèle à 9 vitesses de la méthode de Boltzmann sur réseau assure l'égalitité des moments jusqu'à l'ordre 2 et permet donc la simulation des écoulements visqueux régit par les équations de Navier-Stokes avec une limitation en nombre de Mach. Les paramètres du modèle sont résumés dans le tableau suivant:

$c_\alpha$$\omega_\alpha$$c_0$$\tau_g$
$(0,0)\\ (1,0) (0,1) (-1,0) (0,-1)\\ (1,1) (-1,1) (-1,-1) (1,-1)$$\dfrac{4}{9},\\ \dfrac{1}{9},\dfrac{1}{9},\dfrac{1}{9},\dfrac{1}{9},\\ \dfrac{1}{36},\dfrac{1}{36},\dfrac{1}{36},\dfrac{1}{36}$$\dfrac{1}{\sqrt{3}}$$\dfrac{1}{2}+\dfrac{\tilde{\nu}}{c_0^2}$

La fonction d'équilibre du modèle s'écrit: $$ \displaystyle{g_{\alpha}^{eq}=\rho\omega_\alpha\left(1+\dfrac{c_{\alpha,i}u_i}{c_0^2}+\dfrac{(c_{\alpha,i}u_i)^2}{2c_0^4}-\dfrac{u_i^2}{2c_0^2}\right)} $$

et son algorithme général: $$ \displaystyle{g_{\alpha}^{coll} = g_{\alpha}-\dfrac{1}{\tau_g}[g_{\alpha}-g_{\alpha}^{eq}]\\ g_{\alpha}(x,y) = g_{\alpha}^{coll}(x-c_{\alpha,x},y-c_{\alpha,y})} $$

Les variables macroscopiques sont calculées à partir des moments des fonctions de distribution: $$ \rho=\sum_{\alpha=1}^9 g_{\alpha} $$

$$ \rho u_x=\sum_{\alpha=1}^9 c_{\alpha,x}g_{\alpha} $$$$ \rho u_y=\sum_{\alpha=1}^9 c_{\alpha,y}g_{\alpha} $$

Le cylindre carré

L'écoulement autour d'un cylindre carré est un cas test très utilisé en CFD et en particulier en Lattice Boltzmann car il présente l'avantage d'avoir une géométrie cartésienne simple. Le nombre de Reynolds de cet écoulement est basé sur le coté $D$ du carré: $$ Re=\dfrac{U_0 D}{\nu} $$

Au delà d'une valeur critique $R_e=48$, l'écoulement devient instable et on observe une allée de von Karmann se former, caractérisée par des tourbillons en opposition de phase en aval du cylindre. Pour les faibles nombres de Reynolds ($Re<500$), on peut estimer la distance $\delta$ moyenne entre les tourbillons: $\delta\sim 2.5 D$

Travail demandé

Définition des paramètres et des fonctions

Pour les paramètres du calcul, on basera les grandeurs sur le diamètre du cylindre D. On prendra un domaine de $(20D,10D)$, $M_0=0.3$ et les paramètres du modèle D2Q9 décrits plus haut. On placera le centre du cylindre au point $(x_0,y_0)=(8D,5D)$. Le diamètre du cylindre pourra prendre différentes valeurs pendant l'étude.

Le nombre d'itération sera choisi pour atteindre un temps normalisé $t^*=n_t \frac{U_0}{D}=150$.

On souhaite réaliser plusieurs simulations en faisant varier le nombre de Reynolds entre 20 et 150. En prenant 3 valeurs de Reynolds entre les bornes spécifiées: [20, 80, 150]

Calculer les temps de relaxation associés $\tau_g$ et completer les cellules suivantes pour pouvoir effectuer les calculs.

Compléter les fonctions suivantes (remplacer les "...") correspondants aux étapes principales de l'algorithme LBM:

  1. Initialisation: cette fonction doit initialiser les variables macroscopiques et la fonction d'équilibre. On initialisera la pression à $1$ dans tout le domaine et la vitesse $u_x=U_0$ telle que $M_0=0.3$.
  2. Collision: Cette étape est purement locale et peut donc être faite sur tous les points (Pas besoin des voisins).
  3. Propagation: Cette étape propage la collision aux points voisins. Elle ne porte que sur les points intérieur au domaine. Pour cette étape on pourra utiliser une boucle ou du slicing (Voir Notebook Intro_Python si vous n'êtes pas familier avec ces notions)
  4. Conditions aux limites: Cette étape complète l'étape précédente pour les points frontières. Pour ce TP on choisira des conditions aux limites périodiques. Ainsi le point de maillage $i+1$ après $i=nx$ est le point $i=0$, comme si le domaine de calcul été répété périodiquement dans toutes les directions de l'espace.
  5. Conditions aux limites solides: Cette étape permet la prise en compte d'obstacles solides dans l'écoulement. Une approche simple consiste à attribuer à chaque fonction de distribution son symétrique par rapport à la vitesse nulle. Une autre approche consiste à attribuer à chaque fonction de distribution son symétrique par rapport à la paroi. On pourra tester une des deux approche.
  6. Calcul des moments: Cette étape calcul les variables macroscopiques $\rho$,$u_x$,$u_y$
  7. Mise à jour de l'équilibre: Cette étape calcul la nouvelle fonction d'équilibre.
  8. Ecriture des résultats: Cette étape enregistre dans une nouvelle variable, une partie de la solution à chaque itération. Pour ce TP on enregistrera le signal de pression sur le point $x_s,y_s=x_0+5D,y_0+D$.

Calcul

Une fois les paramètres et les fonctions définis, on procède au calcul:

Convergence en maillage

Réaliser 5 simulations avec des résolutions différentes pour le nombre de Reynolds le plus grand. On pourra prendre $D\in[4,6,8,10,15]$ Tracer dans chaque cas l'évolution du signal temporel de pression en fonction du temp normalisé $t^*$.

Commentaires et Analyse .... ....

Analyse des résultats

Représenter le champ de pression et le champ de vitesse longitudinale obtenus à la fin de la simulation pour chacun des 3 Reynolds. (On prendra la résolution la plus grande)

A partir des résultats précédents, calculer la distance moyenne entre 2 tourbillons et comparer à la valeur théorique donnée plus haut.

Tracer l'évolution temporelle des signaux de pression dans un point du sillage et décrire le résultat obtenu.

Peut-on observer une fréquence particulière dans ces signaux. Commenter.

Proposer une méthode pour calculer le coefficient de Trainée du cylindre et donner la valeur obtenue pour les 3 Reynolds choisis.

Résultats:

Re $C_d$
--- ---
--- ---
Commentaires et Analyse .... ....

Conclusion

Présenter ici la synthèse de votre TP en décrivant les points importants et les principaux résultats.
.... ....

Retour en haut de la page