Ce dossier contient les valeurs initiales et les conditions limites des différentes grandeurs. Les conditions aux limites sous OpenFOAM est le point le plus délicat. Leur rôle dans la modélisation n'est pas simplement dans la géométrie, mais représentent une partie intégrale de la solution. Dans cette partie nous allons nous focaliser sur ce point, et nous discuterons la façon dont elles sont traitées sous OpenFOAM. Chaque grandeur à résoudre (U,p,k...) par le solveur doit être initialisée sur toutes les zones du cas ainsi qu'à l'intérieur du domaine.
Il faut bien noter que toute frontière est généralement divisée en un ensemble de ce qu'on appelle "patch". Chaque patch peut contenir une ou plusieurs zones fermées de la frontière en question, qui ne sont pas nécessairement connectées physiquement.
Il y a trois attributs qu'on peut associer à un "patch" :
Brièvement nous allons expliquer ce que chaque type signifie.
patch : Concerne une frontière qui ne contient aucune information géométrique ou topologique (par exemple une entrée ou une sortie).
empty : Comme OpenFOAM ne génére que des maillages 3D, quand l'utilisateur veut résoudre un problème 2D, il faut spécifier une condition particulière vide sur les frontières qui nécessitent aucune solution.
cyclic : Permet de traiter deux patches comme étant connectés physiquement. Ceci est utile pour les géométries répétées (un faisceau de tubes par exemple).
processor : Cette option permet de diviser le maillage, afin que chaque partie soit traitée par un processeur si le code tourne en parallèle, ce qui est pratique pour les géométries compliquées avec un maillage très lourd.
Le fichier boundary qui contient cet attribut est de la forme suivante :
Il y a de nombreux types de zones possibles, les types classiques et leur description sont présentés dans le tableau suivant :
Type | Description |
fixedValue | Valeur fixée par l'utilisateur. |
zeroGradient | Gradient normal à la zone nul. |
fixedGradient | Gradient normal à la zone fixé. |
inletOutlet | fixedValue lorsque la zone est une inlet et zeroGradient dans le cas contraire. |
totalPressure | La pression totale est constante, quand U changes, p est ajusté (vice-versa). |
pressureInletVelocity |
Quand p est connu à l'entrée, U est évaluée à partir du flux normal à la frontière en question. |
pressureInletOutletVelocity | Combinaison de pressureInletOutlet et InletOutlet. |
calculated | La grandeur est déduite des autres grandeurs. |
Ces attributs sont présentées dans le dossier 0/ de la façon suivante (on considère la grandeur vitesse U) :