u3.04.01 Interface du fichier de maillage GIBI avec Code_Aster#
Résumé:
L’utilisation de GIBI (mailleur de CASTEM 2000) peut se faire sur station de travail Unix/Linux selon les versions disponibles.
On décrit ici le principe de l’interface qui permet d’utiliser dans Code_Aster un fichier issu de CASTEM 2000.
Cette interface est mise en œuvre dans Aster par la commande PRE_GIBI [U7.01.11].
Documentation sur l’utilisation de GIBI#
La documentation de GIBI peut être obtenue en exécutant GIBI avec le fichier de données suivant:
NOTICE ;
FIN ;
On récupère alors dans le listing du travail, la liste des chapitres correspondant à tous les opérateurs de GIBI.
GIBI dispose d’une documentation en ligne qui permet d’avoir la syntaxe de chaque opérateur par la commande:
INFO nom de la commande ;
mais également la possibilité de connaître l’ensemble des opérateurs dédiés au maillage, regroupés par fonctionnalités (opérateurs de création de points, d’entités linéiques, d’entités surfaciques et d’entités volumiques …) par la commande:
INFO DEBU ;
Ces informations sont également disponibles depuis un navigateur internet (l’emplacement dépend de l’installation locale).
Conseil d’utilisation de GIBI pour Aster#
Ne pas oublier que chaque commande se termine par un « ; »,
Code_Aster sait relire les fichiers créés par GIBI ayant le niveau 3, 4, 5, 6, 8, 9, 10, 11 ou 13. Ce niveau est lié au changement de format,
penser qu’il n’est pas possible d’imposer le passage du maillage par un point ou une ligne ne figurant pas sur le contour extérieur. Prévoir le découpage de la géométrie en conséquence,
penser que GIBI oriente avec ses propres conventions les différentes mailles. Des éléments peuvent être ainsi « retournés » (d’où des jacobiens négatifs et des pressions à l’envers !). Dans GIBI, l’utilisateur dispose des opérateurs INVERSE et ORIENTER pour modification l’orientation d’éléments. On se reportera avantageusement à la commande MODI_MAILLAGE ([U4.23.04], mots-clés ORIE_PEAU_2D/3D) pour intervenir sur l’orientation des mailles dans Aster ,
l’opérateur PRE_GIBI suppose que GIBI s’est effectué sans erreur, c’est-à-dire que la seconde ligne du fichier .mgib est « NIVEAU NIVEAU ERREUR 0 DIMENSION … »
Dans le cas contraire, on effectue, quand même l’interface, en émettant une alarme,
le fichier contenant le maillage GIBI doit être produit par la commande « SAUVER FORMAT maillage »; c’est le seul format relu par l’interface PRE_GIBI.
Interface avec Aster#
L’interface avec Aster est activée par la commande PRE_GIBI [U7.01.11].
Entités de maillage GIBI et Aster#
Le mailleur GIBI manipule des objets typés et nommés (Cf. doc d’utilisation de GIBI).
Les types utilisés sont:
les constantes entières, réelles, texte, …,
les POINTS,
les MAILLAGES (ensemble de mailles).
La commande PRE_GIBI a pour effet :
d’écrire les points (GIBI) sous forme de nœuds ( Aster ) : les noms des nœuds Aster sont de la forme : \({N}_{i}\) où \(i\) est le numéro GIBI du point correspondant,
d’écrire les mailles ( Aster ) contenues dans les maillages (GIBI) : les noms des mailles Aster sont de la forme : \({M}_{j}\) où \(j\) est le numéro d’ordre de la maille GIBI dans le fichier de résultat GIBI,
d’écrire des GROUP_MA ( Aster ) correspondant aux maillages (GIBI) et de mêmes noms,
Remarque:
Les groupes de mailles ne contiennent que les mailles définissant effectivement le maillage GIBI. Ils ne contiennent pas les mailles des objets référencés dans ce maillage (les bords par exemple).
d’écrire des GROUP_NO ( Aster ) réduits à un seul nœuds et dont les noms sont les noms des points de GIBI.
On remarque que PRE_GIBI n’engendre pas de GROUP_NO contenant plusieurs nœuds. Ce qui serait parfois très utile pour imposer des conditions aux limites sur tous les nœuds d’un bord. Pour ce faire, l’utilisateur dispose dans Aster de la commande DEFI_GROUP qui permet de créer des groupes de nœuds à partir de groupes de mailles.
Le mot-clé CREA_GROUP_NO de l’opérateur DEFI_GROUP [U4.22.01] permet de contourner cet obstacle.
Exemples#
pour GIBI : \(A\) et \(B\) sont des points nommés.
On retrouve donc dans le maillage Aster des GROUP_NO de noms \(A\) et \(B\)
pour GIBI : \(\mathit{AB}\) , \(\mathit{CARRE}\) , \(\mathit{C1}\) , …, \(\mathit{C4}\) sont des maillages nommés.
On retrouve donc dans le maillage Aster des GROUP_MA de noms : \(\mathit{AB}\) , \(\mathit{CARRE}\) , \(\mathit{C1}\) , …, \(\mathit{C4}\)
Remarque :
L’interface n’écrit qu’une seule fois des mailles éventuellement identiques (ce qui arrive parfois avec l’opérateur « ET » de GIBI). Ceci a pour conséquence que les noms des mailles \({M}_{j}\) peuvent avoir une « numérotation à trous ». Il ne faut pas s’en inquiéter.
L’orientation des mailles est celle donnée par GIBI. Ceci peut avoir de l’importance pour certains changements : pression, …
Il faut être conscient du fait que les opérateurs de maillage de GIBI orientent les éléments (avec des règles précisées dans la documentation). Certains éléments peuvent être « retournés » par rapport à d’autres. Un autre jeu de commandes GIBI aurait pu, par exemple engendrer le maillage:
Remarque concernant la commande POIN de GIBI#
Cette commande peut produire des résultats de type différent:
si cette commande permet de récupérer un seul point,
par exemple :
PA = toto POIN PROC A ;
ou
PA = toto POIN INITIAL ;
alors \(\mathit{PA}\) est un point GIBI nommé.
Pour Aster , on aura un GROUP_NO de nom \(\mathit{PA}\) qui ne contient qu’un nœud.
si cette commande permet de récupérer plusieurs points :
par exemple :
PA = toto POIN DROIT A B 1.0D-2 ;
alors \(\mathit{PA}\) est un maillage GIBI nommé :
Ce maillage est constitué de mailles POI1.
Pour Aster , on aura un GROUP_MA de nom \(\mathit{PA}\) qui contient plusieurs POI1. Pour utiliser cet objet en tant que GROUP_NO, il faudra utiliser le mot-clé facteur CREA_GROUP_NO de la commande DEFI_GROUP.
Fichier de commandes GIBI#
OPTI DIME 2 ELEM TRI3 ;
*
* POINTS NOMMES:
*
A = 0.0 0.0 ;
B = 1.0 0.0 ;
*
* MAILLAGES:
*
AB = DROI 2 A B ;
CARRE = AB TRAN 1 (0. 1.);
C1 C2 C3 C4 = COTE CARRE ;
*
SAUVER FORMAT CARRE ;
FIN;
*
Fichier de résultat GIBI : (à titre indicatif)#
ENREGISTREMENT DE TYPE 4
NIVEAU 11 NIVEAU ERREUR 0 DIMENSION 2
DENSITE 0.00000E+00
ENREGISTREMENT DE TYPE 7
NOMBRE INFO CASTEM2000 8
IFOUR -1 NIFOUR 0 IFOMOD -1 IECHO 1 IIMPI 0 IOSPI 0 ISOTYP 1
NSDPGE 0
ENREGISTREMENT DE TYPE 2
PILE NUMERO 1NBRE OBJETS NOMMES 6NBRE OBJETS 5
AB CARRE C1 C2 C3 C4
2 1 2 3 4 5
4 0 4 3 4
2 3 4 5
0 0 0 0
1 2 3 1 3 4 2 5 3 5
6 3
2 0 0 2 2
0 0
1 2 2 5
2 0 0 2 1
0
5 6
2 0 0 2 2
0 0
6 3 3 4
2 0 0 2 1
0
4 1
ENREGISTREMENT DE TYPE 2
PILE NUMERO 32NBRE OBJETS NOMMES 2NBRE OBJETS 6
A B
1 5
6
1 3 6 5 2 7
ENREGISTREMENT DE TYPE 2
PILE NUMERO 33NBRE OBJETS NOMMES 0NBRE OBJETS 1
21
0.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00
1.00000000000000E+00 0.00000000000000E+00 0.00000000000000E+00
5.00000000000000E-01 0.00000000000000E+00 5.00000000000000E-01
0.00000000000000E+00 1.00000000000000E+00 0.00000000000000E+00
0.00000000000000E+00 1.00000000000000E+00 0.00000000000000E+00
5.00000000000000E-01 1.00000000000000E+00 5.00000000000000E-01
1.00000000000000E+00 1.00000000000000E+00 0.00000000000000E+00
ENREGISTREMENT DE TYPE 5
LABEL AUTOMATIQUE : 1