u4.41.01 Opérateur AFFE_MODELE#

Syntaxe#

Détail de la syntaxe
modele = AFFE_MODELE(
    ◆ MAILLAGE = maillage,
    ◇ INFO = / 1 (par défaut),
             / 2,
    ◇ GRANDEUR_CARA = _F(
         ◇ LONGUEUR = float,
         ◇ PRESSION = float,
         ◇ TEMPERATURE = float,
      ),
    ◆ | AFFE_SOUS_STRUC = _F(
           ◆ / TOUT = "OUI" (ou non renseigné),
             / SUPER_MAILLE = list[ma],
           ◇ PHENOMENE = "MECANIQUE",
        ),
      | AFFE = _F(
           ◆ / TOUT = "OUI" (ou non renseigné),
             / GROUP_MA = list[grma],
           ◆ PHENOMENE = / "ACOUSTIQUE",
                         / "MECANIQUE",
                         / "THERMIQUE",
           # Si: equal_to("PHENOMENE", 'MECANIQUE')
               ◆ MODELISATION = / "2D_BARRE",
                                / "2D_DIS_T",
                                / "2D_DIS_TR",
                                / "2D_FLUIDE",
                                / "2D_FLUI_ABSO",
                                / "2D_FLUI_PESA",
                                / "2D_FLUI_STRU",
                                / "3D",
                                / "3D_ABSO",
                                / "3D_DIL",
                                / "3D_FAISCEAU",
                                / "3D_FLUIDE",
                                / "3D_FLUI_ABSO",
                                / "3D_GRAD_HHO",
                                / "3D_GRAD_INCO",
                                / "3D_GRAD_VARI",
                                / "3D_GVNO",
                                / "3D_HH2D",
                                / "3D_HH2MD",
                                / "3D_HH2MS",
                                / "3D_HH2MS_DIL",
                                / "3D_HH2M_SI",
                                / "3D_HH2S",
                                / "3D_HH2SUDA",
                                / "3D_HHD",
                                / "3D_HHM",
                                / "3D_HHMD",
                                / "3D_HHMS",
                                / "3D_HHO",
                                / "3D_HHS",
                                / "3D_HM",
                                / "3D_HMD",
                                / "3D_HMS",
                                / "3D_HMS_DIL",
                                / "3D_HM_SI",
                                / "3D_HM_SI_DIL",
                                / "3D_HS",
                                / "3D_INCO_UP",
                                / "3D_INCO_UPG",
                                / "3D_INCO_UPO",
                                / "3D_INTERFACE",
                                / "3D_INTERFACE_S",
                                / "3D_JOINT",
                                / "3D_JOINT_HYME",
                                / "3D_MIX_STA",
                                / "3D_SI",
                                / "3D_THH2D",
                                / "3D_THH2MD",
                                / "3D_THH2MS",
                                / "3D_THH2S",
                                / "3D_THHD",
                                / "3D_THHM",
                                / "3D_THHMD",
                                / "3D_THHMS",
                                / "3D_THHS",
                                / "3D_THM",
                                / "3D_THMD",
                                / "3D_THMS",
                                / "3D_THMS_DIL",
                                / "3D_THVD",
                                / "3D_THVS",
                                / "AXIS",
                                / "AXIS_FLUIDE",
                                / "AXIS_FLUI_ABSO",
                                / "AXIS_FLUI_STRU",
                                / "AXIS_FOURIER",
                                / "AXIS_GRAD_HHO",
                                / "AXIS_GRAD_INCO",
                                / "AXIS_GRAD_VARI",
                                / "AXIS_GVNO",
                                / "AXIS_HH2D",
                                / "AXIS_HH2MD",
                                / "AXIS_HH2MS",
                                / "AXIS_HH2S",
                                / "AXIS_HHD",
                                / "AXIS_HHM",
                                / "AXIS_HHMD",
                                / "AXIS_HHMS",
                                / "AXIS_HHO",
                                / "AXIS_HHS",
                                / "AXIS_HM",
                                / "AXIS_HMD",
                                / "AXIS_HMS",
                                / "AXIS_INCO_UP",
                                / "AXIS_INCO_UPG",
                                / "AXIS_INCO_UPO",
                                / "AXIS_INTERFACE",
                                / "AXIS_INTERFACE_S",
                                / "AXIS_JHMS",
                                / "AXIS_JOINT",
                                / "AXIS_SI",
                                / "AXIS_THH2D",
                                / "AXIS_THH2MD",
                                / "AXIS_THH2MS",
                                / "AXIS_THH2S",
                                / "AXIS_THHD",
                                / "AXIS_THHMD",
                                / "AXIS_THHMS",
                                / "AXIS_THHS",
                                / "AXIS_THM",
                                / "AXIS_THMD",
                                / "AXIS_THMS",
                                / "AXIS_THVD",
                                / "AXIS_THVS",
                                / "BARRE",
                                / "CABLE",
                                / "CABLE_GAINE",
                                / "CABLE_POULIE",
                                / "COQUE_3D",
                                / "COQUE_AXIS",
                                / "COQUE_SOLIDE",
                                / "C_PLAN",
                                / "C_PLAN_SI",
                                / "DIS_T",
                                / "DIS_TR",
                                / "DKT",
                                / "DKTG",
                                / "DST",
                                / "D_PLAN",
                                / "D_PLAN_2DG",
                                / "D_PLAN_ABSO",
                                / "D_PLAN_DIL",
                                / "D_PLAN_GRAD_HHO",
                                / "D_PLAN_GRAD_INCO",
                                / "D_PLAN_GRAD_SIGM",
                                / "D_PLAN_GRAD_VARI",
                                / "D_PLAN_GVNO",
                                / "D_PLAN_HH2D",
                                / "D_PLAN_HH2MD",
                                / "D_PLAN_HH2MS",
                                / "D_PLAN_HH2MS_DIL",
                                / "D_PLAN_HH2M_SI",
                                / "D_PLAN_HH2S",
                                / "D_PLAN_HH2SUDA",
                                / "D_PLAN_HHD",
                                / "D_PLAN_HHM",
                                / "D_PLAN_HHMD",
                                / "D_PLAN_HHMS",
                                / "D_PLAN_HHO",
                                / "D_PLAN_HHS",
                                / "D_PLAN_HM",
                                / "D_PLAN_HMD",
                                / "D_PLAN_HMS",
                                / "D_PLAN_HMS_DIL",
                                / "D_PLAN_HM_SI",
                                / "D_PLAN_HM_SI_DIL",
                                / "D_PLAN_HS",
                                / "D_PLAN_INCO_UP",
                                / "D_PLAN_INCO_UPG",
                                / "D_PLAN_INCO_UPO",
                                / "D_PLAN_MIX_STA",
                                / "D_PLAN_SI",
                                / "D_PLAN_THH2D",
                                / "D_PLAN_THH2MD",
                                / "D_PLAN_THH2MS",
                                / "D_PLAN_THH2S",
                                / "D_PLAN_THHD",
                                / "D_PLAN_THHMD",
                                / "D_PLAN_THHMS",
                                / "D_PLAN_THHS",
                                / "D_PLAN_THM",
                                / "D_PLAN_THMD",
                                / "D_PLAN_THMS",
                                / "D_PLAN_THMS_DIL",
                                / "D_PLAN_THVD",
                                / "D_PLAN_THVS",
                                / "FLUI_STRU",
                                / "GRILLE_EXCENTRE",
                                / "GRILLE_MEMBRANE",
                                / "MEMBRANE",
                                / "PLAN_INTERFACE",
                                / "PLAN_INTERFACE_S",
                                / "PLAN_JHMS",
                                / "PLAN_JOINT",
                                / "PLAN_JOINT_HYME",
                                / "PLAQ_MITC",
                                / "POU_D_E",
                                / "POU_D_EM",
                                / "POU_D_SQUE",
                                / "POU_D_T",
                                / "POU_D_TG",
                                / "POU_D_TGM",
                                / "POU_D_T_GD",
                                / "POU_FLUI_STRU",
                                / "Q4G",
                                / "Q4GG",
                                / "TUYAU_3M",
                                / "TUYAU_6M",
               # Si: equal_to('MODELISATION', ('3D_HHO', 'D_PLAN_HHO', 'AXIS_HHO' ))
                   ◇ FORMULATION = / "CUBIQUE",
                                   / "LINEAIRE" (par défaut),
                                   / "QUADRATIQUE",
                                   / "QUARTIQUE",
               # Si: equal_to('MODELISATION', ("D_PLAN_GRAD_HHO", "3D_GRAD_HHO", "AXIS_GRAD_HHO" ))
                   ◇ FORMULATION = / "LINEAIRE" (par défaut),
                                   / "QUADRATIQUE",
               # Si: equal_to('MODELISATION', ('2D_FLUIDE', '2D_FLUI_ABSO', '2D_FLUI_PESA', '2D_FLUI_STRU','3D_FLUIDE','3D_FLUI_ABSO', 'AXIS_FLUIDE', 'AXIS_FLUI_STRU', 'AXIS_FLUI_ABSO', 'FLUI_STRU'))
                   ◇ FORMULATION = / "U_P",
                                   / "U_PSI",
                                   / "U_P_PHI" (par défaut),
               # Si: equal_to('MODELISATION', ('D_PLAN_DIL', '3D_DIL', ))
                   ◇ FORMULATION = / "DIL" (par défaut),
                                   / "DIL_INCO",
               # Si: equal_to('MODELISATION', ('D_PLAN_MIX_STA', '3D_MIX_STA', ))
                   ◇ FORMULATION = / "STA" (par défaut),
                                   / "STA_INCO",
           # Si: equal_to("PHENOMENE", 'THERMIQUE')
               ◆ MODELISATION = / "3D",
                                / "3D_DIAG",
                                / "3D_HHO",
                                / "3D_SECH",
                                / "3D_SECH_DIAG",
                                / "AXIS",
                                / "AXIS_DIAG",
                                / "AXIS_FOURIER",
                                / "AXIS_HHO",
                                / "AXIS_SECH",
                                / "AXIS_SECH_DIAG",
                                / "COQUE",
                                / "COQUE_AXIS",
                                / "COQUE_PLAN",
                                / "PLAN",
                                / "PLAN_DIAG",
                                / "PLAN_HHO",
               # Si: equal_to('MODELISATION', ('3D_HHO', 'PLAN_HHO', 'AXIS_HHO'))
                   ◇ FORMULATION = / "CONSTANTE",
                                   / "CUBIQUE",
                                   / "LINEAIRE" (par défaut),
                                   / "QUADRATIQUE",
                                   / "QUARTIQUE",
           # Si: equal_to("PHENOMENE", 'ACOUSTIQUE')
               ◆ MODELISATION = / "3D",
                                / "3D_ABSO",
                                / "PLAN",
                                / "PLAN_ABSO",
        ),
    ⟐ DISTRIBUTION = _F(
         ◇ METHODE = / "CENTRALISE",
                     / "GROUP_ELEM",
                     / "MAIL_CONTIGU",
                     / "MAIL_DISPERSE",
                     / "SOUS_DOMAINE" (par défaut),
         # Si: is_in("METHODE", ('MAIL_DISPERSE','MAIL_CONTIGU'))
             ◇ CHARGE_PROC0_MA = int (défaut: 100),
         # Si: equal_to("METHODE",'SOUS_DOMAINE' )
             ◇ NB_SOUS_DOMAINE = int,
             ◇ PARTITIONNEUR = / "METIS" (par défaut),
                               / "SCOTCH",
      ),
    ◇ VERI_JACOBIEN = / "NON",
                      / "OUI" (par défaut),
    ◇ VERI_NORM_IFS = / "NON",
                      / "OUI" (par défaut),
    ◇ VERI_FORMULATION_IFS = / "NON",
                             / "OUI" (par défaut),
    ◇ VERI_PLAN = / "NON",
                  / "OUI" (par défaut),
)


◆ : obligatoire
◇ : optionnel
⟐ : présent par défaut
& : ensemble
/ : un seul parmi
| : plusieurs choix possibles

Opérandes#

Choix du maillage#

Le mot-clef MAILLAGE donne le maillage associé à l’étude sur lequel on affecte les éléments finis.

Remarque

Pour les modélisations axisymétriques, l’axe de révolution est l’axe \(Y\) du maillage. Toute la structure doit être maillée en \(X\ge 0\). L’axe \({Ox}\) désigne donc la direction radiale. Les composantes des champs calculés seront donc: \(X\) pour la direction radiale, \(Y\) pour la direction axiale et \(Z\) pour la direction orthoradiale (circonférentielle).

Affectation des éléments finis#

Le mot-clé AFFE définit les types d’éléments finis qui seront affectés sur les entités du maillage choisies. Pour chaque occurrence, on spécifie une modélisation.

Remarque

On rappelle qu’on applique la règle de surcharge (voir [u1.03.00 Les grands principes de fonctionnement de Code_Aster]):

  • les affectations se font en superposant les effets des différents mots-clés

  • en cas de conflit, le dernier mot-clé renseigné l’emporte sur les précédents.

Les entités du maillage sont précisées par le mot-clé TOUT = 'OUI' qui affecte la totalité des mailles du maillage et GROUP_MA = g_mail qui affecte une liste de groupes de mailles.

Le type d’élément fini est précisé par les mot-clefs suivants:

  • PHENOMENE : phénomène physique modélisé (équation de conservation associée)

  • MODELISATION : type d’interpolation et de discrétisation

  • FORMULATION : type de formulation dans certains cas

Les deux premiers mots-clés PHENOMENE et MODELISATION sont obligatoires pour chaque occurrence du mot clé facteur AFFE. Ce couple de mots-clés définit de façon bijective le type d’élément affecté à un type de maille.

Dans certains cas, il peut être nécessaire de préciser la FORMULATION employée:

  • Pour la discrétisation de type HHO (3D_HHO, AXIS_HHO ou D_PLAN_HHO), on peut préciser si c’est une approche constante (CONSTANTE), linéaire (LINEAIRE), quadratique (QUADRATIQUE), cubique (CUBIQUE) ou quartique (QUARTIQUE), voir la documentation [R3.06.14]. Il peut exister des limitations en fonction de la physique. Par exemple, l’approche constante n’est disponible qu’en thermique;

  • Pour les discrétisations en fluide ou en interaction fluide-structure, on peut préciser si c’est une formulation à trois variables \((U,P,\varphi )\) à deux variables \((U,P)\) ou \((U,\psi )\), voir la documentation [R4.02.02].

  • Pour les modélisations de second gradient en mécanique, on peut préciser si c’est la formulation historique du modèle de second gradient qui doit être utilisée (DIL) ou la formulation incompressible (DIL_INCO).

  • Pour les modélisations mixtes stabilisées, on peut préciser si c’est la formulation standard du modèle qui doit être utilisée (STA) ou la formulation incompressible (STA_INCO).

Remarques
  • le mot-clef PHENOMENE doit avoir la même valeur pour toutes les occurrences du mot-clef facteur AFFE.

  • en affectant les éléments finis sur les mailles de volume (et/ou de surface) du groupe de mailles g_mail, si ce groupe de mailles contient aussi les mailles de bords (et/ou d’arêtes) des mailles de volume (et/ou de surface), alors on affecte aussi automatiquement sur ces dernières les éléments finis nécessaires à certaines options de calcul (affectation de chargements extérieurs par exemple). Si on a besoin d’affecter sur ces interfaces des modélisations supplémentaires, il convient alors de prévoir dans le maillage des mailles dédoublées: c’est par exemple le cas en interaction fluide-structure.

Liste des modélisations disponibles#

Les modélisations possibles sont indiquées ci-dessous en les listant par «paquets» :

ACOUSTIQUE#

ACOUSTIQUE 2D des milieux continus

PLAN : [r4.02.01 Éléments finis en acoustique]

ACOUSTIQUE 3D des milieux continus

3D : [r4.02.01 Éléments finis en acoustique]

THERMIQUE#

THERMIQUE 2D coque

COQUE_AXIS : [r3.11.01 Formulation d’un modèle de thermique pour les coques minces]

COQUE_PLAN : [r3.11.01 Formulation d’un modèle de thermique pour les coques minces]

THERMIQUE 2D milieux continus

AXIS_DIAG : [r3.06.07 Diagonalisation de la matrice de masse thermique]

AXIS_FOURIER

AXIS : [r3.06.02 Modélisation linéaire des éléments de milieu continu en thermique]

PLAN_DIAG : [r3.06.07 Diagonalisation de la matrice de masse thermique]

PLAN : [r3.06.02 Modélisation linéaire des éléments de milieu continu en thermique]

PLAN_HHO : [r3.06.14 Introduction aux méthodes Hybrid High-Order (HHO)]

AXIS_HHO : [r3.06.14 Introduction aux méthodes Hybrid High-Order (HHO)]

THERMIQUE coque

COQUE : [r3.11.01 Formulation d’un modèle de thermique pour les coques minces]

THERMIQUE 3D milieux continus

3D_DIAG : [r3.06.07 Diagonalisation de la matrice de masse thermique]

3D : [r3.06.02 Modélisation linéaire des éléments de milieu continu en thermique]

3D_HHO : [r3.06.14 Introduction aux méthodes Hybrid High-Order (HHO)]

MECANIQUE (2D)#

MECANIQUE 2D éléments discrets

2D_DIS_TR

2D_DIS_T

MECANIQUE 2D fluide-structure vibroacoustique

2D_FLUIDE : [r4.02.02 Éléments pour le couplage interaction fluide-structure linéaire avec fluide inerte]

2D_FLUI_ABSO : [r4.02.05 Éléments de frontière absorbante]

2D_FLUI_PESA : [r4.02.04 Couplage Fluide - Structure avec surface Libre]

2D_FLUI_STRU : [r4.02.02 Éléments pour le couplage interaction fluide-structure linéaire avec fluide inerte]

AXIS_FLUIDE : [r4.02.02 Éléments pour le couplage interaction fluide-structure linéaire avec fluide inerte]

AXIS_FLUI_ABSO : [r4.02.05 Éléments de frontière absorbante]

AXIS_FLUI_STRU : [r4.02.02 Éléments pour le couplage interaction fluide-structure linéaire avec fluide inerte]

D_PLAN_ABSO : [r4.02.05 Éléments de frontière absorbante]

MECANIQUE 2D milieux continus

AXIS : [r3.01.01 Fonctions de forme et points d’intégration des éléments finis]

AXIS_FOURIER

AXIS_SI : [r3.06.10 Élément quadrangulaire à un point d’intégration, stabilisé par la méthode « Assumed Strain »]

C_PLAN_SI : [r3.06.10 Élément quadrangulaire à un point d’intégration, stabilisé par la méthode « Assumed Strain »]

C_PLAN : [r3.01.01 Fonctions de forme et points d’intégration des éléments finis]

D_PLAN_SI : [r3.06.10 Élément quadrangulaire à un point d’intégration, stabilisé par la méthode « Assumed Strain »]

D_PLAN : [r3.01.01 Fonctions de forme et points d’intégration des éléments finis]

D_PLAN_HHO: [r3.06.14 Introduction aux méthodes Hybrid High-Order (HHO)]

D_PLAN_MIX_STA: [r3.06.15 Éléments finis mixtes stabilisés]

MECANIQUE 2D quasi incompressible: [r3.06.08 Éléments finis traitant la quasi-incompressibilité]

AXIS_INCO_UP

D_PLAN_INCO_UP

AXIS_INCO_UPG

D_PLAN_INCO_UPG

MECANIQUE 2D non local

D_PLAN_GRAD_VARI

D_PLAN_GVNO : [r5.04.04 Modélisation non locale à gradients d’endommagement nodal GVNO]

AXIS_GVNO : [r5.04.04 Modélisation non locale à gradients d’endommagement nodal GVNO]

D_PLAN_GRAD_SIGM : [r5.03.24 Modèle de grandes déformations GDEF_LOG]

D_PLAN_DIL : [r5.04.03 Modélisations second gradient]

D_PLAN_GRAD_HHO: [r3.06.14 Introduction aux méthodes Hybrid High-Order (HHO)]

MECANIQUE 2D plaques et coques

COQUE_AXIS : [r3.07.02 Modélisation numérique des structures minces : coques thermo-élasto-plastiques axisymétriques]

MECANIQUE 2D éléments joints pour la propagation de fissure

PLAN_JOINT : [r3.06.09 Éléments finis de joint mécaniques et éléments finis de joint couplés hydromécanique]

AXIS_JOINT : [r3.06.09 Éléments finis de joint mécaniques et éléments finis de joint couplés hydromécanique]

PLAN_JOINT_HYME : [r3.06.09 Éléments finis de joint mécaniques et éléments finis de joint couplés hydromécanique]

PLAN_INTERFACE : [r3.06.13 Eléments finis d’interface mixte pour des modèles de zone cohésive (xxx_INTERFACE et xxx_INTERFACE_S)]

PLAN_INTERFACE_S : [r3.06.13 Eléments finis d’interface mixte pour des modèles de zone cohésive (xxx_INTERFACE et xxx_INTERFACE_S)]

AXIS_INTERFACE : [r3.06.13 Eléments finis d’interface mixte pour des modèles de zone cohésive (xxx_INTERFACE et xxx_INTERFACE_S)]

AXIS_INTERFACE_S : [r3.06.13 Eléments finis d’interface mixte pour des modèles de zone cohésive (xxx_INTERFACE et xxx_INTERFACE_S)]

MECANIQUE 2D thermo-hydro-mécanique: [r7.01.10 Modélisations THHM. Généralités et algorithmes]

AXIS_HH2MD

AXIS_HH2MS

AXIS_HHMD

AXIS_HHMS

AXIS_HHM

AXIS_HMD

AXIS_HMS

AXIS_HM

AXIS_THH2D

AXIS_THH2S

AXIS_THH2MD

AXIS_THH2MS

AXIS_THHD

AXIS_THHS

AXIS_THHMD

AXIS_THHMS

AXIS_THMD

AXIS_THMS

AXIS_THM

AXIS_HHD

AXIS_HHS

AXIS_HH2D

AXIS_HH2S

D_PLAN_HH2MD

D_PLAN_HH2MS

D_PLAN_HHMD

D_PLAN_HHMS

D_PLAN_HHM

D_PLAN_HMD

D_PLAN_HMS

D_PLAN_HM

D_PLAN_THH2D

D_PLAN_THH2S

D_PLAN_THH2MD

D_PLAN_THH2MS

D_PLAN_THHD

D_PLAN_THHS

D_PLAN_THHMD

D_PLAN_THHMS

D_PLAN_THMD

D_PLAN_THMS

D_PLAN_THM

D_PLAN_HHD

D_PLAN_HHS

D_PLAN_HS

D_PLAN_HH2D

D_PLAN_HH2S

D_PLAN_HMS_DIL: [r7.01.10 Modélisations THHM. Généralités et algorithmes] et [r5.04.03 Modélisations second gradient]

D_PLAN_HM_SI_DIL: [r7.01.10 Modélisations THHM. Généralités et algorithmes] et [r5.04.03 Modélisations second gradient]

D_PLAN_THMS_DIL: [r7.01.10 Modélisations THHM. Généralités et algorithmes] et [r5.04.03 Modélisations second gradient]

D_PLAN_HH2MS_DIL: [r7.01.10 Modélisations THHM. Généralités et algorithmes] et [r5.04.03 Modélisations second gradient]

MECANIQUE 2D hydraulique non saturé en volumes finis

D_PLAN_HH2SUDA: [r7.01.34 Schémas volumes finis SUSHI pour la modélisation des écoulements insaturés miscibles]

MECANIQUE 2D éléments joints avec couplage hydromécanique

AXIS_JHMS

PLAN_JHMS

Pour les maillages 2D, permet de renseigner les groupes de mailles ou les mailles susceptibles d’être coupées par la fissure lorsque le contact est défini sur les lèvres de la fissure. Sont permis les types de mailles suivants: les QUAD8 et TRIA6 et les mailles de bord de ces éléments, soient les SEG3. Si les mailles sont linéaires, il faut au préalable les transformer en mailles quadratiques (avec LINE_QUAD de la commande [CREA_MAILLAGE]).

MECANIQUE (3D)#

MECANIQUE 3D barres et câbles

2D_BARRE: [r3.08.01 Éléments “exacts” de poutres]

BARRE: [r3.08.01 Éléments “exacts” de poutres]

CABLE_POULIE: [r3.08.02 Modélisation des câbles]

CABLE: [r3.08.02 Modélisation des câbles]

CABLE_GAINE: [r3.08.10 Élément CABLE_GAINE]

MECANIQUE 3D éléments discrets

DIS_TR

DIS_T

MECANIQUE 3D fluide-structure

3D_FAISCEAU: [r4.07.05 Homogénéisation d’un réseau de poutres baignant dans un fluide]

3D_FLUIDE: [r4.02.02 Éléments pour le couplage interaction fluide-structure linéaire avec fluide inerte]

MECANIQUE 3D frontière absorbante

3D_ABSO: [r4.02.05 Éléments de frontière absorbante]

3D_FLUI_ABSO: [r4.02.05 Éléments de frontière absorbante]

MECANIQUE 3D grilles d’armatures de béton

GRILLE_MEMBRANE: [r3.08.07 Éléments MEMBRANE et GRILLE_MEMBRANE]

GRILLE_EXCENTRE: [r3.08.07 Éléments MEMBRANE et GRILLE_MEMBRANE]

MECANIQUE 3D milieux continus

3D_SI: [r3.06.10 Élément quadrangulaire à un point d’intégration, stabilisé par la méthode « Assumed Strain »]

3D: [r3.01.01 Fonctions de forme et points d’intégration des éléments finis]

3D_HHO: [r3.06.14 Introduction aux méthodes Hybrid High-Order (HHO)]

3D_MIX_STA: [r3.06.15 Éléments finis mixtes stabilisés]

MECANIQUE 3D non local

3D_GRAD_VARI

3D_GVNO: [:ref:` R5.04.04`]

3D_DIL: [r5.04.03 Modélisations second gradient]

3D_GRAD_HHO: [r3.06.14 Introduction aux méthodes Hybrid High-Order (HHO)]

MECANIQUE 3D plaques, coques et membranes

COQUE_3D: [r3.07.04 Éléments finis de coques volumiques]

DKT : [r3.07.03 Éléments de plaque : modélisations DKT, DST, DKTG et Q4G]

DST : [r3.07.03 Éléments de plaque : modélisations DKT, DST, DKTG et Q4G]

Q4G : [r3.07.03 Éléments de plaque : modélisations DKT, DST, DKTG et Q4G]

DKTG : [r3.07.03 Éléments de plaque : modélisations DKT, DST, DKTG et Q4G]

Q4GG: [r3.07.09 Éléments de plaque : Modélisation Q4GG]

MEMBRANE: [r3.08.07 Éléments MEMBRANE et GRILLE_MEMBRANE]

COQUE_SOLIDE: [r3.07.10 Éléments finis mixtes hybrides via FENICSx – PLAQ_MITC] (élément hors AQ)

PLAQ_MITC: [R3.07.11] (élément hors AQ)

MECANIQUE fluide fluide-structure

FLUIDE

FLUI_STRU

MECANIQUE 3D poutres

POU_FLUI_STRU

POU_D_E: [r3.08.01 Éléments “exacts” de poutres]

POU_D_EM: [r3.08.08 Élément de poutre multi-fibres (droite) POU_D_EM]

POU_D_SQUE: [r3.08.08 Élément de poutre multi-fibres (droite) POU_D_EM]

POU_D_T: [r3.08.01 Éléments “exacts” de poutres]

POU_D_TGM

POU_D_TG

POU_D_T_GD

MECANIQUE 3D quasi incompressible: [r3.06.08 Éléments finis traitant la quasi-incompressibilité]

3D_INCO_UP

3D_INCO_UPG

3D_INCO_UPO

MECANIQUE 3D thermo-hydro-mécanique

3D_HHMD

3D_HHM

3D_HMD

3D_HM

3D_THHD

3D_THHMD

3D_THHM

3D_THMD

3D_THM

3D_THVD

3D_THH2MD

3D_THH2M

3D_HH2MD

3D_HH2MS

3D_THH2S

3D_THH2D

3D_HHD

3D_HHS

3D_HS

3D_HH2D

3D_HH2S

3D_HMS_DIL: [r5.04.03 Modélisations second gradient]

3D_HM_SI_DIL: [r5.04.03 Modélisations second gradient]

3D_THMS_DIL: [r5.04.03 Modélisations second gradient]

3D_HH2MS_DIL: [r5.04.03 Modélisations second gradient]

MECANIQUE 3D hydraulique non saturé en volumes finis

3D_HH2SUDA: [r7.01.34 Schémas volumes finis SUSHI pour la modélisation des écoulements insaturés miscibles]

MECANIQUE 3D tuyaux

TUYAU_3M: [r3.08.06 Éléments finis de tuyau droit et courbe avec ovalisation, gonflement et gauchissement en élasto-plasticité]

TUYAU_6M: [r3.08.06 Éléments finis de tuyau droit et courbe avec ovalisation, gonflement et gauchissement en élasto-plasticité]

MECANIQUE 3D éléments joints pour la propagation de fissure

Pour les maillages 3D, permet de renseigner les groupes de mailles ou les mailles susceptibles d’être coupées par la fissure lorsque le contact est défini sur les lèvres de la fissure. Sont permis les types de mailles suivants: HEXA20, PENTA15, TETRA10, et les mailles de bord de ces éléments, soient les QUAD8 et TRIA6. Si les mailles sont linéaires, il faut au préalable les transformer en mailles quadratiques (avec LINE_QUAD de la commande [CREA_MAILLAGE]).

3D_JOINT: [r3.06.09 Éléments finis de joint mécaniques et éléments finis de joint couplés hydromécanique]

3D_JOINT_HYME: [r3.06.09 Éléments finis de joint mécaniques et éléments finis de joint couplés hydromécanique]

3D_INTERFACE: [r3.06.13 Eléments finis d’interface mixte pour des modèles de zone cohésive (xxx_INTERFACE et xxx_INTERFACE_S)]

3D_INTERFACE_S: [r3.06.13 Eléments finis d’interface mixte pour des modèles de zone cohésive (xxx_INTERFACE et xxx_INTERFACE_S)]

Affectation des macro-éléments#

Le mot-clé AFFE_SOUS_STRUC est utilisable uniquement pour un modèle utilisant des sous-structures (ou macro-éléments ou super-éléments) statiques.

SUPER_MAILLE est la liste des super-mailles que l’on veut affecter dans le modèle. Comme pour les éléments finis, il n’est pas obligatoire d’affecter toutes les mailles du maillage. C’est AFFE_MODELE qui confirme quelles sont les sous-structures qui seront utilisées dans le modèle. La différence avec les éléments finis classiques est que sur les super-mailles, on ne choisit ni la MODELISATION ni le PHENOMENE car le macro-élément (construit par l’opérateur [MACR_ELEM_STAT]) qui sera affecté sur la super-maille possède sa propre modélisation et son propre phénomène (ceux qui ont servi à le calculer).

Attention ! Votre modèle doit contenir au moins un élément fini (mot-clé AFFE) quand vous utilisez des sous-structures statiques définies à partir d’un maillage physique (lu par [LIRE_MAILLAGE]) car il n’est pas possible de n’avoir que des macro-éléments dans ce cas.

Si TOUT = 'OUI', toutes les (super) mailles sont affectées.

Vérifications#

Le mot-clé VERI_JACOBIEN sert à vérifier que les mailles du modèle ne sont pas trop distordues. On calcule le jacobien de la transformation géométrique qui transforme l’élément de référence en chaque maille réelle du modèle. Si sur les différents points d’intégration d’une maille, le jacobien change de signe, c’est que cette maille est très «mal fichue». Une alarme est alors émise.

Le mot-clé VERI_NORM_IFS sert à vérifier que toutes les normales sur les interfaces fluide-structure (modélisation de type FLUI_STRU) sont bien orientées dans le même sens. Si ce n’est pas le cas, une alarme est émise et l’utilisateur est invité à réorienter ces normales soit dans son maillage directement, soit via la commande [MODI_MAILLAGE].

Le mot-clé VERI_PLAN sert à vérifier que les mailles de type QUAD4 utilisées dans les formulations de plaque (DKT, DST, etc.) sont bien planes. On construit un plan sur les trois premiers noeuds de l’élément, puis on calcule la distance du quatrième point par rapport à ce plan. Si la distance est supérieure à \(1,0 \times 10^{-4}\), alors l’alarme est émise avec la liste des mailles concernées.

Le mot-clé VERI_FORMULATION_IFS sert à vérifier qu’on utilise la même FORMULATION pour les mailles de fluide et FLUI_STRU. Néanmoins, on peut lever cette vérification dans certaines situations. Typiquement, si les mailles affectées par le fluide (ou l’interface) ne sont pas connectées entre elles (par leur noeuds), on peut affecter des formulations différentes.

Mot-clé facteur GRANDEUR_CARA#

Le mot-clé facteur GRANDEUR_CARA sert à définir quelques grandeurs physiques caractéristiques du problème traité. Ces grandeurs sont utilisées actuellement pour «a-dimensionner» certains termes des estimateurs d’erreur en HM. Voir [r4.10.05 Indicateur d’erreur en résidu pour les modélisations HM].

Distribution des mailles#

Principes#

Le mot-clé facteur DISTRIBUTION permet de répartir les éléments finis du modèle pour le parallélisme des calculs élémentaires, des assemblages et de certains solveurs linéaires, voir [Notice d’utilisation du parallélisme].

Il définit comment seront distribués (ou non) les mailles/éléments pour les phases parallélisées. L’utilisateur a donc la possibilité de piloter cette distribution entre les processeurs.

Le parallélisme opère:

  • sur les calculs élémentaires et sur les assemblages de matrices et vecteurs (c’est ce que le mot-clé facteur DISTRIBUTION permet de contrôler),

  • à la résolution du système linéaire si le solveur est parallélisé ([Mot-clé SOLVEUR]).

Remarque

Dans le cas du mode de parallélisme (maillage parallèle de type maillage_p), le mode de distribution est obligatoirement CENTRALISE car le maillage a déjà été distribué et il n’est pas possible de redistribuer à nouveau les calculs. Si un autre mode de distribution est choisi pour ce mode de parallélisme, il sera automatiquement basculé en mode CENTRALISE sans en avertir l’utilisateur.

Il est possible de modifier le mode de distribution au cours de son étude. Il suffit d’utiliser la commande [MODI_MODELE].

Il peut être pratique de poursuivre un calcul parallèle avec un nombre de processeurs différents de celui utilisé pour le calcul initial. En particulier, on peut vouloir réaliser certains post-traitements en séquentiel. Il est recommandé d’utiliser la commande [MODI_MODELE] pour définir la distribution à utiliser en poursuite. Plus précisément, lorsque le calcul initial a utilisé le parallélisme par groupes d’éléments (GROUP_ELEM ou SOUS_DOMAINE), la commande [MODI_MODELE] est inutile. En revanche, lorsque le calcul initial a utilisé le parallélisme « par éléments » (MAIL_CONTIGU ou MAIL_DISPERSE), la commande [MODI_MODELE] est obligatoire. Si on l’oublie, on est arrêté lors du calcul par un message d’erreur.

Choix de la méthode#

Il existe différents modes de distribution des mailles, contrôlés par le mot-clé METHODE.

Quand on choisit la méthode METHODE='CENTRALISE', le parallélisme ne commence qu’au niveau du solveur linéaire. Chaque processeur construit et fournit au solveur l’intégralité du système à résoudre. Les calculs élémentaires ne sont pas parallélisés. C’est la méthode de distribution obligatoire dans le cas d’un maillage parallèle de type maillage_p.

La méthode de distribution METHODE='GROUP_ELEM' permet un équilibrage de charge parfait (en terme de nombres de calculs élémentaires) a priori , c’est-à-dire que chaque processeur effectuera, pour un type d’élément donné, le même nombre de calculs élémentaires (à un près). Bien évidemment cela ne préjuge en rien de l’équilibrage de charge final en particulier dans les calculs non-linéaires où le coût d’un calcul élémentaire dépend d’autres paramètres que le type d’élément.

Dans ce mode, les éléments du modèle sont regroupés par «groupe» afin de mutualiser certains calculs ce qui permet de gagner en efficacité. Le nombre d’éléments par groupe peut être choisi dans la commande [DEBUT].

Par ailleurs, il s’agit du seul mode en mesure de répartir les calculs élémentaires induits par les éléments tardifs, c’est-à-dire par les chargements tels que les conditions aux limites dualisées ou le contact.

La distribution par METHODE='MAIL_DISPERSE' s’opère sur les mailles. Elles sont réparties équitablement sur les différents processeurs disponibles. Les mailles sont réparties sur les différents processeurs comme on le fait quand on distribue des cartes à plusieurs joueurs. On parle aussi de distribution «cyclique».

Par exemple, avec un modèle comportant 8 mailles, effectué sur 4 processeurs, on obtient la répartition suivante:

Mode de distribution

Maille 1

Maille 2

Maille 3

Maille 4

Maille 5

Maille 6

Maille 7

Maille 8

MAIL_DISPERSE

Proc. 0

Proc. 1

Proc. 2

Proc. 3

Proc. 0

Proc. 1

Proc. 2

Proc. 3

On voit qu’avec ce mode de distribution, un processeur traitera des mailles régulièrement espacées dans l’ordre des mailles du maillage. L’avantage de cette répartition est que «statistiquement», : chaque processeur traitera autant d’hexaèdres, de pentaèdres, …, et de triangles.

La charge de travail pour les calculs élémentaires sera en général bien répartie. En revanche, la matrice assemblée sur un processeur sera très «dispersée», à l’inverse de ce qui se passe pour le mode MAIL_CONTIGU suivant.

La distribution par METHODE='MAIL_CONTIGU' s’opère sur les mailles. Elles sont réparties en paquets de mailles contiguës sur les différents processeurs disponibles.

Par exemple, avec un modèle comportant 8 mailles, une machine de 4 processeurs disponibles, on obtient la répartition suivante:

Mode de distribution

Maille 1

Maille 2

Maille 3

Maille 4

Maille 5

Maille 6

Maille 7

Maille 8

MAIL_CONTIGU

Proc. 0

Proc. 0

Proc. 1

Proc. 1

Proc. 2

Proc. 2

Proc. 3

Proc. 3

Contrôle de la charge#

Pour les modes de distribution par éléments, la charge de travail pour les calculs élémentaires peut être moins équilibrée. Par exemple, un processeur peut n’avoir à traiter que des mailles «faciles» de bord. En revanche, la matrice assemblée sur un processeur est en général plus compacte.

Le mot-clé CHARGE_PROC0_MA n’est accessible que pour les modes de distribution MAIL_DISPERSE et MAIL_CONTIGU. En effet ces modes de distribution ne répartissent en général pas équitablement la charge des calculs à cause des conditions aux limites dualisées dont les calculs élémentaires sont traités par le processeur 0.

Si l’on souhaite soulager le processeur 0 (ou au contraire le surcharger), on peut utiliser le mot-clé CHARGE_PROC0_MA. Il permet à l’utilisateur de choisir le pourcentage de charge que l’on souhaite affecter au processeur 0.

Par exemple, si l’utilisateur choisit CHARGE_PROC0_MA=80 le processeur 0 traitera 20% d’éléments de moins que les autres processeurs, soit 80% de la charge qu’il devrait supporter si le partage était équitable entre les processeurs.

Décomposition du maillage#

La distribution par la méthode METHODE='SOUS_DOMAINE' des mailles se base sur une décomposition du maillage en sous-domaines, construite par un outil externe de partitionnement défini par le mot-clé PARTITIONNEUR.

Le nombre de sous-domaines peut être déterminé par l’utilisateur, via le mot-clé NB_SOUS_DOMAINE.

Par défaut, le nombre de sous-domaines est pris égal au nombre de processeurs impliqués dans le calcul.

Les éléments du modèle éléments finis portés par les mailles de chaque sous-domaine sont ensuite répartis par groupes d’éléments semblables (comme dans la distribution correspondant à la méthode GROUP_ELEM), afin d’équilibrer au mieux les calculs élémentaires.

Le partitionnement préalable du maillage en sous-domaines permet d’assurer que tous les éléments d’un groupe d’éléments finis appartiennent à un seul sous-domaine.

Phase d’exécution#

À partir des mots-clés PHENOMENE, MODELISATION et FORMULATION, on crée une structure de données spécifiant le type d’élément attaché à chaque maille.

Un rappel succinct des affectations est imprimé systématiquement (INFO=1) dans le fichier message.

Exemple#

Pour une modélisation du phénomène “MECANIQUE”, on affecte sur le groupe de mailles gma du maillage ma des éléments finis 3D isoparamétriques.

Si le groupe de mailles gma contient aussi les mailles de bord et/ou d’arêtes des mailles de volume, alors on affecte aussi sur celles-ci les éléments finis isoparamétriques nécessaires à certaines options de calcul (affectation de chargements extérieurs par exemple, cf. [AFFE_CHAR_MECA]).

mo = AFFE_MODELE(MAILLAGE=ma, AFFE=(_F(GROUP_MA=gma, PHENOMENE="MECANIQUE", MODELISATION="3D")))