u3.02.01 Interface du fichier de maillage GMSH avec Aster#
Résumé:
GMSH est un outil de modelage, maillage et post-traitement diffusé sous licence GNU-GPL (https://gmsh.info, exécutables, sources et documentation disponibles sur ce site).
On décrit ici le principe de l’interface qui permet d’utiliser dans Aster un fichier issu de GMSH.
Cette interface est mise en œuvre dans Aster par la commande PRE_GMSH [U7.01.31].
Entités GMSH et groupes Aster#
Le modeleur de GMSH manipule des points, lignes, surfaces ou volumes en tant qu’entités géométriques (non maillées). Le maillage GMSH est construit en maillant dans cet ordre les lignes, les surfaces puis les volumes appuyés sur celles-ci.
En général, on manipule des parties du maillage pour appliquer les propriétés matériaux, les conditions aux limites ou les chargements. Pour accéder à ces sous-parties du maillage, il est nécessaire de définir des «physical» dans GMSH. Un «physical» est composée d’une ou plusieurs entités géométriques. L’interface GMSH-Aster produit un groupe de mailles pour chaque «physical»: si le «physical 21» est constitué de deux volumes, le groupe de maille \(\mathit{GM21}\) contient les mailles de ces deux volumes.
Remarque:
Dans GMSH, on visualise les entités constituant un «physical» par le menu Tools/Visibility et en sélectionnant le numéro. On peut ensuite utiliser la commande DEFI_GROUP dans Aster pour manipuler un nom de groupe de mailles plus explicite.
Attention:
Il ne faut pas créer des «physicals» regroupant d’autres «physicals», car cela conduirait à produire des mailles doubles.
Le numéro des «physicals» doit être inférieur à 1000000.
Exemples#
Géométrie et maillage GMSH#
On crée une géométrie très simple: un carré de côté \(1\) . Ici, on crée les points, les lignes, la surface; on aurait aussi pu la faire par translation/extrusion…
NB:
On crée un «physical» qui contient la surface carrée de numéro 107.
L=1;
d=0.45;
Point(1) = {0, 0, 0, d};
Point(2) = {L, 0, 0, d};
Point(3) = {L, L, 0, d};
Point(4) = {0, L, 0, d};
Line (1) = {1, 2};
Line (2) = {2, 3};
Line (3) = {3, 4};
Line (4) = {4, 1};
Line Loop (106) = {2, 3, 4, 1};
Plane Surface (6) = {106};
Physical Surface(107) = {6};
Le maillage créé avec l’algorithme 2D anisotrope est:
Le fichier du maillage GMSH contient la description des nœuds et des mailles:
$NOD
9
1 0 0 0
2 1 0 0
3 1 1 0
4 0 1 0
5 0.4999999999999931 0 0
6 1 0.4999999999999931 0
7 0.500000000000007 1 0
8 0 0.500000000000007 0
13 0.5000000000000001 0.5 0
$ENDNOD
$ELM
8
1 2 107 6 3 13 1 5
2 2 107 6 3 8 1 13
3 2 107 6 3 5 2 13
4 2 107 6 3 13 2 6
5 2 107 6 3 6 3 13
6 2 107 6 3 13 3 7
7 2 107 6 3 7 4 13
8 2 107 6 3 13 4 8
$ENDELM
La syntaxe de ce fichier est décrite dans la section “File formats/Gmsh mesh file format“ du manuel de GMSH.
Fichier de maillage Aster produit par l’opérateur PRE_GMSH#
TITRE
AUTEUR=INTERFACE_GMSH DATE=17/07/2003
FINSF
%
COOR_3D NBOBJ=9
%FORMAT=(1*NOM_DE_NOEUD,3*COORD)
N1 0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00
N2 1.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00
N3 1.00000000000000E+00 1.00000000000000E+00 0.00000000000000E+00
N4 0.00000000000000E+00 1.00000000000000E+00 0.00000000000000E+00
N5 4.99999999999993E-01 0.00000000000000E+00 0.00000000000000E+00
N6 1.00000000000000E+00 4.99999999999993E-01 0.00000000000000E+00
N7 5.00000000000007E-01 1.00000000000000E+00 0.00000000000000E+00
N8 0.00000000000000E+00 5.00000000000007E-01 0.00000000000000E+00
N13 5.00000000000000E-01 5.00000000000000E-01 0.00000000000000E+00
FINSF
%
TRIA3 NOM=INDEFINI NBOBJ=8
M1 N13 N1 N5
M2 N8 N1 N13
M3 N5 N2 N13
M4 N13 N2 N6
M5 N6 N3 N13
M6 N13 N3 N7
M7 N7 N4 N13
M8 N13 N4 N8
FINSF
%
GROUP_MA NOM=GM107
M1 M2 M3 M4 M5 M6 M7 M8
FINSF
%
FIN
Les huit triangles composant le carré maillé sont ensuite accessibles dans Aster dans le groupe de maille GM107.