u7.03.02 Macro-commande MACR_INFO_MAIL#

Syntaxe#

Détail de la syntaxe
MACR_INFO_MAIL(
    ◇ INFO = / 1 (par défaut),
             / 2,
             / 3,
             / 4,
    ◆ MAILLAGE = maillage,
    ◇ MAILLAGE_FRONTIERE = maillage,
    # Si: exists("MAILLAGE_FRONTIERE")
        ◇ GROUP_MA_FRONT = grma,
    ◇ NOMBRE = / "OUI" (par défaut),
               / "NON",
    ◇ QUALITE = / "OUI" (par défaut),
                / "NON",
    ◇ CONNEXITE = / "OUI" (par défaut),
                  / "NON",
    ◇ TAILLE = / "OUI" (par défaut),
               / "NON",
    ◇ INTERPENETRATION = / "OUI",
                         / "NON" (par défaut),
    ◇ PROP_CALCUL = / "OUI" (par défaut),
                    / "NON",
    ◇ DIAMETRE = / "OUI" (par défaut),
                 / "NON",
    ◇ LANGUE = / "FRANCAIS" (par défaut),
               / "FRENCH",
               / "ANGLAIS",
               / "ENGLISH",
    ◇ ELEMENTS_ACCEPTES = / "HOMARD" (par défaut),
                          / "IGNORE_PYRA",
    ◇ VERSION_HOMARD = / "V11_10" (par défaut),
                       / "V11_N",
                       / "V11_N_PERSO",
    ◇ LOGICIEL = text,
    # Si: is_in("VERSION_HOMARD", ('V11_N','V11_N_PERSO'))
        ◇ UNITE = unit,
)


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

Opérandes#

Opérande MAILLAGE#

♦    MAILLAGE = ma

Le maillage de type [maillage] à analyser. Attention, l’analyse ne portera que sur les nœuds, les mailles-points, les segments, les triangles, les quadrangles, les tétraèdres, les hexaèdres ou les pentaèdres. Si on fournit un maillage comportant d’autres mailles, par exemple des pyramides, deux cas de figure sont possibles: soit un arrêt en erreur, soit une information sur la zone autorisée, le reste du maillage étant ignoré. Le choix entre ces deux modes de fonctionnement est fait par le mot-clé ELEMENTS_NON_HOMARD.

Le maillage est en degré 1 ou 2, mais il n’est pas possible de mélanger les deux.

Dans tous les cas, la présence des mailles enrichies HEXA27 est interdite.

Opérande NOMBRE#

◊    NOMBRE=    /'OUI'                                                    [DEFAUT]
                /'NON'

Si le choix est “OUI”, un bilan des nombres de nœuds et de mailles est imprimé sur le fichier de messages.

Opérande QUALITE#

◊    QUALITE=    /'OUI'                                                    [DEFAUT]
                 /'NON'

Si le choix est “OUI”, un bilan de la qualité des mailles est imprimé sur le fichier de message.

La qualité d’un triangle est définie comme étant le rapport entre la longueur du plus grand côté et le rayon du cercle inscrit.

La qualité d’un quadrangle est définie comme le quotient du produit de la plus grande longueur et des moyennes sur les côtés et les diagonales par la plus petite des surfaces des triangles internes aux quadrangles.

De même, la qualité d’un tétraèdre est définie comme étant le rapport entre la longueur du plus grand côté et le rayon de la sphère inscrite.

La qualité d’un hexaèdre est définie comme la plus mauvaise des qualités des tétraèdres inscrits.

Toutes ces mesures de qualité sont normalisées pour valoir 1 dans le cas d’un triangle équilatéral, d’un carré, d’un tétraèdre équilatéral ou d’un cube. Pour toute maille non équilatérale, la qualité est supérieure à 1. Voir la référence [bib1] pour des explications détaillées.

Le résultat est présenté sous forme de tableaux, avec les valeurs extrêmes.

L’interprétation des valeurs produites dépend de la méthode numérique employée pour le calcul. Selon que le problème est isotrope ou non, selon la rapidité de variation spatiale des données, selon la technique de calcul, une même maille peut conduire à un bon jacobien ou non. L’essentiel dans un premier temps est de repérer les mailles franchement mauvaises. Si on observe que le maximum de qualité dépasse 100, voire 1 000 ou 100 000, on doit s’inquiéter: une ou plusieurs mailles sont très déformées et le maillage est certainement à reprendre. Dans un second temps, cette information de qualité doit permettre de comparer deux maillages a priori corrects, sans grande valeur. SI le problème est isotrope, on aura intérêt à utiliser le maillage avec la répartition de qualité la plus proche de 1.

On trouvera des illustrations de valeurs de qualité de différentes mailles dans [bib2].

Opérande DIAMETRE#

◊    DIAMETRE=    /'OUI'                                                [DEFAUT]
                  /'NON'

Si le choix est “OUI”, un bilan des diamètres des mailles est imprimé sur le fichier de message.

Le diamètre d’une maille est définie comme la longueur du plus grand segment qu’il est possible d’insérer dans la maille.

Pour un triangle ou un tétraèdre, le diamètre correspond à la longueur du plus grand côté.

Pour un quadrangle, un hexaèdre, un pentaèdre ou une pyramide, le diamètre est le maximum entre la longueur du plus grand côté et la longueur de la plus grande diagonale.

Le résultat est présenté sous forme de tableaux, avec les valeurs extrêmes.

Opérande CONNEXITE#

◊    CONNEXITE=    /'OUI'                                                [DEFAUT]
                   /'NON'

Si le choix est “OUI”, un bilan des connexités est imprimé sur le fichier de messages. On saura alors si les segments, les mailles 2D (triangles et quadrangles réunis) ou les mailles 3D (tétraèdres, hexaèdres, pentaèdres et pyramides réunis) sont d’un seul tenant ou répartis en plusieurs blocs. On connaîtra également le nombre de trous de la structure : les trous traversants ou les trous internes.

Opérande TAILLE#

◊    TAILLE=    /'OUI'                                                    [DEFAUT]
                /'NON'

Si le choix est “OUI”, un bilan des tailles des sous-domaines est imprimé sur le fichier de messages. Un sous-domaine est défini comme un ensemble de mailles de même dimension et appartenant aux mêmes groupes.

Opérande PROP_CALCUL#

◊    PROP_CALCUL=    /'OUI'                                                [DEFAUT]
                     /'NON'

Si le choix est “OUI”, un diagnostic sur les propriétés des mailles en tant qu’éléments pour le calcul est imprimé sur le fichier de messages. On dénombre le nombre d’éléments surcontraints : les éléments dont tous les sommets sont situés sur le bord. On dénombre les mailles volumiques (resp. surfaciques) qui touchent le bord du domaine mais qui ne sont pas bordées par des mailles surfaciques (resp. linéiques).

Opérande INTERPENETRATION#

◊    INTERPENETRATION=        /'OUI'
                              /'NON'                                    [DEFAUT]

Si le choix est “OUI”, on vérifie que le maillage est correct du point de vue du recouvrement: aucune maille n’a l’un de ses sommets à l’intérieur d’une autre maille.

Attention: cette opération peut s’avérer coûteuse pour de gros maillages, d’où le choix ‘NON’ par défaut.

Opérande MAILLAGE_FRONTIERE#

◊    MAILLAGE_FRONTIERE=maf

Le choix de cette option signifie que les segments formant le bord du maillage de calcul ou une limite interne sont rattachés à une description fine de ce bord. Ce maillage fin est transmis ici. Le lien se fait par appartenance des segments aux mêmes groupes.

Opérande GROUP_MA_FRONT#

◊    GROUP_MA_FRONT=l_grma

Si cette option est absente, le lien entre les segments est fait pour tous les groupes présents dans le maillage de la frontière. Si le lien n’est fait que pour quelques groupes, ils sont désignés ici.

Opérande ELEMENTS_ACCEPTES#

◊    ELEMENTS_ACCEPTES=    /'HOMARD'                                    [DEFAUT]
                           /'IGNORE_PYRA'

Dans sa version actuelle, HOMARD ne fait porter l’information que sur certaines mailles: mailles-points, segments, triangles, quadrangles, tétraèdres, hexaèdres, pentaèdres en degré 1 ou 2.

En retenant l’option “HOMARD”, la transmission d’un maillage contenant autre chose que des ces types de mailles entraînera un arrêt en erreur. C’est l’option par défaut.

En choisissant l’option “IGNORE_PYRA”, on pourra analyser un maillage comportant des pyramides. L’information ne portera que sur les zones autorisées par HOMARD, le reste du maillage sera ignoré.

Dans tous les cas, la présence des mailles enrichies HEXA27 est interdite.

Opérande VERSION_HOMARD#

◊    VERSION_HOMARD=    /'V11_10'                        [DEFAUT]
                        /'V11_N'
                        /'V11_N_PERSO'

Cet opérande permet de sélectionner la version de HOMARD qui est utilisée pour l’adaptation. Par défaut, HOMARD 11.10 est lancé. C’est la version de référence. Le choix “V11_N” active la version 11.n de HOMARD qui est la version de développement. Le choix “V11_N_PERSO” active une version de développement propre à l’utilisateur. Cette option permet à l’équipe de développement de HOMARD de mettre au point de nouvelles fonctionnalités. Elle permet aussi de faire bénéficier l’utilisateur d’une innovation dans HOMARD avant la mise en service dans Code_Aster .

Opérande LANGUE#

◊    LANGUE=        /'FRANCAIS'                    [DEFAUT]
                    /'FRENCH'
                    /'ANGLAIS'
                    /'ENGLISH'

Cet opérande précise la langue dans laquelle sont imprimés les messages issus de HOMARD.

Opérande LOGICIEL#

◊    LOGICIEL=    logiciel                [K]

Cette option propose d’utiliser une autre interface de couplage entre Code_Aster et HOMARD que celle fournie par défaut dans le répertoire des outils associés à Code_Aster . Cette option est de fait réservée à l’équipe de développement de HOMARD pour mettre au point de nouvelles fonctionnalités. Elle permet de tester des nouveautés avant d’avoir modifié la macro-commande de pilotage.

Opérande UNITE#

◊    UNITE=    unite                [I]

Cette option n’est possible que si on a activé la version de développement de HOMARD, 11.n. Le fichier de données transmis par l’utilisateur sous ce numéro d’unité logique sera directement transmis comme complément au fichier de configuration de HOMARD. Cette option est de fait réservée à l’équipe de développement de HOMARD pour mettre au point de nouvelles fonctionnalités. Elle permet de tester des nouveautés avant d’avoir modifié la macro-commande de pilotage.

Opérande INFO#

◊    INFO=    /1
              /2
              /3
              /4

Si INFO vaut 1, les impressions sont minimales; on n’obtient que celles qui ont explicitement été demandées, la qualité des mailles par exemple, et les éventuels messages d’erreur.

Si INFO vaut 2, on obtiendra les messages émis par les commandes sous-jacentes à la macro-commande: IMPR_RESU, LIRE_MAILLAGE, LIRE_RESU.

Si INFO vaut 3, on aura les messages standard de HOMARD, récapitulant l’exécution.

Si INFO vaut 4, on aura tous les messages émis par HOMARD, en vue de déboggage.

Exemple#

MACR_INFO_MAIL(MAILLAGE=MARTEAU,
            TAILLE='OUI',
            CONNEXITE='OUI',
            INTERPENETRATION='OUI',
            DIAMETRE='OUI',
            QUALITE='OUI')

Cette séquence écrira les informations générales (dimension, degré, nombre de nœuds et de mailles,…) puis un diagnostic sur la qualité, les diamètres et l’interpénétration des mailles utilisées dans le maillage MARTEAU ainsi que la taille et la connexité des différents sous-domaines. La version de HOMARD par défaut est utilisée.

Maillage a analyser
MARTEAU
Date de creation : lundi 15 fevrier 2010 a 15 h 59 mn 22 s
Dimension : 2
Degre : 1
C'est un maillage de depart.

Direction | Unite | Minimum | Maximum

Les informations sur le nombre d’entités du calcul sont classées par type: nœuds, mailles-points, arêtes, etc.. On fait le tri entre les mailles de bords et les autres.

NOMBRE D'ENTITES DU CALCUL

  • Nombre total * 76 *

  • Segments *

  • . dont aretes de bord de regions 2D * 32 *

  • . dont aretes internes aux faces/volumes * 0 *

  • Triangles *

Le diagnostic sur les interpénétrations des mailles est fait par type d’entités.

INTERPENETRATION DES MAILLES

  • Aucun probleme n’a ete rencontre. *

  • Recapitulatif sur les triangles *

  • Aucun probleme n’a ete rencontre. *


Dans le diagnostic sur la qualité des mailles, on relève d’abord les valeurs extrêmes rencontrées dans le maillage analysé. Ici le minimum est de 1,0044, très proche du minimum absolu théorique qui est de 1, et le maximum rencontré est de 1,5788. Ensuite on présente la répartition par tranche équidistante à partir de la valeur optimum, 1. On voit que 3 triangles ont une qualité comprise entre 1 et 1,025, soit 2,54 % du nombre total de triangles. De même, 16 triangles ont une qualité comprise entre 1,025 et 1,050, soit 11,02 % du nombre total de triangles et 10 triangles ont une qualité comprise entre 1,050 et 1,075, soit 8,47 % du nombre total de triangles. En cumulé, on constate donc que 26 (=3+13+10) triangles ont une qualité meilleure que 1,075, soit 22,03 % du total. Et ainsi de suite. Par exemple, 98,31 % des mailles ont une qualité meilleure que 1,425.

DIAMETRES DES TRIANGLES

  • Pour un triangle, c’est la longueur de la plus *

  • grande arete. *

  • Fonction de repartition *

  • Valeurs * Nombre de mailles *

  • Mini < < Maxi * par classe * cumul *

    • en % . nombre * en % . nombre *

  • 1.200 < 1.250 * 0.00 . 0 * 0.85 . 1 *

  • 1.250 < 1.300 * 0.85 . 1 * 1.69 . 2 *

  • 1.300 < 1.350 * 0.85 . 1 * 2.54 . 3 *

  • 1.350 < 1.400 * 1.69 . 2 * 4.24 . 5 *

  • 1.400 < 1.450 * 1.69 . 2 * 5.93 . 7 *

  • 1.450 < 1.500 * 1.69 . 2 * 7.63 . 9 *

  • 1.500 < 1.550 * 2.54 . 3 * 10.17 . 12 *

  • 1.550 < 1.600 * 6.78 . 8 * 16.95 . 20 *

  • 1.600 < 1.650 * 4.24 . 5 * 21.19 . 25 *

  • 1.650 < 1.700 * 11.02 . 13 * 32.20 . 38 *

  • 1.700 < 1.750 * 5.08 . 6 * 37.29 . 44 *

  • 1.750 < 1.800 * 6.78 . 8 * 44.07 . 52 *

  • 1.800 < 1.850 * 6.78 . 8 * 50.85 . 60 *

  • 1.850 < 1.900 * 2.54 . 3 * 53.39 . 63 *

  • 1.900 < 1.950 * 3.39 . 4 * 56.78 . 67 *

  • 1.950 < 2.000 * 11.86 . 14 * 68.64 . 81 *

  • 2.000 < 2.050 * 2.54 . 3 * 71.19 . 84 *

  • 2.050 < 2.100 * 5.08 . 6 * 76.27 . 90 *

  • 2.100 < 2.150 * 2.54 . 3 * 78.81 . 93 *

  • 2.150 < 2.200 * 3.39 . 4 * 82.20 . 97 *

  • 2.200 < 2.250 * 0.85 . 1 * 83.05 . 98 *

  • 2.250 < 2.300 * 3.39 . 4 * 86.44 . 102 *

  • 2.300 < 2.350 * 2.54 . 3 * 88.98 . 105 *

  • 2.350 < 2.400 * 2.54 . 3 * 91.53 . 108 *

  • 2.400 < 2.450 * 2.54 . 3 * 94.07 . 111 *

  • 2.450 < 2.500 * 0.00 . 0 * 94.07 . 111 *

  • 2.500 < 2.550 * 0.00 . 0 * 94.07 . 111 *

  • 2.550 < 2.600 * 0.00 . 0 * 94.07 . 111 *

  • 2.600 < 2.650 * 2.54 . 3 * 96.61 . 114 *

  • 2.650 < 2.700 * 0.00 . 0 * 96.61 . 114 *

  • 2.700 < 2.750 * 0.00 . 0 * 96.61 . 114 *

  • 2.750 < 2.800 * 3.39 . 4 * 100.00 . 118 *

  • 2.800 < 2.850 * 0.00 . 0 * 100.00 . 118 *

  • 2.850 < 2.900 * 0.00 . 0 * 100.00 . 118 *

  • 2.900 < 2.950 * 0.00 . 0 * 100.00 . 118 *

  • 2.950 < 3.000 * 0.00 . 0 * 100.00 . 118 *

  • 3.000 < 3.050 * 0.00 . 0 * 100.00 . 118 *

  • 3.050 < 3.100 * 0.00 . 0 * 100.00 . 118 *

  • normalise a 1 pour un triangle equilateral. *

  • Fonction de repartition *

  • Valeurs * Nombre de mailles *

  • Mini < < Maxi * par classe * cumul *

    • en % . nombre * en % . nombre *

  • 1.050 < 1.075 * 8.47 . 10 * 22.03 . 26 *

  • 1.075 < 1.100 * 13.56 . 16 * 35.59 . 42 *

  • 1.100 < 1.125 * 7.63 . 9 * 43.22 . 51 *

  • 1.125 < 1.150 * 14.41 . 17 * 57.63 . 68 *

  • 1.150 < 1.175 * 11.86 . 14 * 69.49 . 82 *

  • 1.175 < 1.200 * 6.78 . 8 * 76.27 . 90 *

  • 1.200 < 1.225 * 5.08 . 6 * 81.36 . 96 *

  • 1.225 < 1.250 * 4.24 . 5 * 85.59 . 101 *

  • 1.250 < 1.275 * 2.54 . 3 * 88.14 . 104 *

  • 1.275 < 1.300 * 4.24 . 5 * 92.37 . 109 *

  • 1.300 < 1.325 * 1.69 . 2 * 94.07 . 111 *

  • 1.325 < 1.350 * 1.69 . 2 * 95.76 . 113 *

  • 1.350 < 1.375 * 1.69 . 2 * 97.46 . 115 *

  • 1.375 < 1.400 * 0.00 . 0 * 97.46 . 115 *

  • 1.400 < 1.425 * 0.85 . 1 * 98.31 . 116 *

  • 1.425 < 1.450 * 0.00 . 0 * 98.31 . 116 *

  • 1.450 < 1.475 * 0.00 . 0 * 98.31 . 116 *

  • 1.475 < 1.500 * 0.00 . 0 * 98.31 . 116 *

  • 1.500 < 1.525 * 0.00 . 0 * 98.31 . 116 *

  • 1.525 < 1.550 * 0.00 . 0 * 98.31 . 116 *

  • 1.550 < 1.575 * 0.85 . 1 * 99.15 . 117 *

  • 1.575 < 1.600 * 0.85 . 1 * 100.00 . 118 *

  • 1.600 < 1.625 * 0.00 . 0 * 100.00 . 118 *

  • 1.625 < 1.650 * 0.00 . 0 * 100.00 . 118 *

  • 1.650 < 1.675 * 0.00 . 0 * 100.00 . 118 *

  • 1.675 < 1.700 * 0.00 . 0 * 100.00 . 118 *

  • 1.700 < 1.725 * 0.00 . 0 * 100.00 . 118 *

  • 1.725 < 1.750 * 0.00 . 0 * 100.00 . 118 *


Sur la figure suivante, on peut voir la représentation sous forme d’histogramme des pourcentages de mailles dans chacune des plages de qualité concernées.

../../../../_images/Object_1109.svg

Le contrôle de la connexité permet de s’assurer que le domaine de calcul est d’un seul morceau. Il peut arriver que ce domaine soit en plusieurs parties disjointes, par exemple pour des problèmes de contact. Mais le diagnostic de plusieurs morceaux révèle souvent un problème lors de la création du maillage: on a mal recollé des sous-parties. Et comme le contrôle visuel ne permet pas toujours de s’en rendre compte, le calcul est faux … tout en ayant l’air d’être juste. La pire situation qui puisse arriver. Il est donc fortement recommandé d’utiliser cette option.

CONNEXITE DES ENTITES DU CALCUL


L’affichage des tailles des sous-parties du maillage se fait par dimensions. Le tri a lieu grosso modo selon les groupes de mailles déclarés; il peut y avoir une subdivision plus fine quand les groupes se recoupent. Cette présentation permet de contrôler que l’on a bien maillé ce que l’on voulait. En particulier, cela permet de débusquer des erreurs de recollement ou de création de groupes lors de la création du maillage. Ici encore, il est fortement recommandé d’utiliser cette option.

TAILLES DES SOUS-DOMAINES DE CALCUL

Direction | Unite

  • Numero * Nom * Surface *

  • Numero * Nom * Longueur *

  • -3
    • Sous-domaine_3 * 16.0000 *

  • -5
    • Sous-domaine_5 * 8.00000 *

  • -4
    • Sous-domaine_4 * 26.2462 *

  • Minimum : * 4.00000 *

  • Maximum : * 26.2462 *


L’analyse des propriétés des éléments du calcul affiche un diagnostic sur les éléments surcontraints et les éléments de bord.

DIAGNOSTICS SUR LES ELEMENTS DU CALCUL

  • Nombre d’elements surcontraints * 0 *

  • Nombre d’elements sans mailles de bord * 0 *


Bibliographie#

[bib1]

G.Nicolas; T.Fouquet: “Logiciel HOMARD - Volume 1 - Présentation générale”, rapport EDF H-I23-2008-04107-FR, octobre 2014.

[bib2]

G.Nicolas; T.Fouquet: “Logiciel HOMARD - Volume 2 – Algorithmes de raffinement et déraffinement de maillages”, rapport EDF H-I23-2008-04108-FR, octobre 2014.

[bib3] G.Nicolas; T.Fouquet: “Logiciel HOMARD - Volume 3 – Interfaces avec les codes de calcul”, rapport EDF H-I23-2008-04118-FR, octobre 2014.