Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
1/18

Organisme(s) : EDF-R&D/AMA















Manuel d'Utilisation
Fascicule U4.2- : Maillage
Document : U4.22.01





Opérateur DEFI_GROUP










1 But

Définir dans un maillage existant, de nouveaux groupes de noeuds ou de mailles. Ceci peut faciliter la
définition de nouveaux lieux géométriques pour des entrées de données ou des post-traitements.

Pour créer de nouveaux groupes, on utilise des critères topologiques, logiques ou géométriques.

Modifie une structure de données de type maillage ou squelette.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
2/18


2 Syntaxe

ma (maillage) =
DEFI_GROUP
(





reuse = ma,




MAILLAGE
= ma
,
/
[maillage]
/
[squelette]




| DETR_GROUP_MA = _F (






NOM
=
lgma ),
[l_group_ma]



| DETR_GROUP_NO = _F (






NOM
=
lgno ),
[l_group_no]





| CREA_GROUP_MA = (_F (






NOM
=
gma
,
[identificateur]





/ MAILLE
=
lmail
,
[l_maille]






/ TOUT = 'OUI' ,






/
INTERSEC
=
lgma ,
[l_group_ma]






/
UNION
=
lgma ,
[l_group_ma]






/
DIFFE
=
lgma ,
[l_group_ma]






/ GROUP_MA = gma
,
[group_ma]







/ NUME_INIT
= / nuini , [I]
/
1
,
[DEFAUT]
NUME_FIN

=
nufin
,
[I]








/ POSITION = / 'INIT' ,
/
'FIN'
,
/
'MILIEU'
,







/ OPTION
= 'FACE_NORMALE' ,







/ ANGL_NAUT = (, ) , [l_R]








/ VECT_NORMALE= (x, y, z) , [l_R]







ANGL_PREC = / , [R]












/
0.5,
[DEFAUT]







VERI_SIGNE
=
/ 'NON' ,












/
'OUI'
,
[DEFAUT]







/ OPTION
= 'SPHERE'
,







/ POINT = (x, y, z),


[l_R]








/
NOEUD_CENTRE
=
no,
[noeud]








/ GROUP_NO_CENTRE = grno, [group_no]








RAYON
=
r, [R]







/ OPTION
= 'CYLINDRE'
,







/ POINT = (x, y, z),


[l_R]








/
NOEUD_CENTRE
=
no,
[noeud]








/ GROUP_NO_CENTRE = grno, [group_no]








RAYON
=
r, [R]







/ ANGL_NAUT = (, ), [l_R]
/
VECT_NORMALE=
(x,
y,
z),
[l_R]
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
3/18








/ OPTION
= 'BANDE'
,







/ POINT = (x, y, z),


[l_R]








/
NOEUD_CENTRE
=
no,
[noeud]








/ GROUP_NO_CENTRE = grno, [group_no]







/ ANGL_NAUT = (, ), [l_R]








/ VECT_NORMALE= (x, y, z),
[l_R]








DIST
=
d,
[R]







/ OPTION
= 'APPUI_LACHE'
,







/ GROUP_NO
=
lgno
,
[l_group_no]








/
NOEUD
=
lno,
[l_noeud]









),),


|
CREA_GROUP_NO
=
(_F(





/
NOM
=
gno
,
[identificateur]






/ NOEUD
=
lnoeu
,
[l_noeud]







/ INTERSEC = lgno , [l_group_no]







/
UNION
=
lgno ,
[l_group_no]







/
DIFFE
=
lgno ,
[l_group_no]







/ GROUP_NO = gno
,
[group_no]








/ NUME_INIT
= / nuini , [I]
/
1
,
[DEFAUT]
NUME_FIN
=
nufin
,
[I]









/ POSITION = / 'INIT'
,
/
'FIN'
,
/
'MILIEU'
,

/
OPTION
=
'ENV_SPHERE'
,








/ POINT = (x, y, z),

[l_R]









/ NOEUD_CENTRE = no,

[noeud]









/ GROUP_NO_CENTRE = grno, [group_no]









RAYON
=
r, [R]









PRECISION
=
eps
,
[R]

/
OPTION
=
'ENV_CYLINDRE'
,








/ POINT = (x, y, z),

[l_R]









/ NOEUD_CENTRE = no,

[noeud]









/ GROUP_NO_CENTRE = grno, [group_no]









RAYON
=
r, [R]








/ ANGL_NAUT =(, ),
[l_R]
/
VECT_NORMALE=(x,
y,
z),
[l_R]








PRECISION = eps, [R]

/
OPTION

=
'PLAN'
,








/ POINT = (x, y, z),

[l_R]









/ NOEUD_CENTRE = no,

[noeud]









/ GROUP_NO_CENTRE = grno, [group_no]








/ ANGL_NAUT =(, ),
[l_R]
/
VECT_NORMALE=(x,
y,
z),
[l_R]








PRECISION = eps, [R]

Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
4/18


/
OPTION

=
'SEGM_DROI_ORDO'
,








/ NOEUD = lno ,
[l_noeud]
/
GROUP_NO




=
gno2
,
[group_no]








/ NOEUD_ORIG = noA ,
[noeud]
/
GROUP_NO_ORIG=
gnoA
,
[group_no]








/ NOEUD_EXTR = noB ,
[noeud]
/
GROUP_NO_EXTR=
gnoB
,
[group_no]









PRECISION
=
prec,
[R]








CRITERE = / 'RELATIF' ,













/ 'ABSOLU' ,


/
OPTION

=
'NOEUD_ORDO'
,









GROUP_MA
= gmaAB
,
[group_ma]








/ NOEUD_ORIG = noA ,
[noeud]
/
GROUP_NO_ORIG=
gnoA
,
[group_no]








/ NOEUD_EXTR = noB ,
[noeud]
/
GROUP_NO_EXTR=
gnoB
,
[group_no]

/
OPTION

=
'TUNNEL'
,








/ TOUT = 'OUI'










/ | GROUP_MA = lgma ,
[l_group_ma]









| MAILLE = lmai ,
[l_maille]








/ MAILLE_AXE = noA ,
[l_maille]
/
GROUP_MA_AXE
=
gnoA
,
[l_group_ma]








/ NOEUD_ORIG = noA ,
[noeud]
/
GROUP_NO_ORIG=
gnoA
,
[group_no]








RAYON = r , [R]








LONGUEUR = long ,
[R]

/
GROUP_MA





=
lgma,
[l_identificateur]






NOM = lgno,



[l_group_no]






CRIT_NOEUD = / 'TOUS' ,

[DEFAUT]
/
'SOMMET'
,
/
'MILIEU'
,
/
'CENTRE'
,


/
TOUT_GROUP_MA
:
'OUI'
,
),),






ALARME
=
/
'OUI',
[DEFAUT]
/
'NON',






INFO = / 1,









/ 2,








)

Type du résultat :


Si MAILLAGE : maillage
alors :
maillage
:
squelette
squelette

Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
5/18


3 Opérandes

3.1
Généralités sur les opérandes

Cette commande traite de la même façon les concepts de type maillage ou squelette. Dans la
suite on utilisera le vocabulaire "maillage".

Cette commande permet de définir de nouveaux groupes de mailles (ou groupes de noeuds) dans un
maillage existant : on enrichit le maillage ma.

La définition d'un nouveau groupe peut se faire de plusieurs façons :

·
en extension : mots clés MAILLE ou NOEUD,
·
par opération booléenne sur des groupes existants : intersection (INTERSEC), réunion
(UNION) ou différence (DIFFE),
·
suivant un critère géométrique : mailles dont un noeud appartient à une sphère donnée, ...
·
pour les groupes de noeuds, en faisant référence à des groupes de mailles existants. Le
groupe de noeuds ainsi défini contient tous les noeuds des mailles du groupe de mailles
origine (mots clés TOUT_GROUP_MA et GROUP_MA).

L'opérateur traite d'abord le mot clé CREA_GROUP_MA pour que l'on puisse se servir des groupes de
mailles ainsi définis dans le mot clé CREA_GROUP_NO.

A chaque occurrence d'un mot clé CREA_GROUP_MA(_NO) on définit un nouveau groupe nommé (mot
clé NOM). Ce nouveau groupe peut alors être réutilisé dans les occurrences suivantes pour définir de
nouveaux groupes par intersection, réunion, ...

Les mots clés DETR_GROUP_MA et DETR_GROUP_NO permettent de "détruire" des groupes de mailles
ou de noeuds. Les mailles et les noeuds de ces groupes ne sont pas supprimés, ce sont seulement les
définitions des groupes qui sont effacées. Ces mots clés sont utiles par exemple dans les boucles
python lorsque l'on veut créer un groupe à chaque itération de la boucle : on commence par détruire
ce groupe puis on le recrée sous le même nom. Cela évite de changer de nom de groupe à chaque
itération.

3.2 Opérande
MAILLAGE

MAILLAGE = ma

ma est le nom du maillage que l'on veut "enrichir".

3.3 Mots
clés
DETR_GROUP_MA et DETR_GROUP_NO

Ces deux mots clés facteur permettent de supprimer la définition de groupes de mailles ou de noeuds.
Ces mots clés sont parfois nécessaires car le code s'arrête en erreur fatale si l'on tente de créer un
groupe dont le nom est déjà utilisé. Il faut détruire le groupe avant de pouvoir réutiliser son nom. Le
comportement des deux mots clés est similaire et nous ne parlerons ici que de DETR_GROUP_MA.

Syntaxe :
DETR_GROUP_MA=_F(NOM=(gm1,gm2, ...)),

Le mot clé facteur DETR_GROUP_MA est a priori répétable mais ce n'est jamais nécessaire car le mot
clé NOM permet d'indiquer une liste de noms de groupes à détruire (gm1,gm2, ...).
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
6/18


Il est important de savoir que toutes les occurrences du mot clé DETR_GROUP_MA sont traitées avant
celles du mot clé CREA_GROUP_NO car l'objectif de ce mot clé est de pouvoir réutiliser le nom détruit. Il
faut également savoir que la destruction d'un groupe inexistant n'entraîne aucun message d'alarme.
Ces choix permettent par exemple de faire dans une boucle python :

for i in range(n) :
DEFI_GROUPE(reuse=MA, MAILLAGE=MA,
DETR_GROUP_MA=_F(NOM('GM1',),
CREA_GROUP_MA=_F(NOM='GM1', ...

Lors de la première itération, le groupe 'GM1' n'existe pas, on demande sa destruction mais aucun
message d'alarme n'est émis.

Remarque :

Comme les destructions ont lieu au début de la commande, il est impossible de modifier un
groupe en faisant un seul appel à
DEFI_GROUP. Par exemple, on ne peut pas faire "grossir"
(dans une boucle) un groupe en lui ajoutant un petit groupe (b1) :

for i in range(n):
b1=nouveau groupe ...
DEFI_GROUP(reuse=MA,MAILLAGE=MA,
CREA_GROUP_MA=_F(NOM='tout', UNION=('tout','b1'),),)

Pour faire cela, il faut appeler deux fois DEFI_GROUP :

for i in range(n):
b1=nouveau groupe ...
DEFI_GROUP(reuse=MA,MAILLAGE=MA,
DETR_GROUP_MA=_F(NOM='tout2'),
CREA_GROUP_MA=_F(NOM='tout2', UNION=('tout','b1'),),)
DEFI_GROUP(reuse=MA,MAILLAGE=MA,
DETR_GROUP_MA=_F(NOM='tout'),
CREA_GROUP_MA=_F(NOM='tout', UNION=('tout2','b1'),),)


3.4 Mot
clé
CREA_GROUP_MA

| CREA_GROUP_MA

Une occurrence de ce mot clé facteur permet de définir un nouveau groupe de mailles.

3.4.1 Opérande
NOM


NOM = gma

On donne ici le nom (avec "quotes") du nouveau groupe de mailles.

3.4.2 Opérande
MAILLE


/ MAILLE = lmail

Ce mot clé permet de définir le groupe de mailles en extension : on donne la liste des mailles
le constituant.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
7/18


3.4.3 Opérande
TOUT


/ TOUT = 'OUI'

Ce mot clé permet de définir un groupe contenant toutes les mailles du maillage.

3.4.4 Opérande
INTERSEC


/ INTERSEC = (gma1, gma2, gma3,...),

Le nouveau groupe de mailles sera obtenu en prenant toutes les mailles de gma1 qui
appartiennent aussi à gma2, gma3,.... L'ordre des mailles reste celui de gma1.

3.4.5 Opérande
UNION

/
UNION
= (gma1, gma2, gma3,...)

Le nouveau groupe de mailles sera obtenu en prenant toutes les mailles de gma1, puis en
ajoutant les mailles de gma2 qui n'appartiennent pas à gma1, puis celles de gma3 qui
n'appartiennent ni à gma1 ni à gma2, etc.

3.4.6 Opérande
DIFFE


/ DIFFE = (gma1, gma2, gma3,...)

Le nouveau groupe de mailles sera obtenu en prenant toutes les mailles de gma1 qui
n'appartiennent pas aux autres groupes de la liste. L'ordre des mailles reste celui de gma1.

3.4.7 Sous-groupe d'un groupe existant
: mots clé GROUP_MA / POSITION /
NUME_INIT / NUME_FIN

On peut créer un nouveau groupe de maille en sélectionnant certaines mailles d'un groupe existant.

1ère possibilité :

On crée un groupe d'une seule maille en précisant par le mot clé POSITION la maille recherchée.

Exemple :

CREA_GROUP_MA = _F (
GROUP_MA = G1
, POSITION = 'INIT' , NOM = G1I )

Le groupe G1I contient la 1ère maille du groupe G1.

2ème possibilité :

On crée un groupe contenant les mailles comprises entre les rangs nuini et nufin (inclus) dans un
groupe existant.

Exemple :

CREA_GROUP_MA=_F (GROUP_MA = G1, NUME_INIT = 3
, NUME_FIN = 7,
NOM =
G1P)

Le groupe G1P contient les mailles 3, 4, 5, ..., 7 de G1.

Attention :

Ces mots clés utilisent la notion d'ordre des mailles dans un groupe de mailles. Cet ordre est
souvent inconnu de l'utilisateur. Il peut dépendre du préprocesseur. C'est l'ordre des mailles lors
de la définition du GROUP_MA dans le fichier de maillage Aster.

Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
8/18


3.4.8 Opérande
OPTION = 'FACE_NORMALE'


/ OPTION = 'FACE_NORMALE'

Cette option permet de définir un GROUP_MA constitué de mailles surfaciques dont la normale
est parallèle à la direction du vecteur défini par ses composantes si l'on utilise le mot-clé
VECT_NORMALE ou à celle du premier vecteur de la nouvelle base définie par le changement
de repère dû aux angles nautiques.

En 3D, on suppose que les mailles surfaciques sont des facettes planes. Elles sont de type
TRIA3, TRIA6, QUAD4, QUAD8 ou QUAD9. Si l'on appelle X1, X2, et X3 les vecteurs position
des trois premiers noeuds sommets de l'élément, la normale est déterminée par le produit
vectoriel : (X2 ­ X1) (X3 ­ X1).

En 2D, on suppose que les mailles surfaciques sont des segments droits. Elles sont de type
SEG2 ou SEG3. Si l'on appelle X1 et X2 les vecteurs position des deux noeuds extrémités de
l'élément, la normale est définie par (X2 ­ X1) zz est le vecteur unitaire perpendiculaire
au plan et où l'on a affecté 0. comme troisième composante à X2 ­ X1.

Remarque :

Une maille "facette" sera retenue si sa normale est colinéaire au vecteur normal défini par
VECT_NORMALE [§3.3.6.2]. Cette condition doit être vérifiée à une certaine précision près
(mot clé ANGL_PREC [§3.3.6.3]).

Lorsque l'on choisit un ANGL_PREC (par exemple 30. degrés), on définit en fait le groupe des
mailles dont la normale appartient au cône d'axe VECT_NORMALE et d'angle au sommet
ANGL_PREC.

Ceci peut être utilisé (par exemple) pour regrouper les mailles d'une demi enveloppe
sphérique (ANGL_PREC = 90.).




3.4.8.1 Opérande
ANGL_NAUT

/ ANGL_NAUT
=

en 2D






(, ) en 3D

Les angles nautiques , définis en degrés, sont les angles permettant de passer du repère
global de définition des coordonnées des noeuds à un repère dont le premier vecteur désigne
la direction selon laquelle est orientée la normale des mailles surfaciques que l'on souhaite
récupérer.

Pour la définition des angles nautiques, voir l'opérateur AFFE_CARA_ELEM [U4.42.01]
opérande ORIENTATION.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
9/18


3.4.8.2 Opérande
VECT_NORMALE

/ VECT_NORMALE = (x, y)
en 2D
(x,
y,
z)
en 3D

Les coordonnées x, y, z sont celles donnant la direction selon laquelle est orientée la
normale des mailles surfaciques que l'on souhaite récupérer.

3.4.8.3 Opérande
ANGL_PREC

ANGL_PREC
=

C'est la tolérance, en degrés, que l'on accepte sur l'angle formé par le vecteur fourni par
l'utilisateur et le vecteur normal à l'élément surfacique pour affirmer que ces deux vecteurs ont la
même direction.

La valeur par défaut de est 0.5 degré.

3.4.8.4 Opérande
VERI_SIGNE

VERI_SIGNE
=
/ 'NON'
,
/
'OUI'
,
[DEFAUT]

Si l'on affecte la valeur 'NON' à VERI_SIGNE, le GROUP_MA sera constitué des mailles
surfaciques dont la normale est parallèle au vecteur donné par l'utilisateur.

Si l'on affecte la valeur 'OUI', le GROUP_MA sera constitué des mailles surfaciques dont la
normale est parallèle et a la même orientation que le vecteur donné par l'utilisateur.

La valeur par défaut est 'OUI'.

3.4.9 Opérande
OPTION = 'SPHERE'


/ OPTION = 'SPHERE'

Cette option permet de définir un GROUP_MA constitué des mailles dont au moins un noeud
appartient à une sphère (un cercle en 2D) définie par son centre et son rayon.

3.4.9.1 Opérande
POINT

/ POINT = (x, y)
en 2D
(x,
y,
z)
en 3D

x y z sont les coordonnées du centre de la sphère.

3.4.9.2 Opérande /NOEUD_CENTRE /GROUP_NO_CENTRE

/ NOEUD_CENTRE


= no
/ GROUP_NO_CENTRE = grno

Ces deux mots clés permettent d'indiquer quel est le noeud coïncidant avec le centre de la
sphère.

3.4.9.3 Opérande
RAYON

RAYON = r

r est le rayon de la sphère (du cercle en 2D).

3.4.10 Opérande OPTION = 'CYLINDRE'


/ OPTION = 'CYLINDRE'

Cette option permet de définir un GROUP_MA constitué des mailles dont au moins un noeud
appartient à un cylindre défini par son axe et son rayon.

L'axe est défini par un vecteur et un point appartenant à cet axe. Cette option n'a de sens
qu'en 3D.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
10/18


3.4.10.1 Opérande POINT

/ POINT = (x, y, z)

x y z sont les coordonnées d'un point situé sur l'axe du cylindre.

3.4.10.2 Opérande /NOEUD_CENTRE /GROUP_NO_CENTRE

/ NOEUD_CENTRE


= no
/ GROUP_NO_CENTRE = grno

Ces deux mots clés permettent d'indiquer un noeud situé sur l'axe du cylindre.

3.4.10.3 Opérande RAYON

RAYON = r

r est le rayon du cylindre.

3.4.10.4 Opérande ANGL_NAUT

/ ANGL_NAUT
= (, )

Les angles nautiques , définis en degrés, sont les angles permettant de passer du repère
global de définition des coordonnées des noeuds à un repère dont le premier vecteur désigne
la direction de l'axe du cylindre.

Pour la définition des angles nautiques voir l'opérateur AFFE_CARA_ELEM [U4.42.01]
opérande ORIENTATION.

3.4.10.5 Opérande VECT_NORMALE

/ VECT_NORMALE = (x, y, z)

x y z sont les coordonnées d'un vecteur orientant l'axe du cylindre.

3.4.11 Opérande OPTION = 'BANDE'


/ OPTION = 'BANDE'

Cette option permet de définir un GROUP_MA constitué des mailles dont au moins un noeud
appartient à une "bande" définie par un plan "milieu" (une droite en 2D) et la demi-largeur de
part et d'autre de ce plan.

Le plan est défini par un vecteur normal à ce plan et un point lui appartenant.

3.4.11.1 Opérande POINT

/ POINT = (x, y)
en 2D
(x,
y,
z)
en 3D

x y z sont les coordonnées d'un point appartenant au plan "milieu" de la bande.

3.4.11.2 Opérande / NOEUD_CENTRE / GROUP_NO_CENTRE

/ NOEUD_CENTRE


= no
/ GROUP_NO_CENTRE = grno

Ces deux mots clés permettent de définir un appartenant au plan "milieu" de la bande.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
11/18


3.4.11.3 Opérande ANGL_NAUT

/ ANGL_NAUT
=

en 2D






(, ) en 3D

Les angles nautiques , définis en degrés, sont les angles permettant de passer du repère
global de définition des coordonnées des noeuds à un repère dont le premier vecteur est
orthogonal au plan "milieu" de la bande.

Pour la définition des angles nautiques, voir l'opérateur AFFE_CARA_ELEM [U4.42.01]
opérande ORIENTATION.

3.4.11.4 Opérande VECT_NORMALE

/ VECT_NORMALE = (x, y)
en 2D
(x,
y,
z)
en 3D

x y et z sont les composantes d'un vecteur perpendiculaire au plan "milieu" de la bande.

3.4.11.5 Opérande DIST

DIST
=
d

d est la demi-largeur de la bande.

3.4.12 Opérande OPTION = 'APPUI_LACHE'

/ GROUP_NO = l_gno
/ NOEUD
= l_no

Cette option permet de récupérer le groupe des mailles dont l'un (au moins) des noeuds appartient à
l'ensemble des noeuds spécifiés par les mots clés NOEUD et GROUP_NO.


3.5 Mot
clé
CREA_GROUP_NO

| CREA_GROUP_NO

Une occurrence de ce mot clé facteur permet de définir un nouveau groupe de noeuds (pour les
mots clés GROUP_MA et TOUT_GROUP_MA, on crée plusieurs groupes de noeuds "d'un coup").

3.5.1 Opérande
NOM


/ NOM = gno

On donne ici le nom (avec "quotes") du nouveau groupe de noeuds.

3.5.2 Opérande
NOEUD


/ NOEUD = lnoeu

Ce mot clé permet de définir le groupe de noeuds en extension : on donne la liste des noeuds
le constituant.

3.5.3 Opérande
INTERSEC


/ INTERSEC = (gno1, gno2, gno3,...)

Le nouveau groupe de noeuds sera obtenu en prenant tous les noeuds de gno1 qui
appartiennent aussi à gno2, gno3,.... L'ordre des noeuds reste celui de gno1.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
12/18


3.5.4 Opérande
UNION


/ UNION = (gno1, gno2, gno3,...)

Le nouveau groupe de noeuds sera obtenu en prenant tous les noeuds de gno1, puis en
ajoutant les noeuds de gno2 qui n'appartiennent pas à gno1, puis ceux de gno3 qui
n'appartiennent ni à gno1 ni à gno2, etc.

3.5.5 Opérande
DIFFE


/ DIFFE = (gno1, gno2, gno3,...)

Le nouveau groupe de noeuds sera obtenu en prenant tous les noeuds de gno1 qui
n'appartiennent pas aux autres groupes de la liste. L'ordre des noeuds reste celui de gno1.

3.5.6 Sous groupe d'un groupe existant
: mots clé GROUP_NO / POSITION /
NUME_INIT / NUME_FIN

On peut créer un nouveau groupe de noeud en sélectionnant certains noeuds d'un groupe existant.

1ère possibilité :

On crée un groupe d'un seul noeud en précisant par le mot clé POSITION le noeud recherché.

Exemple :

CREA_GROUP_NO = _F ( GROUP_NO = G1
, POSITION = 'INIT' , NOM = G1I )

Le groupe G1I contient le 1er noeud du groupe G1.

2ème possibilité :

On crée un groupe contenant les noeuds compris entre les rangs nuini et nufin (inclus) dans un
groupe existant.

Exemple :

CREA_GROUP_NO=_F(GROUP_NO = G1, NUME_INIT = 3
NUME_FIN = 7 , NOM = G1P)

Le groupe G1P contient les noeud 3, 4, 5, ..., 7 de G1.

Attention :

Ces mots clés utilisent la notion d'ordre des noeuds dans un groupe de noeuds. Cet ordre est
souvent inconnu de l'utilisateur. Il peut dépendre du préprocesseur. C'est l'ordre des noeuds lors
de la définition du GROUP_NO dans le fichier de maillage Aster.


3.5.7 Opérande
OPTION = 'ENV_SPHERE'


/ OPTION = 'ENV_SPHERE'

Cette option permet de définir un GROUP_NO constitué des noeuds situés sur l'enveloppe
d'une sphère à une précision donnée près.

3.5.7.1 Opérande
POINT

/ POINT = (x, y) ,
en 2D
(x,
y,
z), en 3D

x y z sont les coordonnées du centre de la sphère.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
13/18


3.5.7.2 Opérande /NOEUD_CENTRE /GROUP_NO_CENTRE

/ NOEUD_CENTRE


= no
/ GROUP_NO_CENTRE = grno

Ces deux mots clés permettent de définir le noeud coïncidant avec le centre de la sphère.

3.5.7.3 Opérande
RAYON

RAYON
= r

r est le rayon de la sphère.

3.5.7.4 Opérande
PRECISION

PRECISION
= eps

eps est la tolérance avec laquelle on définit l'appartenance d'un noeud à l'enveloppe de la sphère.
Cette tolérance est à prendre au sens suivant :

si d est la distance d'un noeud au centre de la sphère, on dit que ce noeud appartient au groupe
si :
d - r eps

3.5.8 Opérande
OPTION = 'ENV_CYLINDRE'


/ OPTION
=
'ENV_CYLINDRE'

Cette option permet de définir un GROUP_NO constitué de noeuds situés sur l'enveloppe d'un
cylindre à une précision donné près.

Cette option n'a de sens qu'en 3D.

3.5.8.1 Opérande
POINT

/ POINT = (x, y, z)

x y z sont les coordonnées d'un point appartenant à l'axe du cylindre.

3.5.8.2 Opérande /NOEUD_CENTRE /GROUP_NO_CENTRE

/ NOEUD_CENTRE


= no
/ GROUP_NO_CENTRE = grno

Ces deux mots clés permettent de définir un noeud appartenant à l'axe du cylindre.

3.5.8.3 Opérande
RAYON

RAYON
= r

r est le rayon du cylindre.

3.5.8.4 Opérande
ANGL_NAUT

/ ANGL_NAUT
= (, )

Les angles nautiques , définis en degrés, sont les angles permettant de passer du repère
global de définition des coordonnées des noeuds à un repère dont le premier vecteur désigne
la direction de l'axe du cylindre.

Pour la définition des angles nautiques, voir l'opérateur AFFE_CARA_ELEM [U4.42.01]
opérande ORIENTATION.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
14/18


3.5.8.5 Opérande
VECT_NORMALE

/ VECT_NORMALE = (x, y, z)

x y z sont les coordonnées d'un vecteur orientant l'axe du cylindre.

3.5.8.6 Opérande
PRECISION

PRECISION
= eps

eps est la tolérance avec laquelle on définit l'appartenance d'un noeud à l'enveloppe du cylindre.

Cette tolérance est à prendre au sens suivant :

si d désigne la distance du point courant à l'axe du cylindre, on dit que le point courant appartient
à l'enveloppe du cylindre si :
d - r eps

3.5.9 Opérande
OPTION = 'PLAN'

Cette option permet de définir un GROUP_NO constitué de noeuds situés sur une droite (en 2D) ou dans
un plan (en 3D) à une précision donnée près.

3.5.9.1 Opérande
POINT

/ POINT = (x, y) ,
en 2D





(x, y, z),
en 3D

x y z sont les coordonnées d'un point appartenant au plan (à la droite).

3.5.9.2 Opérande /NOEUD_CENTRE /GROUP_NO_CENTRE

/ NOEUD_CENTRE


= no
/ GROUP_NO_CENTRE = grno

Ces 2 mots clés permettent de définir un noeud appartenant au plan (à la droite).

3.5.9.3 Opérande
ANGL_NAUT

/ ANGL_NAUT
=
, en 2D






(, ), en 3D

Les angles nautiques , définis en degrés, sont les angles permettant de passer du repère
global de définition des coordonnées des noeuds à un repère dont le premier vecteur est
orthogonal au plan 'milieu' de la bande.

Pour la définition des angles nautiques, voir l'opérateur AFFE_CARA_ELEM [U4.42.01]
opérande ORIENTATION.

3.5.9.4 Opérande
VECT_NORMALE

/ VECT_NORMALE = (x, y) ,
en 2D
(x,
y,
z), en 3D

x y et z sont les composantes d'un vecteur perpendiculaire au plan (à la droite).

3.5.9.5 Opérande
PRECISION

PRECISION
= eps

eps est la tolérance avec laquelle on définit l'appartenance d'un noeud au plan (ou à la droite).

Cette tolérance est à prendre au sens suivant :

si d désigne la distance du noeud au plan (ou à la droite), on dit que ce noeud appartient à ce
plan (ou à cette droite) si :
d eps
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
15/18


3.5.10 Opérande OPTION = 'SEGM_DROI_ORDO'

Cette option sert à ordonner un ensemble de noeuds approximativement situés sur un segment de
droite AB.

/ NOEUD =
lno2,
/
GROUP_NO
=
gno2,

On définit l'ensemble des noeuds que l'on veut ordonner.

/ NOEUD_ORIG =
noA , / NOEUD_EXTR =
noB ,
/
GROUP_NO_ORIG
=
gnoA
,
/
GROUP_NO_EXTR
= gnoB ,

On définit les noeuds A et B, origine et extrémité du segment AB.

PRECISION
= prec,
CRITERE = / 'RELATIF' ,





/ 'ABSOLU' ,

Ces deux arguments sont des garde-fous, ils servent à vérifier que les noeuds que l'on
cherche à ordonner (lno2 ou gno2) sont bien sur le segment AB. Si l'écart d'un noeud avec
AB est supérieur à prec le code s'arrête en erreur fatale.
Si le critère choisi est 'RELATIF', la distance d'un noeud avec AB sera divisé par la longueur
de AB.

3.5.11 Opérande OPTION = 'NOEUD_ORDO'

Cette option sert à créer un group_no ordonné contenant les noeuds d'un ensemble de mailles formé
de segments (SEG2, SEG3 ou SEG4). L'ensemble de ces mailles doit former une ligne continue,
ouverte ayant deux extrémités.

GROUP_MA
= gmaAB

Nom du group_ma dont on veut ordonner les noeuds.
Les mailles de gmaAB doivent former une ligne ouverte.

/ NOEUD_ORIG =
noA , / NOEUD_EXTR =
noB
,
/
GROUP_NO_ORIG
=
gnoA
,
/
GROUP_NO_EXTR
= gnoB ,

Les mots clés permettent de définir les noeuds A et B, origine et extrémité de la ligne AB.

Le noeud A sera numéroté en premier, puis on se sert de la topologie des mailles de gmaAB pour
numéroter les noeuds de proche en proche.

Si le noeud A n'est pas fourni par l'utilisateur, le programme choisira comme noeud "origine", le premier
noeud de gmaAB qui n'appartient qu'à une seule maille segment. L'origine est donc arbitraire : le
programme aurait pu tout aussi bien tomber sur l'autre extrémité.

On vérifie que le dernier noeud numéroté est bien B (si celui-ci est donné).

3.5.12 Opérande OPTION = 'TUNNEL'

Cette option sert à créer le group_no formé des noeuds situés à l'intérieur d'un "tunnel" dont on fournit
l'axe et le rayon. Les noeuds retenus seront ceux dont la distance à l'axe est inférieure au rayon.

L'axe du "tunnel" est défini par les mailles linéiques fournies via les mots clés MAILLE_AXE et
GROUP_MA_AXE.

L'axe du tunnel doit avoir une "origine" définie par les mots clés NOEUD_ORIG et GROUP_NO_ORIG.

Le mot clé RAYON sert à définir le "rayon" du tunnel.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
16/18


On peut limiter le tunnel en donnant sa longueur par le mot clé LONGUEUR. Cette longueur est
mesurée à partir de l'origine du tunnel.

Les noeuds candidats à faire partie du tunnel sont ceux portés par les mailles définies par les mots
clés : TOUT='OUI', GROUP_MA et MAILLE.


3.5.13 Opérandes GROUP_MA et NOM


/ GROUP_MA = lgma

Pour chaque groupe de mailles de la liste lgma, on crée un groupe de noeuds formé des
noeuds portés par les mailles de ce groupe de mailles.



NOM = lgno

Si lgno est fourni par l'utilisateur, cette liste doit être de même longueur que lgma. Ce
sont les noms que l'on veut donner aux nouveaux groupes de noeuds.

Si lgno n'est pas fourni, les groupes de noeuds porteront les mêmes noms que les
groupes de mailles qui leur ont donné naissance.



CRIT_NOEUD
=
/'TOUS' [DEFAUT]
: on prend tous les noeuds de chaque maille.
/'SOMMET' : on ne prend que les noeuds "sommet" des mailles (c'est-à-dire les
extrémités des arrêtes).
/'MILIEU' : on ne prend que les noeuds "milieu" des arrêtes des mailles.
/'CENTRE' : on ne prend que les noeuds qui ne sont ni "sommet" ni "milieu"
c'est-à-dire les noeuds au centre des facettes ou des éléments
volumiques.


3.5.14 Opérande TOUT_GROUP_MA


/ TOUT_GROUP_MA = 'OUI'

Ce mot clé a la même signification que le précédent, sauf que l'on crée des groupes de
noeuds pour tous les groupes de mailles existants du maillage.

3.5.15 Opérande ALARME = 'OUI' [DEFAUT] / 'NON'

si ALARME = 'NON', le code n'émet pas d'alarme ; par exemple lorsqu'on lui demande de créer un
GROUP_NO et que ce groupe est vide. La valeur par défaut de ce mot clé est 'OUI'.

3.5.16 Opérande INFO

si INFO = 1, on imprime dans le fichier 'MESSAGE', le nombre de groupes crées et pour chaque
groupe, le nom du groupe et le nombre d'entités le constituant.

si INFO = 2, on imprime dans le fichier 'MESSAGE', le nombre de groupes crées et pour chaque
groupe, le nom du groupe, le nombre d'entités le constituant puis la liste des entités constituant le ou
les groupes.

Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
17/18


4 Exemples

Exemple 1 (critères topologiques et logiques) :

Soit ma un maillage contenant déjà les groupes de mailles :

M1 M2 M3

et les groupes de noeuds :

N1 N2 N3

ma = DEFI_GROUP (reuse = ma, MAILLAGE = ma,



CREA_GROUP_MA = (_F ( NOM = NM1,
MAILLE = (MA7, MA9,...)
),
_F
(
NOM
=
NM2, UNION
=

(M1,
NM1)
),
_F
(
NOM
=
NM3, DIFFE
=

(NM2,
M2)
),),



CREA_GROUP_NO = _F ( TOUT_GROUP_MA = 'OUI'),




)

ma = DEFI_GROUP (reuse = ma, MAILLAGE = ma,



CREA_GROUP_MA = _F ( NOM = NM4,
MAILLE = (MA7, MA11, MA13))



CREA_GROUP_NO = (_F ( NOM = NN1,
INTERSEC= (NM1, N1)),
_F(
GROUP_MA = NM4)))

Après ces deux appels à la commande DEFI_GROUP, le maillage contient alors :

·
les groupes de mailles :
-
M1, M2, M3 (initiaux)
-
NM1 = (mailles : MA7, MA9, ...)
-
NM2 = M1 "union" NM1
-
NM3 = NM2 "moins" M2
-
NM4 = (MAILLES : MA7, MA11, MA13)
·
les groupes de noeuds :
-
N1, N2, N3 (initiaux)
-
M1, M2, M3, NM1, NM2, NM3 : group_no contenant les noeuds des group_ma de
mêmes noms. Ces group_no sont créés par la 1ère commande DEFI_GROUP.
-
NN1 = NM1 "intersection" N1
-
NM4 = (noeuds du group_ma NM4)

Exemple 2 (critères géométriques) :

ma = DEFI_GROUP (reuse = ma, MAILLAGE = ma,
CREA_GROUP_MA=
(_F
( NOM = facesup , OPTION = 'FACE_NORMALE' ,


VECT_NORMALE
=
(0.,

0.,

1.)),








_F ( NOM = S01 ,
OPTION = 'SPHERE' ,









POINT = (0., 0., 0.), RAYON = 1.),),



CREA_GROUP_NO =(_F ( NOM = BO_S01
, OPTION = 'ENV_SPHERE' ,


POINT=(0.,0.,0.),RAYON=1.,PRECISION=0.01),



_F
(
NOM
=
S01_1
, GROUP_MA
= S01),



_F
(
NOM
=
S01_2
, OPTION = 'ENV_SPHERE' ,


POINT=(0.,0.,0.),RAYON=0.5,PRECISION=0.5),),





)

Après DEFI_GROUP le maillage ma contiendra 2 nouveaux GROUP_MA et 3 nouveaux GROUP_NO :

·
facesup contient les facettes dont la normale est orientée selon OZ (vers les Z > 0),
·
S01 contient toutes les mailles dont l'un des noeuds appartient à la sphère de rayon 1. et
centrée en O (origine des axes),
·
B0_S01 est le groupe des noeuds qui se trouvent au voisinage de l'enveloppe de la sphère
précédente (S01),
·
S01_1 est le groupe de tous les noeuds des mailles du groupe de mailles S01 ; attention :
certains noeuds de ce groupe peuvent être à l'extérieur de la sphère !
·
S01_2 est le groupe des noeuds inclus dans la sphère S01 : d(M , O) - 0.5 0. 5
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Code_Aster ®
Version
8.2

Titre :

Opérateur DEFI_GROUP


Date :
31/01/06
Auteur(s) :
J. PELLET Clé
:
U4.22.01-H1 Page :
18/18



























Page laissée intentionnellement blanche.
Manuel d'Utilisation
Fascicule U4.2- : Maillage
HT-62/06/004/A

Document Outline