SCHéMAS NUMéRIQUFS
L
F besoin de recourir aux simulations numériques est
aujourd'hui omniprésent dans de multiples domaines d'applications
(automobile, aéronautique et thermique...) et ce pour plusieurs
raisons.
Tout d'abord, les simulations numériques permettent de
tester l'influence de certains paramètres et de comprendre les
phénomènes impliqués dans un écoulement :
l'accès à certaines informations est rendu possible,
l'écoulement peut être calculé et donc visualisé en
2D ou 3D.
Dans ce chapitre, nous décrivons les moyens que nous
avons mis en oeuvre pour implémenter les différents concepts
théoriques présentés auparavant et concevoir un code de
calcul pour la simulation de nos modèles. Nous avons choisi de
travailler avec le langage Python pour l'implémentation et ceci pour
plusieurs raisons, c'est un langage :
- interprété car il est directement
exécuté sans passer par une phase de compilation qui traduit le
programme en langage machine, comme c'est le cas pour le langage C,
- orienté objet de haut niveau car il propose des
fonctionnalités avancées et automatiques.
- modulaire car de nombreux modules et librairies ont
été développées,
- et à syntaxe positionnelle en ce sens que
l'indentation fait partie du langage. Alors que le point virgule permet de
séparer les instruction en langage C, l'accolade permet de commencer un
bloc d'instruction. En Python, seule l'indentation permet de marquer le
début et la fin d'un bloc.
Ainsi la syntaxe de Python est beaucoup plus simple que celle
des autres langage, ce qui améliore de façon très
significative les temps de développement.
4.1 MAILLAGF
La méthode des éléments finis repose sur
un découpage du domaine selon un maillage. L'étape du maillage
est une étape clé pour s'assurer de la validité des
simulations. Et nous utilisons le logiciel Gmsh
développé par Christophe Geuzaine et Jean-François
Remacle pour réaliser les maillages bidimensionnels sur lesquels nous
tavaillons.
4.1.1 Description du logiciel Gmsh
Le logiciel Gmsh est doté de 3
fonctionnalités principales. C'est un logiciel assez
développé, permettant la manupulation de champs de nature
variées ( scalaire, vectorielle, tensorielle, continu ou non), et
dispose d'un volume de visualisation de résultats de calculs
scientifiques.
Les fonctions
Il possède différents modules. Trois de ceux-ci
nous sont particulièrement utiles : les modules de la
géométrie, du maillage et du post-processing.
Géométie : Gmsh nous
permet de produire une grande variété de formes
géométriques. La construction d'une géométrie
permet l'emploi de paramètre sur les longueurs d'arêtes, le nombre
de mailles, la longueur des mailles,...ce qui rend facile l'adaptation d'un
maillage à un nouveau problème.
Tout élément, surface, ligne ou point peut
être considéré comme étant «physique»
c'est-à-dire qu'une information supplémentaire appelé
tag correspondant à une propriété physique sera
attribuée à l'entité, et transmise dans le fichier
contenant le maillage fini. Cela permet de différencier physiquement les
différents point, arêtes, surfaces et volumes s'ils ont des
propriétés particulières.
Mailleur : le Logiciel permet de produire un
maillage de triangles sur les surfaces définies par la
géométrie. Le nombre et la taille des mailles sont définis
via des paramètres attachés aux frontières de ces
surfaces. Le maillage peut se faire suivant certaines contraintes de
régularité des mailles (lignes et surfaces dites transfinies)
avec un nombre de noeuds imposé sur une arête, ou bien par la
définition d'une longueur approximative de côté de
mailles.
Le mailleur permet de mailler dans une, deux ou trois
dimensions, en formant successivement des éléments
linéaires surfaciques et volumiques. Post-processing :
les résultats peuvent être visualisés via le postprocesseur
de Gmsh.
Le maillage produit est traduit
généralement en termes de noeuds, lignes, surfaces et volumes
dans un fichier.msh.
La forme de fichier est décrit ci-dessous :
NOD
Nombre de Noeuds
numéro du noeud1 Xnoeud1 , Ynoeud1 , Znoeud1 ... ... ...
...
ENDNOD
ELM
Nbr elem
num elem type elem physical reg elem nbr noeuds num noeuds ...
... ... ...
ENDELM
où :
- Nbr elem = nombre d'élements (lignes, arêtes,
triangles et/ ou quadrangles),
- num elem = numéro de l'élement,
- type elem = type d'élément ( 1 = arête, 2 =
triangle, 3 = quadrangle), - physical = tag attribué à
l'élement,
- reg elem = numéro de l'entité élementaire
auquel appartient l'élement,
- nbr noeuds = nombre de noeuds de l'élement,
- num noeuds = les numéros des noeuds de
l'élement.
Dans ce travail, nous considérons deux domaines de
même dimensions pour nos différents calculs, dans les quelles nous
incluons deux structures différentes.
1. un domaine avec stucture symétrique de type : une
ellipse L'avantage de ce cas est de permettre une étude de
sensibilité au maillage. Cela consiste à faire des simulations
avec un nombre de mailles différent, et aussi de vérifier la
cohérence et la symétrie de nos résultats.
2. et un autre domaine avec stucture non symétrique : le
sous-marin Ce domaine sera notre véritable domaine d'étude, nous
ferons plusieurs simulations avec différents maillages, et pour
différentes hauteurs du sous-marin dans le domaine.
Après avoir créer nos différents
maillages avec le logiciel Gmsh aux formats «
fichier.msh », nous les importerons pour un autre
logiciel afin de pouvoir effectuer les calculs des matrices élementaires
en vu de les assemblées pour nos simulations. Nous utiliserons pour cela
le logiciel Getfem + + , que nous décrivons brièvement
dans le paragraphe qui suit.
|